This rule identifies direct relation properties that are referenced by reverse direct relations but lack a cursorable B-tree index. When querying through a reverse direct relation, CDF needs to look up nodes that have the direct relation pointing to the source nodes. Without an index, this requires scanning many nodes inefficiently.Documentation Index
Fetch the complete documentation index at: https://docs.cognite.com/llms.txt
Use this file to discover all available pages before exploring further.
Why it matters
Traversing a reverse direct relation (inwards direction) requires an index on the target direct relation property. Without this index, queries will be inefficient, potentially leading to timeouts over time, as they won’t scale well with data volume. The exception is when the target direct relation is a list property. In that case, this validator will not flag them, as reverse direct relations targeting lists of direct relations need to be traversed using theinstances/search endpoint instead,
which does not directly benefit from adding indexes to container properties.
Example
ViewWindFarm has a reverse property turbines through WindTurbine.windFarm.
Container WindTurbine should have a cursorable B-tree index on the windFarm
property to enable efficient traversal from WindFarm to its turbines.