-
Notifications
You must be signed in to change notification settings - Fork 394
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
✨ Implement cluster-aware OpenAPI v3 #3118
Conversation
fc32b88
to
63bea95
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. Want to test "in prod"?
Do you think it worth a feature-gate so we can test in isolation and turn it off if needed?
Signed-off-by: Dr. Stefan Schimanski <[email protected]>
/lgtm |
LGTM label has been added. Git tree hash: c50d4ec07fb934eb7538864632f46652bd931bd3
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: mjudeikis The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Summary
The OpenAPI v3 stack was not yet cluster-aware. This PR adds
WithOpenAPIv3
that merges these specs on-demand keeping a cache for different API configurations.It makes heavy use of the lazy evaluation to avoid computation where possible.
Currently, (2) is implemented with a LRU cache of size 100 holding the (lazily) merged specs for API configurations. This means that with more than a 100 different configurations and constant OpenAPI v3 requests, this will not work well. Either we increase the number of different API configurations in the cache, or we use another kind of cache. But it's probably not common that there are so many different API configurations because some workspace types will be reused a lot.
Release Notes