Skip to content
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

Uploading SLO object with question mark in the filename breaks SLO downloading #2

Open
mmcardle opened this issue Jan 20, 2015 · 0 comments
Labels

Comments

@mmcardle
Copy link

Upload a file with a question mark

(all-virt-16)Marks-MacBook-Pro-2:Downloads mm$ swift upload test w\?\?KjGKxjvQKQ.mp4 --use-slo -S 3000000
w??KjGKxjvQKQ.mp4 segment 0
w??KjGKxjvQKQ.mp4 segment 3
w??KjGKxjvQKQ.mp4 segment 2
w??KjGKxjvQKQ.mp4 segment 4
w??KjGKxjvQKQ.mp4 segment 1
w??KjGKxjvQKQ.mp4

Try to download

(all-virt-16)Marks-MacBook-Pro-2:Downloads mm$ swift download test w??KjGKxjvQKQ.mp4
Object GET failed: http://192.168.56.108:8080:8080/v1/AUTH_d61db695cd1e4479b4a28b4f2be6d82f/test/w%3F%3FKjGKxjvQKQ.mp4 500 Internal Error   An error occurred

Server side error

proxy-server: Error: An error occurred: #012Traceback (most recent call last):#012  File "/opt/stack/swift/swift/common/middleware/catch_errors.py", line 36, in handle_request#012    
resp = self._app_call(env)#012  File "/opt/stack/swift/swift/common/wsgi.py", line 528, in _app_call#012    first_chunk = resp.next()#012  File "/opt/stack/swift/swift/common/middleware/proxy_logging.py", line 247, in iter_response#012    
chunk = iterator.next()#012  File "/opt/stack/swift/swift/common/request_helpers.py", line 307, in __iter__#012    (self.name, seg_resp.status_int, seg_path))#012SegmentError: ERROR: While processing manifest /v1/AUTH_d61db695cd1e4479b4a28b4f2be6d82f/test/w%3F%3FKjGKxjvQKQ.mp4, 
got 404 while retrieving /v1/AUTH_d61db695cd1e4479b4a28b4f2be6d82f/test_segments/w??KjGKxjvQKQ.mp4/slo/1421749276.000000/12862884/3000000/00000000 (txn: txa1a272798bfb4c4c9d978-0054be2d8d)

This is in the SLO manifest

"name": "/test_segments/w??KjGKxjvQKQ.mp4/slo/1421749276.000000/12862884/3000000/00000003"
/v1/AUTH_d61db695cd1e4479b4a28b4f2be6d82f/test_segments/w??KjGKxjvQKQ.mp4/slo/1421749276.000000/12862884/3000000/00000000
mmcardle pushed a commit that referenced this issue May 17, 2018
In expirer's unit tests, fake InternalClient classes are defined
and its instance simulates expirer's task queue behaviors.

To make review for expirer's task queue update patch [1] easy,
this patch refactors the implementation of the fake InternalClient
classes. In this patch, unit tests are refactored by the following
two approaches:
    #1: Summarizing duplicated fake InternalClient implementation
    #2: Make task account name variable
The #2 approach is for multiple task accounts in [1].

The patch [1] will be rebased after this patch merged.

[1]: https://review.openstack.org/#/c/517389

Change-Id: I10a7151cfdd43460ad38c47f672d3c31b77e7990
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants