]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
rgw: limit entries in remove_olh_pending_entries() 28349/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:41:13 +0000 (14:41 +0200)
commitef703c6e7741847f83918acb42e1830059a9ab7c
tree1ba124465d54290bd34a70cd7a4e83c42d1b756c
parent22f7d1ad63fb5b73970e19c3b6f889d5536f7ed3
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
- luminous ref.ioctx.operate() call takes ref.oid instead of ref.obj.oid
src/rgw/rgw_rados.cc