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

SEARCH improvements #2990

Open
carpawell opened this issue Oct 30, 2024 · 1 comment
Open

SEARCH improvements #2990

carpawell opened this issue Oct 30, 2024 · 1 comment
Labels
enhancement Improving existing functionality I2 Regular impact neofs-storage Storage node application issues performance More of something per second S1 Highly significant U4 Nothing urgent

Comments

@carpawell
Copy link
Member

carpawell commented Oct 30, 2024

Is your feature request related to a problem? Please describe.

I'm always frustrated when SEARCH is slow and really unoptimal.

Describe the solution you'd like

Improvements to consider:

  1. Do not accumulate SEARCH results from local/remote storages in memory before streaming results, stream them immediately to make search a more flexible operation instead;
  2. Return results sorted
  3. ...

Describe alternatives you've considered

-

Additional context

nspcc-dev/neo-go#3645
nspcc-dev/neo-go#3647
#2721

@carpawell carpawell added neofs-storage Storage node application issues performance More of something per second labels Oct 30, 2024
@roman-khimov
Copy link
Member

Sorted results can be merged by the intermediate node more easily, not requiring to wait for full result transfer. It changes the protocol semantically, but it's compatible as per binary protocol. Local results can also be returned in chunks, not waiting to accumulate the full reply.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improving existing functionality I2 Regular impact neofs-storage Storage node application issues performance More of something per second S1 Highly significant U4 Nothing urgent
Projects
None yet
Development

No branches or pull requests

2 participants