]> git.proxmox.com Git - ceph.git/blame - ceph/doc/dev/osd_internals/osdmap_versions.txt
update ceph source to reef 18.1.2
[ceph.git] / ceph / doc / dev / osd_internals / osdmap_versions.txt
CommitLineData
11fdf7f2
TL
1releases:
2
3 <0.48 pre-argonaut, dev
4 0.48 argonaut
5 0.56 bobtail
6 0.61 cuttlefish
7 0.67 dumpling
8 0.72 emperor
9 0.80 firefly
10 0.87 giant
11 0.94 hammer
12 9.1.0 infernalis rc
13 9.2.0 infernalis
14 10.2.0 jewel
15 11.2.0 kraken
16 12.2.0 luminous
17 13.2.0 mimic
18 14.2.0 nautilus (to-be)
19
20osdmap:
21
22type / v / cv / ev / commit / version / date
23
24map / 1 / - / - / 017788a6ecb570038632de31904dd2e1314dc7b7 / 0.11 / 2009
25inc / 1 / - / - /
26 * initial
27map / 2 / - / - / 020350e19a5dc03cd6cedd7494e434295580615f / 0.13 / 2009
28inc / 2 / - / - /
29 * pg_temp
30map / 3 / - / - / 1ebcebf6fff056a0c0bdf82dde69356e271be27e / 0.19 / 2009
31inc / 3 / - / - /
32 * heartbeat_addr
33map / 4 / - / - / 3ced5e7de243edeccfd20a90ec2034206c920795 / 0.19 / 2010
34inc / 4 / - / - /
35 * pools removed from map
36map / 5 / - / 5 / c4892bed6f49df396df3cbf9ed561c7315bd2442 / 0.20 / 2010
37inc / 5 / - / 5 /
38 * pool names moved to first part of encoding
39 * adds CEPH_OSDMAP_INC_VERSION_EXT (for extended part of map)
40 * adds CEPH_OSDMAP_VERSION_EXT (for extended part of map)
41 * adds 'ev' (extended version) during encode() and decode
42map / 5 / - / 5 / bc9cb9311f1b946898b5256eab500856fccf5c83 / 0.22 / 2010
43inc / 5 / - / 6 /
44 * separate up client/osd
45 * increments CEPH_OSDMAP_INC_VERSION_EXT to 6
46 * CEPH_OSDMAP_INC_VERSION stays at 5
47map / 5 / - / 6 / 7f70112052c7fc3ba46f9e475fa575d85e8b16b2 / 0.22 / 2010
48inc / 5 / - / 6 /
49 * add osd_cluster_addr to full map
50 * increments CEPH_OSDMAP_VERSION_EXT to 6
51 * CEPH_OSDMAP_VERSION stays at 5
52map / 5 / - / 7 / 2ced4e24aef64f2bc7d55b73abb888c124512eac / 0.28 / 2011
53inc / 5 / - / 7 /
54 * add cluster_snapshot field
55 * increments CEPH_OSDMAP_VERSION_EXT to 7
56 * increments CEPH_OSDMAP_INC_VERSION_EXT to 7
57 * CEPH_OSDMAP_INC_VERSION stays at 5
58 * CEPH_OSDMAP_VERSION stays at 5
59map / 6 / - / 7 / d1ce410842ca51fad3aa100a52815a39e5fe6af6 / 0.35 / 2011
60inc / 6 / - / 7 /
61 * encode/decode old + new versions
62 * adds encode_client_old() (basically transitioning from uint32 to
63 uint64)
64 * bumps osdmap version to 6, old clients stay at 5
65 * starts using in-function versions (i.e., _u16 v = 6)
66map / 6 / - / 7 / b297d1edecaf31a48cff6c37df2ee266e51cdec1 / 0.38 / 2011
67inc / 6 / - / 7 /
68 * make encoding conditional based on features
69 * essentially checks whether features & CEPH_FEATURE_PGID64 and opts
70 to either use encode_client_old() or encode()
71map / 6 / - / 7 / 0f0c59478894c9ca7fa04fc32e854648192a9fae / 0.38 / 2011
72inc / 6 / - / 7 /
73 * move stuff from osdmap.h to osdmap.cc
74map / 6 / 8 / ca4311e5e39cec8fad85fad3e67eea968707e9eb / 0.47 / 2012
75inc / 6 / 8 /
76 * store uuid per osd
77 * bumps osdmap::incremental extended version to 8; in function
78 * bumps osdmap's extended version to 8; in function
79map / 6 / - / 8 / 5125daa6d78e173a8dbc75723a8fdcd279a44bcd / 0.47 / 2012
80inc / 6 / - / 8 /
81 * drop defines
82 * drops defines for CEPH_OSDMAP_*_VERSION from rados.h
83map / 6 / 9 / e9f051ef3c49a080b24d7811a16aefb64beacbbd / 0.53 / 2012
84inc / 6 / 9 /
85 * add osd_xinfo_t
86 * osdmap::incremental ext version bumped to 9
87 * osdmap's ext version bumped to 9
88 * because we're adding osd_xinfo_t to the map
89map / 6 / - / 10 / 1fee4ccd5277b52292e255daf458330eef5f0255 / 0.64 / 2013
90inc / 6 / - / 10 /
91 * encode front hb addr
92 * osdmap::incremental ext version bumped to 10
1e59de90 93 * osdmap's ext version bumped to 10
11fdf7f2
TL
94 * because we're adding osd_addrs->hb_front_addr to map
95
96// below we have the change to ENCODE_START() for osdmap and others
97// this means client-usable data and extended osd data get to have their
98// own ENCODE_START()'s, hence their versions start at 1 again.
99
100map / 7 / 1 / 1 / 3d7c69fb0986337dc72e466dc39d93e5ab406062 / 0.77 / 2014
101inc / 7 / 1 / 1 / b55c45e85dbd5d2513a4c56b3b74dcafd03f20b1 / 0.77 / 2014
102 * introduces ENCODE_START() approach to osdmap, and the 'features'
103 argument we currently see in ::encode() functions
104 * same, but for osdmap::incremental
105map / 7 / 1 / 1 / b9208b47745fdd53d36b682bebfc01e913347092 / 0.77 / 2014
106inc / 7 / 1 / 2 /
107 * include features argument in incremental.
108map / 7 / 2 / 1 / cee914290c5540eb1fb9d70faac70a581381c29b / 0.78 / 2014
109inc / 7 / 2 / 2 /
110 * add osd_primary_affinity
111map / 7 / 3 / 1 / c4f8f265955d54f33c79cde02c1ab2fe69ab1ab0 / 0.78 / 2014
112inc / 7 / 3 / 2 /
113 * add new/old erasure code profiles
114map / 8 / 3 / 1 / 3dcf5b9636bb9e0cd6484d18f151b457e1a0c328 / 0.91 / 2014
115inc / 8 / 3 / 2 /
116 * encode crc
117map / 8 / 3 / 1 / 04679c5451e353c966f6ed00b33fa97be8072a79 / 9.1.0 / 2015
118inc / 8 / 3 / 2 /
119 * simply ensures encode_features are filled to CEPH_FEATURE_PGID64 when
120 decoding an incremental if struct_v >= 6; else keeps it at zero.
121 * otherwise, if we get an incremental from hammer (which has
122 struct_v = 6) we would be decoding it as if it were a map from before
123 CEPH_FEATURES_PGID64 (which was introduced in 0.35, pre-argonaut)
124map / 8 / 3 / 2 / 5c6b9d9dcd0a225e3a2b154c20a623868c269346 / 12.0.1 / 2017
125inc / 8 / 3 / 3 /
126 * add (near)full_ratio
127 * used to live in pgmap, moving to osdmap for luminous
128 * conditional on SERVER_LUMINOUS feature being present
129 * osdmap::incremental::encode(): conditional on ev >= 3
130 * osdmap::incremental::decode(): conditional on ev >= 3, else -1
131 * osdmap::encode(): conditional on ev >= 2
132 * osdmap::decode(): conditional on ev >= 0, else 0
133map / 8 / 4 / 2 / 27d6f4373bafa24450f6dbb4e4252c2d9c2c1448 / 12.0.2 / 2017
134inc / 8 / 4 / 3 /
135 * add pg_remap and pg_remap_items
136 * first forces a pg to map to a particular value; second replaces
137 specific osds with specific other osds in crush mapping.
138 * inc conditional on SERVER_LUMINOUS feature being present
139 * osdmap::incremental::encode(): conditional on cv >= 4
140 * osdmap::incremental::decode(): conditional on cv >= 4
141 * map conditional on OSDMAP_REMAP feature being present
142 * osdmap::encode(): if not feature, cv = 3; encode on cv >= 4
143 * osdmap::decode(): conditional on cv >= 4
144map / 8 / 4 / 3 / 27d6f4373bafa24450f6dbb4e4252c2d9c2c1448 / 12.0.2 / 2017
145inc / 8 / 4 / 4 /
146 * handle backfillfull_ratio like nearfull and full
147 * inc:
148 * osdmap::incremental::encode(): conditional on ev >= 3
149 * osdmap::incremental::decode(): conditional on ev >= 4, else -1
150 * map:
151 * osdmap::encode(): conditional on ev >= 2
152 * osdmap::decode(): conditional on ev >= 3, else 0
153map / 8 / 4 / 3 / a1c66468232002c9f36033226f5db0a5751e8d18 / 12.0.3 / 2017
154inc / 8 / 4 / 4 /
155 * add require_min_compat_client field
156 * inc:
157 * osdmap::incremental::encode() conditional on ev >= 4
158 * osdmap::incremental::decode() conditional on ev >= 4
159 map:
160 * osdmap::encode() conditional on ev >= 3
161 * osdmap::decode() conditional on ev >= 3
162map / 8 / 4 / 4 / 4a09e9431de3084b1ca98af11b28f822fde4ffbe / 12.0.3 / 2017
163inc / 8 / 4 / 5 /
164 * bumps encoding version for require_min_compat_client
165 * otherwise osdmap::decode() would throw exception when decoding
166 old maps
167 * inc:
168 * osdmap::incremental::encode() no conditional on ev >= 3
169 * osdmap::incremental::decode() conditional on ev >= 5
170 * map:
171 * osdmap::encode() conditional on ev >= 2
172 * osdmap::decode() conditional on ev >= 4
173map / 8 / 4 / 5 / 3d4c4d9d9da07e1456331c43acc998d2008ca8ea / 12.1.0 / 2017
174inc / 8 / 4 / 6 /
175 * add require_osd_release numeric field
176 * new_require_min_compat_client:
177 * osdmap::incremental::encode() conditional on ev >= 5
178 * osdmap::encode() conditional on ev >= 4
179 * require_osd_release:
180 * osdmap::incremental::encode() conditional on ev >= 6
181 * osdmap::incremental::decode() conditional on ev >= 6 (else, -1)
182 * osdmap::encode() conditional on ev >= 5
183 * osdmap::decode() conditional on ev >= 5 (else, -1)
184map / 8 / 4 / 5 / f22997e24bda4e6476e15d5d4ad9737861f9741f / 12.1.0 / 2017
185inc / 8 / 4 / 6 /
186 * switch (require_)min_compat_client to integers instead of strings
187 * osdmap::incremental::encode() conditional on ev >= 6
188 * osdmap::incremental::decode():
189 * if ev == 5, decode string and translate to release number
190 * if ev >= 6, decode integer
191 * osdmap::encode() conditional on ev >= 4
192 * osdmap::decode():
193 * if ev == 4, decode string and translate to release number
194 * if ev >= 5, decode integer
195map / 8 / 4 / 6 / a8fb39b57884d96201fa502b17bc9395ec38c1b3 / 12.1.0 / 2017
196inc / 8 / 5 / 6 /
197 * make incremental's `new_state` 32 bits instead of 8 bits
198 * implies forcing 8 bits on
199 * osdmap::incremental::encode_client_old()
200 * osdmap::incremental::encode_classic()
201 * osdmap::incremental::decode_classic()
202 * osdmap::incremental::encode() conditional on cv >= 5, else force 8b.
203 * osdmap::incremental::decode() conditional on cv >= 5, else force 8b.
204map / 8 / 5 / 6 / 3c1e58215bbb98f71aae30904f9010a57a58da81 / 12.1.0 / 2017
205inc / 8 / 5 / 6 /
206 * same as above
207map / 8 / 6 / 6 / 48158ec579b708772fae82daaa6cb5dcaf5ac5dd / 12.1.0 / 2017
208inc / 8 / 5 / 6 /
209 * add crush_version
210 * osdmap::encode() conditional on cv >= 6
211 * osdmap::decode() conditional on cv >= 6
212map / 8 / 7 / 6 / 553048fbf97af999783deb7e992c8ecfa5e55500 / 13.0.2 / 2017
213inc / 8 / 6 / 6 /
214 * track newly removed and purged snaps in each epoch
215 * new_removed_snaps
216 * new_purged_snaps
217 * osdmap::encode() conditional on cv >= 7
218 * if SERVER_MIMIC not in features, cv = 6
219 * osdmap::decode() conditional cv >= 7
220map / 8 / 8 / 6 / f99c2a9fec65ad3ce275ef24bd167ee03275d3d7 / 14.0.1 / 2018
221inc / 8 / 7 / 6 /
222 * fix pre-addrvec compat
223 * osdmap::encode() conditional on cv >= 8, else encode client addrs
224 one by one in a loop.
225 * osdmap::decode() just bumps version (?)
226map / 8 / 8 / 7 / 9fb1e521c7c75c124b0dbf193e8b65ff1b5f461e / 14.0.1 / 2018
227inc / 8 / 7 / 7 /
228 * make cluster addrs into addrvecs too
229 * this will allow single-step upgrade from msgr1 to msgr2
230map / 8 / 9 / 7 / d414f0b43a69f3c2db8e454d795be881496237c6 / 14.0.1 / 2018
231inc / 8 / 8 / 7 /
232 * store last_up_change and last_in_change
233 * osdmap::encode() conditional on cv >= 9
234 * osdmap::decode() conditional on cv >= 9
235
236
237
238osd_info_t:
239v / commit / version / date / reason
240
2411 / e574c84a6a0c5a5070dc72d5f5d3d17914ef824a / 0.19 / 2010 / add struct_v
242
243osd_xinfo_t:
244v / commit / version / date
245
2461 / e9f051ef3c49a080b24d7811a16aefb64beacbbd / 0.53 / 2012
247 * add osd_xinfo_t
2482 / 31743d50a109a463d664ec9cf764d5405db507bd / 0.75 / 2013
249 * add features bit mask to osd_xinfo_t
2503 / 87722a42c286d4d12190b86b6d06d388e2953ba0 / 0.82 / 2014
251 * remember osd weight when auto-marking osds out
252
253rados.h:
254v / commit / version / date / reason
255
256- / 147c6f51e34a875ab65624df04baa8ef89296ddd / 0.19 / 2010 / move versions
257 3 / CEPH_OSDMAP_INC_VERSION
258 3 / CEPH_OSDMAP_VERSION
259 2 / CEPH_PG_POOL_VERSION