Project

General

Profile

Actions

Bug #64979

open

java_s3tests: some test cases don't wait for multipart uploads to complete

Added by Casey Bodley 2 months ago. Updated 5 days ago.

Status:
New
Priority:
Normal
Target version:
-
% Done:

0%

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

Description

from rgw logs, i see lots of errors from multipart part uploads that fail because the bucket no longer exists:

2024-03-19T04:19:16.835+0000 10e5ef640 20 REQUEST_METHOD=PUT
2024-03-19T04:19:16.835+0000 10e5ef640 20 REQUEST_URI=/test-921b1aef-219b-462b-ae42-b66b013832cd46/key1?uploadId=2%7EJtIGDHGF8yljSpZI0YTLWfz3lkToMEm&partNumber=64
...
2024-03-19T04:19:16.879+0000 d9585640  5 bucket test-921b1aef-219b-462b-ae42-b66b013832cd46 doesn't exist, not logging
2024-03-19T04:19:16.879+0000 d9585640  2 req 7429086370090654760 0.043999478s s3:put_obj op status=0
2024-03-19T04:19:16.879+0000 d9585640  2 req 7429086370090654760 0.043999478s s3:put_obj http status=404

some test cases must be returning early and cleaning up the bucket before the multipart upload completes

Actions #1

Updated by Casey Bodley about 1 month ago

  • Assignee set to Samarah Uriarte
Actions #2

Updated by Samarah Uriarte 5 days ago

The "bucket ... doesn't exist, not logging" statement appears because the "rgw enable ops log" config option is set to true in the qa/suites/rgw/verify/datacache/rgw-datacache.yaml file.

The verify/tasks/bucket-check.yaml file calls run-bucket-check.sh, which runs the test_rgw_bucket_check.py program. Within this program on lines 37-41, the bucket named "check-bucket" is deleted as part of the pre-test cleanup: https://github.com/ceph/ceph/blob/main/qa/workunits/rgw/test_rgw_bucket_check.py#L37-L41.

Additionally, the Java S3 Tests run the tearDown method as part of the set up for each unit test. Within the tearDown method, the bucket is deleted as seen here: https://github.com/ceph/java_s3tests/blob/master/src/main/java/S3.java#L232. This is likely the source of the above log statement appearing for each test bucket. This is more evident when reviewing the logs and seeing that the bucket itself is created after the log statement appears for that particular test.

Additional note: Recent runs of the verify suite do not include this message within the java_s3test jobs.

Actions

Also available in: Atom PDF