Bug 1853052

Summary: Bug allows ordered bucket listing to get stuck -- 4.1
Product: [Red Hat Storage] Red Hat Ceph Storage Reporter: J. Eric Ivancich <ivancich>
Component: RGWAssignee: J. Eric Ivancich <ivancich>
Status: CLOSED ERRATA QA Contact: Tejas <tchandra>
Severity: urgent Docs Contact: Aron Gunn <agunn>
Priority: urgent    
Version: 4.1CC: agunn, cbodley, ceph-eng-bugs, kbader, mbenjamin, mkasturi, mmuench, rpratap, sbaldwin, sweil, tserlin, vereddy
Target Milestone: z2   
Target Release: 4.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ceph-14.2.8-94.el8cp, ceph-14.2.8-94.el7cp Doc Type: Bug Fix
Doc Text:
.A call to an ordered bucket listing gets stuck A code bug in the bucket ordered list operation could cause, under specific circumstances, this operation to get stuck in a loop and never complete. With this release, this code bug was fixed, and as a result the call to an ordered bucket listing completes as expected.
Story Points: ---
Clone Of:
: 1853057 1853098 (view as bug list) Environment:
Last Closed: 2020-09-30 17:26:19 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1816167    

Description J. Eric Ivancich 2020-07-01 19:48:03 UTC
Description of problem:

When a single call to an ordered bucket listing contains only common prefixes (i.e., delimiter is set), it's possible for the code to get stuck. 

Version-Release number of selected component (if applicable):


How reproducible:

Very.

Steps to Reproduce:
1. Create a bucket in s3 that contains over 1000 entries with no "objects" at the top level and only "subdirectories".
2. Use s3cmd to list that bucket

Actual results:

No results provided; code is in infinite loop.

Expected results:

Listing produced.

Additional info:

See upstream tracker: https://tracker.ceph.com/issues/45955

Comment 1 RHEL Program Management 2020-07-01 19:48:11 UTC
Please specify the severity of this bug. Severity is defined here:
https://bugzilla.redhat.com/page.cgi?id=fields.html#bug_severity.

Comment 2 J. Eric Ivancich 2020-07-01 19:50:20 UTC
The fix for this already exists and was intended for a code clean-up. But it also addresses this issue. The reason is subtle -- a logging message at level 20 was used to, as a side-effect, increment a loop control variable. But due to optimizations, the code (and side-effect) is never executed unless the logging level is 20 or above.

Comment 3 J. Eric Ivancich 2020-07-02 17:00:03 UTC
commit added to ceph-4.1-rhel-patches-STAGE

Comment 25 errata-xmlrpc 2020-09-30 17:26:19 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Red Hat Ceph Storage 4.1 Bug Fix update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:4144