Project

General

Profile

Actions

Bug #48328

open

inefficient check for xattr urgent data in cls_rgw_gc_queue_list_entries()

Added by Casey Bodley over 3 years ago. Updated over 3 years ago.

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

0%

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

Description

cls_rgw_gc_queue_list_entries() reads the urgent data map at the beginning as part of read_queue_head(). but if urgent_data.num_xattr_urgent_entries > 0, we call cls_cxx_getxattr(hctx, "cls_queue_urgent_data", &bl_xattrs) for each gc queue entry that isn't in the urgent_data map to check for it in xattr_urgent_data_map

we should read the "cls_queue_urgent_data" xattr (if urgent_data.num_xattr_urgent_entries > 0) at the beginning of cls_rgw_gc_queue_list_entries() to avoid re-reading it for each entry


Related issues 2 (2 open0 closed)

Related to rgw - Bug #48330: rgw: fix GC defer process and clean up from immediate fixNew

Actions
Related to rgw - Bug #48329: cls_rgw_gc_queue_remove_entries() doesn't remove entries from xattr urgent dataNew

Actions
Actions #1

Updated by Casey Bodley over 3 years ago

  • Backport set to octopus
Actions #2

Updated by J. Eric Ivancich over 3 years ago

  • Related to Bug #48330: rgw: fix GC defer process and clean up from immediate fix added
Actions #3

Updated by J. Eric Ivancich over 3 years ago

  • Related to Bug #48329: cls_rgw_gc_queue_remove_entries() doesn't remove entries from xattr urgent data added
Actions #4

Updated by J. Eric Ivancich over 3 years ago

  • Target version set to v16.0.0
Actions

Also available in: Atom PDF