Request with non-unicoded HTTP headers sometimes returns 503

Bug #1244613 reported by Daisuke Morita
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Object Storage (swift)
Expired
Undecided
Unassigned

Bug Description

HTTP request with non-unicoded HTTP headers (e.g., X-Account-Meta-*, X-Container-Meta-* and X-Versions-Location) fails with 503 response code. Those headers should be checked by proxy servers if they contain non-unicoded messages and return 400 Bad Request.

Revision history for this message
Kun Huang (academicgareth) wrote :

what's your use case making something wrong?

Revision history for this message
Samuel Merritt (torgomatic) wrote :

Shift-JIS, maybe?

Honestly, it doesn't really matter. A repeatable 5xx response usually indicates an unhandled exception somewhere, and those should always get fixed. A 503 probably means that the request is making it to the backend servers and those are returning 500 to the proxy, but that's speculation on my part.

I managed to reproduce this on my SAIO setup, and it looks like an unhandled UnicodeDecodeError coming out of the broker's update_metadata method, so it seems like our bogus header is making all the way to the broker before blowing up. Ugh.

Changed in swift:
status: New → Confirmed
Tianshi Li (lts9165)
Changed in swift:
assignee: nobody → Tianshi Li (lts9165)
Revision history for this message
Samuel Merritt (torgomatic) wrote :

Make sure the code you're developing on includes commit ace2aa3; this fixes a bug in object versioning with non-ASCII container names.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to swift (master)

Fix proposed to branch: master
Review: https://review.openstack.org/64537

Changed in swift:
status: Confirmed → In Progress
Revision history for this message
Tianshi Li (lts9165) wrote :

@Samuel,
Yes, i developed on the lastest master branch, and it includes your commit ace2aa3

Revision history for this message
John Dickinson (notmyname) wrote :

needs to be reconfirmed

Changed in swift:
status: In Progress → Incomplete
assignee: Tianshi Li (lts9165) → nobody
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for OpenStack Object Storage (swift) because there has been no activity for 60 days.]

Changed in swift:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.