Stale project reference
A cross-project search machine learning datafeeds can reference a linked project that was renamed, unlinked, or never connected. Stale references appear in project_routing expressions or in qualified index patterns such as old-alias:logs-*. The datafeeds may skip the project, fail searches, or reject updates depending on how the reference is expressed.
If you can't find your issue here, explore the other troubleshooting topics or contact us.
Symptoms
- Messages or extraction errors reference a project alias that no longer appears in Elastic Cloud linked-project settings.
GET _ml/datafeeds/{datafeed_id}/_statsshows repeated skips for one linked project while others succeed.- Updating a datafeeds with a qualified index (
project:index) fails immediately if the named project is missing or unauthorized. project_routingstill contains an_alias:tag that matched a project before it was renamed.
Check configuration and topology
GET _ml/datafeeds/{datafeed_id}
GET _remote/info
Compare project_routing, index qualifiers, and _remote/info linked aliases. A project listed in routing but absent from _remote/info is a stale reference.
For skip behavior on still-linked but misrouted projects, see also Linked project skipped.
Confirm the link in Elastic Cloud
In Elastic Cloud project settings, verify the target project is linked and note its current alias. Re-link the project if the connection was removed.
Update routing after a rename
If a linked project alias changed, update project_routing and any qualified index references to use the new alias:
POST _ml/datafeeds/{datafeed_id}/_update
{
"project_routing": "_alias:new-alias-*",
"indices": ["new-alias:logs-*"]
}
Stop the datafeeds before changing qualified index patterns if the job is running.
Handle qualified indices
Qualified project:index references fail on update when the project is missing — fix the project link or remove the qualifier before retrying. Unqualified index patterns with stale routing may still persist until run time; fix routing proactively to avoid extraction failures.
Verify recovery
After updating references, confirm _remote/info lists the project and that GET _ml/datafeeds/{datafeed_id}/_stats no longer reports skips for the old alias.