]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
messages/: include shard information in various pg messages
authorSamuel Just <sam.just@inktank.com>
Thu, 16 Jan 2014 23:27:36 +0000 (15:27 -0800)
committerSamuel Just <sam.just@inktank.com>
Tue, 18 Feb 2014 04:11:06 +0000 (20:11 -0800)
commit8b46dd1dc009981f2fcae7b0e05155e81841c4a5
tree60d1d8cbf1647b559244bbad14d02a0d9ad33b85
parentfa980644bd577cefc104e2d52289fe0310eaf147
messages/: include shard information in various pg messages

We can no longer use the messenger source information to determine
the origin of the message since an osd might have more than one
shard of a particular pg.  Thus, we need to include a pg_shard_t
from field to indicate origin.  Similarly, pg_t is no longer
sufficient to specify the destination pg, we instead use spg_t.
In the event that we get a message from an old peer, we default
from to pg_shard_t(get_source().num(), ghobject_t::no_shard())
and spg_t to spg_t(pgid, ghobject_t::no_shard()).  This suffices
because non-NO_SHARD shards can only appear once ec pools have
been enabled -- and doing that bans unenlightened osds.

Signed-off-by: Samuel Just <sam.just@inktank.com>
18 files changed:
src/common/hobject.h
src/include/encoding.h
src/messages/MBackfillReserve.h
src/messages/MOSDPGBackfill.h
src/messages/MOSDPGInfo.h
src/messages/MOSDPGLog.h
src/messages/MOSDPGNotify.h
src/messages/MOSDPGPull.h
src/messages/MOSDPGPush.h
src/messages/MOSDPGPushReply.h
src/messages/MOSDPGQuery.h
src/messages/MOSDPGRemove.h
src/messages/MOSDPGScan.h
src/messages/MOSDPGTrim.h
src/messages/MOSDRepScrub.h
src/messages/MOSDSubOp.h
src/messages/MOSDSubOpReply.h
src/messages/MRecoveryReserve.h