Project

General

Profile

Subtask #5046

Updated by Loic Dachary over 6 years ago

PG logs, PG missing: The logic for merging an authoritative PG log with another PG log while filling in the missing set would benefit massively from being testable seperately from a PG instance. It's possible that the stripes involved in ErasureCodedPG will make this impractical to generalize.

* Move log, logondisk, missing from being public data members of PG to being protected data members of PGLog.{cc,h} and adapt the callers accordingly. It improves encapsulation and does not change any of the logic already in place. ( "ready for review":https://github.com/dachary/ceph/tree/wip-5046 "review take 1":https://github.com/dachary/ceph/commit/eeb8854a41409ef4224bf42101a19de70916573c "review take 2":https://github.com/dachary/ceph/commit/7267244bf0775442d445407e55b7fbb9935a404a "review take 3":https://github.com/dachary/ceph/commit/b2332e60988fccdffd374eb976ed83ddc561cba2 "review take 4":https://github.com/dachary/ceph/commit/a66f694b9bcbf6c34330487135336755cb509ad4 "review take 5":https://github.com/dachary/ceph/commit/d301f9791eef42ec198704bf85bb05222ffc1e8d) 4":https://github.com/dachary/ceph/commit/a66f694b9bcbf6c34330487135336755cb509ad4)
* Define an API for PGLog.{cc,h}
* Write unit tests for PGLog.{cc,h}

Back