GET response returns 404 even if all primaries ERROR
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Object Storage (swift) |
Fix Released
|
Medium
|
Unassigned |
Bug Description
Below is a snippet of proxy and container server logs for a container GET that returned 404 despite connection timeouts to all three primaries. The container server logs are the first three handoffs for this container. Without concurrent_get it seems like this would have returned a 503 instead? I am curious what y'all think should happen in this situation. It seems to me that if all primaries failed and there is no 200 response from a handoff, then a 503 might be more intuitive.
Nov 25 13:10:30 proxy-b swift-proxy: ERROR with Container server 1.2.3.4:6001/sdi re: Trying to GET /v1/AUTH_
Nov 25 13:10:30 proxy-b swift-proxy: ERROR with Container server 1.2.3.4:6001/sdi re: Trying to GET /v1/AUTH_
Nov 25 13:10:31 proxy-b swift-proxy: ERROR with Container server 1.2.3.4:6001/sdb re: Trying to GET /v1/AUTH_
Nov 25 13:10:31 proxy-b swift-proxy: 127.0.0.1 127.0.0.1 25/Nov/
Nov 25 13:10:30 meta-c swift-container: 2.3.4.5 - - [25/Nov/
Nov 25 13:10:30 meta-c swift-container: 2.3.4.5 - - [25/Nov/
Nov 25 13:10:30 meta-c swift-container: 2.3.4.5 - - [25/Nov/
how may devices do you have in the cluster? i'm struggling to parse those logs lines - was there 3 requests or 6?
After the primary timeouts there should have resulted in some additional handoff requests.
I'm not super convinced [Timeout(), Timeout(), Timeout(), 404, 404, 404] != 404
possibly related in diagnosing the issue:
https:/ /review. openstack. org/#/c/ 406392 /review. openstack. org/#/c/ 286589
https:/