Hi Sam, This draft commit may clarify what I mean
https://github.com/dachary/ceph/commit/5c6678385eed4f8769d0f5ee38ad629e32b902a6 Cheers On 06/21/2013 07:10 PM, Loic Dachary wrote: > > > On 06/21/2013 06:38 PM, Samuel Just wrote: >> I'm not sure I understand, by PG::RecoveryStats, do you mean >> PG::RecoveryState? > > Yes I do, sorry for the confusion. Fixed the typos for clarity, hopefully. > > * Move PG::RecoveryState in PGRecoveryState.{cc,h} > * Create PGInterface : an abstract base class for PG enumerating all PG > methods used by PGRecoveryState > * Move Peering states / methods out of PGRecoveryState.{cc,h} and into > PGPeering.{cc,h} > * Write tests for PGPeering.{cc,h}, using a fixture derived from PGInterface > > Cheers > >> -Sam >> >> On Fri, Jun 21, 2013 at 6:37 AM, Loic Dachary <[email protected]> wrote: >>> Hi Sage, >>> >>> In order to move the PG peering code out of PG.{cc,h} (which is the next >>> step in refactoring PGs as suggested by Sam >>> http://pad.ceph.com/p/Erasure_encoding_as_a_storage_backend ) I think it >>> would be sensible to: >>> >>> * Move PG::RecoveryStats in PGRecoveryStat.{cc,h} >>> * Create PGInterface : an abstract base class for PG enumerating all PG >>> methods used by PGRecoveryStats >>> * Move Peering states / methods out of PGRecoveryStat.{cc,h} and into >>> PGPeering.{cc,h} >>> * Write tests for PGPeering.{cc,h}, using a fixture derived from PGInterface >>> >>> Because this approach not only moves the peering out of PG.{cc,h} but also >>> the rest of the state logic, I would like to know if this seems sensible to >>> you. Also, introducing an abstract base class to help isolate the PG >>> interface and facilitate writing fixtures has not been discussed yet. >>> >>> Cheers >>> >>> -- >>> Loïc Dachary, Artisan Logiciel Libre >>> All that is necessary for the triumph of evil is that good people do >>> nothing. >>> >> -- >> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in >> the body of a message to [email protected] >> More majordomo info at http://vger.kernel.org/majordomo-info.html > -- Loïc Dachary, Artisan Logiciel Libre All that is necessary for the triumph of evil is that good people do nothing.
signature.asc
Description: OpenPGP digital signature
