osd/: dirty info and log on child during split

Otherwise, the log may not get written out.

Signed-off-by: Samuel Just <sam.just@inktank.com>
This commit is contained in:
Samuel Just 2012-11-13 14:48:54 -08:00
parent 9835e19015
commit 19e6861daf
2 changed files with 6 additions and 0 deletions

View File

@ -4512,6 +4512,7 @@ void OSD::split_pgs(
child->write_if_dirty(*(rctx->transaction));
child->unlock();
}
parent->write_if_dirty(*(rctx->transaction));
}

View File

@ -2038,6 +2038,11 @@ void PG::split_into(pg_t child_pgid, PG *child, unsigned split_bits)
split_ops(child, split_bits);
_split_into(child_pgid, child, split_bits);
child->dirty_info = true;
child->dirty_log = true;
dirty_info = true;
dirty_log = true;
}
void PG::defer_recovery()