diff options
author | Sage Weil <sage@newdream.net> | 2012-02-24 13:22:49 -0800 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2012-02-24 13:22:49 -0800 |
commit | 008ce6b2d471dbef27cb24fad90d512cbf35bc1b (patch) | |
tree | 823d5de58f750567d128aa08c3138a7d1ebf97bd | |
parent | be761149f5f829d0aa4bfc65891848efc59f7143 (diff) | |
parent | 732f3ec94e39d458230b7728b2a936d431e19322 (diff) | |
download | ceph-008ce6b2d471dbef27cb24fad90d512cbf35bc1b.tar.gz |
Merge branch 'stable'
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | debian/changelog | 6 | ||||
-rw-r--r-- | src/messages/MOSDMap.h | 11 | ||||
-rw-r--r-- | src/osd/osd_types.cc | 22 |
4 files changed, 37 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac index 5f28aab9276..6df5659947f 100644 --- a/configure.ac +++ b/configure.ac @@ -8,7 +8,7 @@ AC_PREREQ(2.59) # NOTE: This version is _only_ used for naming the tarball. The # VERSION define is not used by the code. It gets a version string # from 'git describe'; see src/ceph_ver.[ch] -AC_INIT([ceph], [0.42.1], [ceph-devel@vger.kernel.org]) +AC_INIT([ceph], [0.42.2], [ceph-devel@vger.kernel.org]) AC_CONFIG_SUBDIRS([src/gtest]) diff --git a/debian/changelog b/debian/changelog index bee62ae8f52..65b108a9c54 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +ceph (0.42.2-1) experimental; urgency=low + + * New upstream release + + -- Sage Weil <sage@newdream.net> Fri, 24 Feb 2012 12:59:38 -0800 + ceph (0.42.1-1) experimental; urgency=low * New upstream release diff --git a/src/messages/MOSDMap.h b/src/messages/MOSDMap.h index f7838f7b7ae..cd4a9519e1d 100644 --- a/src/messages/MOSDMap.h +++ b/src/messages/MOSDMap.h @@ -22,7 +22,7 @@ class MOSDMap : public Message { - static const int HEAD_VERSION = 2; + static const int HEAD_VERSION = 3; public: uuid_d fsid; @@ -85,8 +85,13 @@ public: void encode_payload(uint64_t features) { ::encode(fsid, payload); if ((features & CEPH_FEATURE_PGID64) == 0 || - (features & CEPH_FEATURE_PGPOOL3) == 0) { - header.version = 1; + (features & CEPH_FEATURE_PGPOOL3) == 0 || + (features & CEPH_FEATURE_OSDENC) == 0) { + if ((features & CEPH_FEATURE_PGID64) == 0 || + (features & CEPH_FEATURE_PGPOOL3) == 0) + header.version = 1; // old old_client version + else + header.version = 2; // old pg_pool_t // reencode maps using old format // diff --git a/src/osd/osd_types.cc b/src/osd/osd_types.cc index 11a10d4a7e9..b97fe5b33e6 100644 --- a/src/osd/osd_types.cc +++ b/src/osd/osd_types.cc @@ -591,6 +591,28 @@ void pg_pool_t::encode(bufferlist& bl, uint64_t features) const return; } + if ((features & CEPH_FEATURE_OSDENC) == 0) { + __u8 struct_v = 4; + ::encode(struct_v, bl); + ::encode(type, bl); + ::encode(size, bl); + ::encode(crush_ruleset, bl); + ::encode(object_hash, bl); + ::encode(pg_num, bl); + ::encode(pgp_num, bl); + ::encode(lpg_num, bl); + ::encode(lpgp_num, bl); + ::encode(last_change, bl); + ::encode(snap_seq, bl); + ::encode(snap_epoch, bl); + ::encode(snaps, bl); + ::encode(removed_snaps, bl); + ::encode(auid, bl); + ::encode(flags, bl); + ::encode(crash_replay_interval, bl); + return; + } + ENCODE_START(5, 5, bl); ::encode(type, bl); ::encode(size, bl); |