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

Optimize binary transfer between client and server: FETCHING strategies [moved] #54

Closed
lvca opened this issue Dec 10, 2012 · 0 comments
Closed

Comments

@lvca
Copy link
Member

lvca commented Dec 10, 2012

This is Issue 54 moved from a Google Code project.
Added by 2010-06-25T09:05:50.000Z by [email protected].
Please review that bug for more context and additional comments, but update this bug.
Closed (Fixed).

Original labels: Type-Enhancement, Priority-High, v0.9.20

Original description

There is a large room to optimize the protocol between client and server. The record transfer is the first.

Until the 0.9.19 if you're loading a graph of records all together, the records are ALWAYS lazy transferred. It would be nice to provide a way to move a bounch of records in block and put it in the cache in order to get loaded locally when traversing.

This is the reason why we need a new information missed until now: fetch-strategy and fetch-deep.

This is my idea:
1) Create a way to set database properties in general. Something like: ODatabase.setProperty(name, value), ODatabase.getProperty(name) and ODatabase.getProperties().

2) Create a new property called "fetch-max" to handle the maximum record transferred per time with the following values: 1 to N and 0 for no limits. By default it could be setted to 50.

3) Create a new attribute in OProperty called "fetchDepth" with the values: 0 = LAZY (the default one), 1 - N depth level.
@lvca lvca closed this as completed Dec 10, 2012
robfrank pushed a commit that referenced this issue Oct 15, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant