]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: data sync drains lease stack on lease failure 26639/head
authorCasey Bodley <cbodley@redhat.com>
Mon, 25 Feb 2019 19:10:39 +0000 (14:10 -0500)
committerCasey Bodley <cbodley@redhat.com>
Mon, 25 Feb 2019 20:54:51 +0000 (15:54 -0500)
commit11ff8653dcaf7663a0553e3175dec75843b3ccea
treeb1c246688c4bac3bcad7e1ce8b1e2263a4b31a2c
parente084dd85c2a05ce06b2da7ee21d3d521a01bde13
rgw: data sync drains lease stack on lease failure

on lease failure, call drain_all() to collect the spawned lease stack.
otherwise, the parent coroutine will inherit this spawned stack and may
not drain or collect it manually. RGWDataSyncShardControlCR, for
example, does not drain/collect because it only uses call() to run a
single RGWDataSyncShardCR, so all lease stacks from RGWDataSyncShardCR
just pile up in the RGWDataSyncShardControlCR

Fixes: http://tracker.ceph.com/issues/38479
Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_data_sync.cc