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

v1.13: Proxy search requests #3136

Open
12 tasks
guimachiavelli opened this issue Jan 28, 2025 · 0 comments
Open
12 tasks

v1.13: Proxy search requests #3136

guimachiavelli opened this issue Jan 28, 2025 · 0 comments
Milestone

Comments

@guimachiavelli
Copy link
Member

  • Part of efforts toward sharding, which is required when dealing with really big databases
  • New endpoints: GET /network and PATCH /network
    • Use it to set a self and one or more remotes
    • self is a string and indicates the name of the current machine/instance/node
    • remotes is an object containing remote objects. Remote objects consist of a name (the object key) and two values (url and searchApiKey)
  • New /multi-search parameters: federationOptions.remote and federationOptions.queryPosition
    • queryPosition should not be set manually (not sure why this is exposed on the request then?)
    • remote accepts a string, specifies which remote instance should run that specific query instead of self
  • Summarized workflow:
    1. Set self
    2. Set one or more remotes
    3. Query /multi-search setting federationOptions.remote for one or more queries

Tasks

  • Create: /reference/api/network
    • GET
    • PATCH
  • Update: /reference/api/multi_search
    • Add federationOptions.remote
    • Add federationOptions.queryPosition
    • Add remoteErrors to response
  • Update: /reference/api/keys
    • Add new permissions
  • Update /reference/errors/overview
    • invalid_multi_search_query_position
    • invalid_multi_search_remote

References

@guimachiavelli guimachiavelli added this to the v1.13 milestone Jan 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant