Subtask #5433
Updated by Samuel Just over 10 years ago
"work in progress":https://github.com/dachary/ceph/tree/wip-5433 h3. Discussions * "Separating Peering from PG":http://thread.gmane.org/gmane.comp.file-systems.ceph.devel/15755 h3. References * "Ceph Placement Groups peering":http://dachary.org/?p=2061 * "Description of the Peering Process":https://github.com/ceph/ceph/blob/b89d7420e3501247d6ed282d2253c95c758526b1/doc/dev/peering.rst h3. TODO * Move PG::RecoveryState in PGRecoveryState.{cc,h} * Create a PGBackend interface: this will be the interface PGInterface : an abstract base class for PG enumerating all PG methods used by PG for handling client IO and replication PGRecoveryState * Refactor ReplicatedPG logic in terms Move Peering states / methods out of PGBackend PGRecoveryState.{cc,h} and into PGPeering.{cc,h} * Write tests for the ReplicatedPG PGBackend implementation PGPeering.{cc,h}, using a fixture derived from PGInterface