Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FETCHPLAN - Option to avoid cyclic reference check #2259

Closed
gauravdhiman opened this issue Apr 20, 2014 · 1 comment
Closed

FETCHPLAN - Option to avoid cyclic reference check #2259

gauravdhiman opened this issue Apr 20, 2014 · 1 comment

Comments

@gauravdhiman
Copy link

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:

  1. Do not check for cyclic reference check if FETCHPLAN does not mention infinite depth (-1)
  2. An option can be added in FETCHPLAN to explicitly avoid cyclic reference check.

Reference link:
https://groups.google.com/forum/?hl=en#!topic/orient-database/KWF1qYr2yNk

Regards,
Gaurav

@lvca
Copy link
Member

lvca commented Aug 3, 2017

Not relevant anymore. Closing it. Fetchplans are deprecated in 3.0 in favor of sql extended projections.

@lvca lvca added the wontfix label Aug 3, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

3 participants