Project

General

Profile

Actions

Bug #4628

closed

RGW: underscore failing to escape

Added by Tyler Brekke about 11 years ago. Updated about 11 years ago.

Status:
Duplicate
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
Support
Tags:
Backport:
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

(10:24:45 AM) Matt: attempting to enumerate all of his objects with boto goes on forever
(10:42:27 AM) Matt:
from boto import connect_s3;
c = connect_s3("[REDACTED]", "[REDACTED]", host="objects.dreamhost.com")
b = c.get_bucket('BUCKET')
h = b.list(marker="_FOLDER/FILE.example");
j = iter(h)
for n in range(1000):
j.next()
<get a thousand objects back, almost all of them coming before the marker object>
(10:43:06 AM) : might be something weird going on with the preceding underscore
(10:43:18 AM) Matt: that's what I was thinking
(10:43:32 AM) Matt:
<Key: BUCKET,__FOLDER/FILE.example>
<Key: BUCKET,_ARCHIVE/>

(10:43:38 AM) Matt: that seems to be where it wraps around
(10:43:46 AM) Matt: if you continue to enumerate
(10:44:51 AM) : the good news is that I just managed to reproduce the issue
(10:45:56 AM) Matt: excellent
(10:47:08 AM) : probably because we use the underscore as an escape char, we fail to escape it somewhere
(10:59:18 AM) : didn't look at it, but it makes sense .. internally we translate a preceding underscore into two underscores
(11:00:24 AM) : so if we don't follow that with the marker, we will just rewind the listing
(11:06:05 AM) Matt: that would do it

DHO would like the fix for this to be backported to Argonaut

Actions #1

Updated by Tyler Brekke about 11 years ago

  • Description updated (diff)
  • Status changed from New to Duplicate
Actions

Also available in: Atom PDF