Now url encodes/decodes x-object-manifest values
Change-Id: I8ce7fa1cb0aba3aca622c7a793ee5d330fe4e265
This commit is contained in:
parent
47f8786cc9
commit
36daad953a
@ -26,6 +26,7 @@ from sys import argv, exc_info, exit, stderr, stdout
|
|||||||
from threading import current_thread, enumerate as threading_enumerate, Thread
|
from threading import current_thread, enumerate as threading_enumerate, Thread
|
||||||
from time import sleep
|
from time import sleep
|
||||||
from traceback import format_exception
|
from traceback import format_exception
|
||||||
|
from urllib import quote, unquote
|
||||||
|
|
||||||
from swiftclient import Connection, ClientException, HTTPException
|
from swiftclient import Connection, ClientException, HTTPException
|
||||||
|
|
||||||
@ -176,6 +177,8 @@ def st_delete(parser, args, print_queue, error_queue):
|
|||||||
if old_manifest:
|
if old_manifest:
|
||||||
segment_queue = Queue(10000)
|
segment_queue = Queue(10000)
|
||||||
scontainer, sprefix = old_manifest.split('/', 1)
|
scontainer, sprefix = old_manifest.split('/', 1)
|
||||||
|
scontainer = unquote(scontainer)
|
||||||
|
sprefix = unquote(sprefix)
|
||||||
for delobj in conn.get_container(scontainer,
|
for delobj in conn.get_container(scontainer,
|
||||||
prefix=sprefix)[1]:
|
prefix=sprefix)[1]:
|
||||||
segment_queue.put((scontainer, delobj['name']))
|
segment_queue.put((scontainer, delobj['name']))
|
||||||
@ -856,8 +859,8 @@ def st_upload(parser, args, print_queue, error_queue):
|
|||||||
'because not all segments could be uploaded. %s/%s'
|
'because not all segments could be uploaded. %s/%s'
|
||||||
% (container, obj))
|
% (container, obj))
|
||||||
new_object_manifest = '%s_segments/%s/%s/%s/' % (
|
new_object_manifest = '%s_segments/%s/%s/%s/' % (
|
||||||
container, obj, put_headers['x-object-meta-mtime'],
|
quote(container), quote(obj),
|
||||||
full_size)
|
put_headers['x-object-meta-mtime'], full_size)
|
||||||
if old_manifest == new_object_manifest:
|
if old_manifest == new_object_manifest:
|
||||||
old_manifest = None
|
old_manifest = None
|
||||||
put_headers['x-object-manifest'] = new_object_manifest
|
put_headers['x-object-manifest'] = new_object_manifest
|
||||||
@ -869,6 +872,8 @@ def st_upload(parser, args, print_queue, error_queue):
|
|||||||
if old_manifest:
|
if old_manifest:
|
||||||
segment_queue = Queue(10000)
|
segment_queue = Queue(10000)
|
||||||
scontainer, sprefix = old_manifest.split('/', 1)
|
scontainer, sprefix = old_manifest.split('/', 1)
|
||||||
|
scontainer = unquote(scontainer)
|
||||||
|
sprefix = unquote(sprefix)
|
||||||
for delobj in conn.get_container(scontainer,
|
for delobj in conn.get_container(scontainer,
|
||||||
prefix=sprefix)[1]:
|
prefix=sprefix)[1]:
|
||||||
segment_queue.put({'delete': True,
|
segment_queue.put({'delete': True,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user