-
Notifications
You must be signed in to change notification settings - Fork 6.2k
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
[Serve] Apply request_timeout_s
from Serve config to the cluster
#37884
[Serve] Apply request_timeout_s
from Serve config to the cluster
#37884
Conversation
Signed-off-by: Shreyas Krishnaswamy <shrekris@anyscale.com>
Signed-off-by: Shreyas Krishnaswamy <shrekris@anyscale.com>
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.
Thanks Shreyas for quick turnaround! Really just wondering if we should also change line 193 for deployments api as well
except ValidationError as e: | ||
return Response( | ||
status=400, | ||
text=repr(e), | ||
) | ||
|
||
config_http_options = { |
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.
Maybe just do config_http_options = config.http_options.dict()
so everything will be included
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.
Yes this will prevent similar issues from happening in the future
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.
Good idea, that makes the code a lot simpler too!
# Check HTTP location | ||
location_conflict = self.check_http_options( | ||
# Handle location conflict separately since proxy_location isn't stored | ||
# inside config.http_options |
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.
Non-blocker: If we just store line 271 as new_http_configs
or something, then we can check all of them in the same loop :)
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.
Great catch, I stored all the configs as full_http_options
and checked the Serve application's options against that dictionary.
"host": config.http_options.host, | ||
"port": config.http_options.port, | ||
"root_path": config.http_options.root_path, | ||
"request_timeout_s": config.http_options.request_timeout_s, |
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.
propose to http_request_timeout_s
.
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.
this is a bugfix, no API changes
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.
One small comment echoing Gene then LGTM
except ValidationError as e: | ||
return Response( | ||
status=400, | ||
text=repr(e), | ||
) | ||
|
||
config_http_options = { |
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.
Yes this will prevent similar issues from happening in the future
"host": config.http_options.host, | ||
"port": config.http_options.port, | ||
"root_path": config.http_options.root_path, | ||
"request_timeout_s": config.http_options.request_timeout_s, |
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.
this is a bugfix, no API changes
Signed-off-by: Shreyas Krishnaswamy <shrekris@anyscale.com>
Signed-off-by: Shreyas Krishnaswamy <shrekris@anyscale.com>
Signed-off-by: Shreyas Krishnaswamy <shrekris@anyscale.com>
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.
…ay-project#37884) Currently, the Serve config's `request_timeout_s` field is ignored. This change makes Serve pass in `request_timeout_s` to the HTTP Proxies when starting up, so the field is respected. Signed-off-by: Shreyas Krishnaswamy <shrekris@anyscale.com>
…ay-project#37884) Currently, the Serve config's `request_timeout_s` field is ignored. This change makes Serve pass in `request_timeout_s` to the HTTP Proxies when starting up, so the field is respected. Signed-off-by: NripeshN <nn2012@hw.ac.uk>
…ay-project#37884) Currently, the Serve config's `request_timeout_s` field is ignored. This change makes Serve pass in `request_timeout_s` to the HTTP Proxies when starting up, so the field is respected. Signed-off-by: e428265 <arvind.chandramouli@lmco.com>
…ay-project#37884) Currently, the Serve config's `request_timeout_s` field is ignored. This change makes Serve pass in `request_timeout_s` to the HTTP Proxies when starting up, so the field is respected. Signed-off-by: Victor <vctr.y.m@example.com>
Why are these changes needed?
Currently, the Serve config's
request_timeout_s
field is ignored. This change makes Serve pass inrequest_timeout_s
to the HTTP Proxies when starting up, so the field is respected.Related issue number
Closes #37882.
Checks
git commit -s
) in this PR.scripts/format.sh
to lint the changes in this PR.method in Tune, I've added it in
doc/source/tune/api/
under thecorresponding
.rst
file.test_request_timeout.py
.