]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: limit entries in remove_olh_pending_entries() 28348/head
authorCasey Bodley <cbodley@redhat.com>
Fri, 5 Apr 2019 13:26:05 +0000 (09:26 -0400)
committerNathan Cutler <ncutler@suse.com>
Fri, 31 May 2019 12:38:16 +0000 (14:38 +0200)
commitf7c9bd21b49da7da5a61caecccd4b8609b827aa9
tree18f6325753e9a10603f9040c7a23767899c285b8
parentad90690bd83253dcc70ffcada2aee0a86900089b
rgw: limit entries in remove_olh_pending_entries()

If there are too many entries to send in a single osd op, the osd rejects
the request with EINVAL. This error happens in follow_olh(), which means
that requests against the object logical head (requests with no version
id) can't be resolved to the current object version. In multisite, this
also causes data sync to get stuck in retries

Fixes: http://tracker.ceph.com/issues/39118
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 3805ea635a5f28656072b2cf5cdc9b5bf53b5e97)

Conflicts:
src/rgw/rgw_rados.cc
- mimic ref.ioctx.operate() call takes ref.oid instead of ref.obj.oid
src/rgw/rgw_rados.cc