]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
PeeringState: don't zero backfill target num_bytes on activation
authorsjust@redhat.com <sjust@redhat.com>
Mon, 22 Apr 2019 21:07:06 +0000 (14:07 -0700)
committersjust@redhat.com <sjust@redhat.com>
Wed, 1 May 2019 18:22:29 +0000 (11:22 -0700)
commitf3a22feaceab82c668e4a3b6bfe063b7f859bb2f
treea50568a65a8457da360be877e3b23414a569f713
parent25904513c26bc690f6bb0f0f447271f3df076a30
PeeringState: don't zero backfill target num_bytes on activation

834d3c19a774f1cc93903447d91d182776e12d18 preserves num_bytes
on backfill targets in order to estimate space required to complete
backill.  However, from activation until backfill reservation,
info.stats.stats.sum.num_bytes is persisted to disk as 0 messing
up future intervals.  Instead, preserve it in the info sent during
recovery and leave it alone in RequestBackfillPrio.

Additionally, it's possible for backfill to be preempted between
last_backfill=MAX being sent to the replica and Backfilled being
queued occuring.  In that case, the stats get on reservation
and the replica ends up with invalid stats.

Fixes: https://tracker.ceph.com/issues/39401
Signed-off-by: sjust@redhat.com <sjust@redhat.com>
src/osd/PeeringState.cc