]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
rgw:gc: use XXHash for gc queue selection 35189/head
authorMatt Benjamin <mbenjamin@redhat.com>
Thu, 21 May 2020 21:58:19 +0000 (17:58 -0400)
committerMatt Benjamin <mbenjamin@redhat.com>
Thu, 21 May 2020 22:49:08 +0000 (18:49 -0400)
commit0864588f8a2a48dde43abf045688091ed3f7d22b
tree4a9f6fe73ecf21734ce7d2bc717e6531816d4844
parentcc7a23462887ae22ae2eaebcc1aeeac36c7171fb
rgw:gc: use XXHash for gc queue selection

We've observed significant imbalance in gc queue loading, most
likely due to poor ceph_str_hash_linux dispersion for common
key forms.

XXHash64 should be an effective and fast replacement for all
current RGW users of ceph_str_hash_linux (which also include
bucket-index sharding and bucket-lifecycle shard selection).

Unlike the other users, gc queue selection appears safe to
"just switch" as only defer-gc operations (which are non-critical
and of brief temporal locality) make any sort of rendezvous
on specific enqueued tags.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
src/rgw/rgw_gc.cc
src/rgw/rgw_gc.h