You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently fetchplan do check for cyclic reference, which is required to avoid infinite loop, but in few case (as given below), this check need to be avoided.
Lets say the class (A) have links createByUser, modifiedByUser and allUsers pointing to same record (#10:3) of OUser class.
If we specify FETCHPLAN ("*:-1") to fetch deep level records, only one link is expanded (allUsers), rest other two (createByUser, modifiedByUser) are not expanded. The reason for this is that all three link points to same OUser record (same @Rid).
Query:
SELECT FROM A FETCHPLAN *:-1
In this case if we want to expand all Links (createByUser, modifiedByUser and allUsers), we must have some mechanism to avoid cyclic reference check.
Suggestion:
It can be done in two ways:
Do not check for cyclic reference check if FETCHPLAN does not mention infinite depth (-1)
An option can be added in FETCHPLAN to explicitly avoid cyclic reference check.
Currently fetchplan do check for cyclic reference, which is required to avoid infinite loop, but in few case (as given below), this check need to be avoided.
Lets say the class (A) have links createByUser, modifiedByUser and allUsers pointing to same record (#10:3) of OUser class.
If we specify FETCHPLAN ("*:-1") to fetch deep level records, only one link is expanded (allUsers), rest other two (createByUser, modifiedByUser) are not expanded. The reason for this is that all three link points to same OUser record (same @Rid).
Query:
SELECT FROM A FETCHPLAN *:-1
In this case if we want to expand all Links (createByUser, modifiedByUser and allUsers), we must have some mechanism to avoid cyclic reference check.
Suggestion:
It can be done in two ways:
Reference link:
https://groups.google.com/forum/?hl=en#!topic/orient-database/KWF1qYr2yNk
Regards,
Gaurav
The text was updated successfully, but these errors were encountered: