Hello, I was looking at the work done to re-architecture the OSD backend. Since it seems that it allows now to have more than one PG implementation I decided to subclass PG and PGBackend to create an alternative implementation to ReplicatedPG and ReplicatedBackend. However, I noticed a couple of problems: * All methods in watch.h and watch.cc expect ReplicatedPG objects instead of generic PG objects. * New pools created in the OSDMonitor are created as replicated pools (g_pool_t::TYPE_REP). This is a hardcoded value. I made a few changes to solve these two issues that allowed me to have more than one PG implementation running without problems. You can find the changes here: https://github.com/ceph/ceph/pull/744 Are these changes useful for the re-architecture of the OSD ? PS: Implementing and running an alternative PG requires other changes in the CrushCompiler and other header files. Best, Lluis -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html