Proxy server returning response code 404 instead of 503
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Object Storage (swift) |
Fix Released
|
Low
|
rohita joshi |
Bug Description
On execution of create object metadata use case using following curl command, on an environment where container server is down,
curl -i <public_
Http response code 404 is returned i.e., resource not found. In proxy-sever log, the container-server failures reported as response code 503 i.e., service unavailable. The proxy should return HTTP response 503 , as container services are stopped, hence unavailable. Response code 404 mislead the user as it signifies that container server is working but the container, for which metadata is being created, is not found.
Cause: Swift confirm the container existence before making POST (and also PUT) request to object-servers[1]. However, the check with container_info is currently assuming that non-successful code is NotFound [2].
Solution: If we could pass the status code in the container_info, we may handle the response code at [1].
1: https:/
2: https:/
Changed in keystone: | |
assignee: | nobody → rohita joshi (rjoshi16) |
affects: | keystone → swift |
Changed in swift: | |
importance: | Undecided → Low |
I would like to confirm whether the object for being meta update exists or not.
https:/ /github. com/openstack/ swift/blob/ master/ swift/obj/ server. py#L482