]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
jewel: osd/PGLog: reindex properly on pg log split 14047/head
authorAlexey Sheplyakov <asheplyakov@mirantis.com>
Mon, 20 Mar 2017 10:05:17 +0000 (14:05 +0400)
committerAlexey Sheplyakov <asheplyakov@mirantis.com>
Mon, 20 Mar 2017 10:12:22 +0000 (14:12 +0400)
commit90de64bd81fedcb9540e40d50420e169a4a81248
tree3ee62afbb2b06ed4db5633095a417b0f847159c8
parentce2e9897c08775cfbe318f637d61e07eb5433df5
jewel: osd/PGLog: reindex properly on pg log split

When PGLog::IndexedLog::split_into runs it builds the list, which means
the old indices are wrong (point to bad memory), but index() will not
rebuild them because ever since b858e86 we won't rebuild them if they
are already built. Fix that by calling unindex() before the split.

Based on 643ae42cf27f16dd6ed4e1402acc0483bb9fca74. Notice that both
the child and the parent log are re-indexed in Jewel, so the only
problem is missing unindex().

Signed-off-by: Alexey Sheplyakov <asheplyakov@mirantis.com>
src/osd/PGLog.cc