-
Notifications
You must be signed in to change notification settings - Fork 170
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
THREESCALE-8373 Pagination services and proxy config endpoints #1397
Conversation
9fc9dea
to
f8fe429
Compare
@thomasmaas @pehala ready for review |
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.
Nice job! Should a combination of this and #1352 improve the overall performance of APIcast?
@@ -241,6 +242,8 @@ Replace `${ID}` with the actual Service ID. The value should be the configuratio | |||
|
|||
Setting it to a particular version will prevent it from auto-updating and will always use that version. | |||
|
|||
**Note**: This env var cannot be used with `THREESCALE_PORTAL_ENDPOINT` pointing to custom path (i.e. master path). |
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.
Does that mean this variable won't work with basic staging/production APIcast created by 3scale operator? Did it work before and did it changed now or has it simply never worked before?
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.
Never worked before. The env var was silently ignored. Now (actually in the previous PR), I added a hard check. The check will not kill the process, but will not process the request and will log error.
ngx.log(ngx.DEBUG, 'services get error: ', err, ' url: ', url) | ||
return nil, err | ||
end | ||
local SERVICES_PER_PAGE = 500 |
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.
Is there any reason for this particular value? Do different values change performance in any reasonable way?
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.
That's the default value used in the 3scale API. The gateway still needs to fix the value because it needs to iterate comparing the number of returned results with that value. If the gateway does not fix that value, a change in the 3scale API can break the gateway pagination feature.
In the future, we can expose as env var
bedaa39
to
2653fce
Compare
what
Load all services and proxy configuration pages
Fixes https://issues.redhat.com/browse/THREESCALE-8373
Verification steps
THREESCALE_PORTAL_ENDPOINT=https://<token>@<provider domain>