1 commit 3e02b2fad88c2a95d9c0c86878f10d1beb780bfe
2 Author: Sage Weil <sage@inktank.com>
3 Date: Tue Sep 11 13:04:50 2012 -0700
7 commit 343e607980c923324de241d2cf8396d7c4857dd8
8 Author: Yehuda Sadeh <yehuda@inktank.com>
9 Date: Tue Sep 18 13:45:27 2012 -0700
11 cls_rgw: if stats drop below zero, set them to zero
13 This complements fix for #3127. This is only a band aid
14 solution for argonaut, the real solution fixes the original
15 issue that made this possible.
17 Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
19 commit 92be908c7f22c0ccf2092024fd54096362032394
20 Author: Yehuda Sadeh <yehuda@inktank.com>
21 Date: Wed Sep 12 16:41:17 2012 -0700
23 cls_rgw: change scoping of suggested changes vars
26 Bad variable scoping made it so that specific variables
27 weren't initialized between suggested changes iterations.
28 This specifically affected a case where in a specific
29 change we had an updated followed by a remove, and the
30 remove was on a non-existent key (e.g., was already
31 removed earlier). We ended up re-substracting the
32 object stats, as the entry wasn't reset between
33 the iterations (and we didn't read it because the
37 Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
39 commit d3a8497b44296484fa18ac10e776c93701365a8b
40 Author: Sage Weil <sage@inktank.com>
41 Date: Tue Sep 4 11:29:21 2012 -0700
43 objecter: fix osdmap wait
45 When we get a pool_op_reply, we find out which osdmap we need to wait for.
46 The wait_for_new_map() code was feeding that epoch into
47 maybe_request_map(), which was feeding it to the monitor with the subscribe
48 request. However, that epoch is the *start* epoch, not what we want. Fix
49 this code to always subscribe to what we have (+1), and ensure we keep
50 asking for more until we catch up to what we know we should eventually
54 Signed-off-by: Sage Weil <sage@inktank.com>
55 Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
56 (cherry picked from commit e09b26555c6132ffce08b565780a39e4177cbc1c)
58 commit de026f31f7f31c2b79c41910b83570f052f354d5
59 Author: Sage Weil <sage@inktank.com>
60 Date: Mon Aug 27 07:38:34 2012 -0700
62 objecter: send queued requests when we get first osdmap
64 If we get our first osdmap and already have requests queued, send them.
66 Backported from 8d1efd1b829ae50eab7f7f4c07da04e03fce7c45.
69 Signed-off-by: Sage Weil <sage@inktank.com>
71 commit 379aa80ac3a313025e433cefd239ddbeec45f9e7
72 Author: Sage Weil <sage@inktank.com>
73 Date: Tue Aug 21 21:12:33 2012 -0700
75 objecter: use ordered map<> for tracking tids to preserve order on resend
77 We are using a hash_map<> to map tids to Op*'s. In handle_osd_map(),
78 we will recalc_op_target() on each Op in a random (hash) order. These
79 will get put in a temp map<tid,Op*> to ensure they are resent in the
80 correct order, but their order on the session->ops list will be random.
82 Then later, if we reset an OSD connection, we will resend everything for
83 that session in ops order, which is be incorrect.
85 Fix this by explicitly reordering the requests to resend in
86 kick_requests(), much like we do in handle_osd_map(). This lets us
87 continue to use a hash_map<>, which is faster for reasonable numbers of
88 requests. A simpler but slower fix would be to just use map<> instead.
90 This is one of many bugs contributing to #2947.
92 Signed-off-by: Sage Weil <sage@inktank.com>
93 Reviewed-by: Samuel Just <sam.just@inktank.com>
94 (cherry picked from commit 1113a6c56739a56871f01fa13da881dab36a32c4)
96 commit 54788d0da40608fb8ccf8f16039536729881d542
97 Author: Dan Mick <dan.mick@inktank.com>
98 Date: Mon Aug 20 15:02:57 2012 -0700
100 rbd: force all exiting paths through main()/return
102 This properly destroys objects. In the process, remove usage_exit();
103 also kill error-handling in set_conf_param (never relevant for rbd.cc,
104 and if you call it with both pointers NULL, well...)
105 Also switch to EXIT_FAILURE for consistency.
107 Backported from fed8aea662bf919f35a5a72e4e2a2a685af2b2ed.
109 Signed-off-by: Dan Mick <dan.mick@inktank.com>
110 Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
113 commit a179ccee8848fe9bc8d622cba13fab1a99f6eb63
114 Author: Josh Durgin <josh.durgin@inktank.com>
115 Date: Tue Sep 18 09:37:44 2012 -0700
117 rbd: only open the destination pool for import
119 Otherwise importing into another pool when the default pool, rbd,
120 doesn't exist results in an error trying to open the rbd pool.
122 Reported-by: Sébastien Han <han.sebastien@gmail.com>
123 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
125 commit 16aca749989b006f4d5d2190ed1e8480c1bf0282
126 Author: Tommi Virtanen <tv@inktank.com>
127 Date: Mon Sep 17 08:55:14 2012 -0700
129 ceph-disk-activate, upstart: Use "initctl emit" to start OSDs.
131 This avoids an error if the daemon was running already, and is
132 already being done with the other services.
134 Signed-off-by: Tommi Virtanen <tv@inktank.com>
136 commit 34d8eec9e23edec174a96d16bf42a0b8df118183
137 Author: Josh Durgin <josh.durgin@inktank.com>
138 Date: Fri Sep 14 17:13:57 2012 -0700
140 rbd: make --pool/--image args easier to understand for import
142 There's no need to set the default pool in set_pool_image_name - this
143 is done later, in a way that doesn't ignore --pool if --dest-pool
146 This means --pool and --image can be used with import, just like
147 the rest of the commands. Without this change, --dest and --dest-pool
148 had to be used, and --pool would be silently ignored for rbd import.
150 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
152 commit f390ee68233e9c6db1202aa95665adf27ba4399a
153 Author: Tommi Virtanen <tv@inktank.com>
154 Date: Thu Sep 13 14:06:04 2012 -0700
156 ceph-create-keys: Create a bootstrap-osd key too.
158 Signed-off-by: Tommi Virtanen <tv@inktank.com>
160 commit 9348ea0de953a4fd2eed239437d14c366c8e2cdd
161 Author: Tommi Virtanen <tv@inktank.com>
162 Date: Thu Sep 13 11:34:03 2012 -0700
164 ceph-create-keys: Refactor to share wait_for_quorum call.
166 Signed-off-by: Tommi Virtanen <tv@inktank.com>
168 commit c9d4c58b9d71e6d84b644376684bcb72eae7e11c
169 Author: Sage Weil <sage@inktank.com>
170 Date: Wed Sep 12 11:38:07 2012 -0700
172 objecter: fix skipped map handling
174 If we skip a map, we want to translate NO_ACTION to NEED_RESEND, but leave
177 Backported from 2a3b7961c021b19a035f8a6cc4fc3cc90f88f367.
179 Signed-off-by: Sage Weil <sage@inktank.com>
181 commit d8dff93a2497bd578116eb20ed65a0595acdf341
182 Author: Josh Durgin <josh.durgin@inktank.com>
183 Date: Mon Jul 30 15:19:29 2012 -0700
185 librbd, cls_rbd: close snapshot creation race with old format
187 If two clients created a snapshot at the same time, the one with the
188 higher snapshot id might be created first, so the lower snapshot id
189 would be added to the snapshot context and the snaphot seq would be
190 set to the lower one.
192 Instead of allowing this to happen, return -ESTALE if the snapshot id
193 is lower than the currently stored snapshot sequence number. On the
194 client side, get a new id and retry if this error is encountered.
197 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
198 Reviewed-by: Sage Weil <sage@inktank.com>
200 commit 771ca71c0357bd8149677795ac934ab09945a3a3
201 Author: Tommi Virtanen <tv@inktank.com>
202 Date: Tue Sep 11 16:31:57 2012 -0700
204 upstart: Give everything a stop on stanza.
206 These are all tasks, and expected to exit somewhat quickly,
207 but e.g. ceph-create-keys has a loop where it waits for mon
208 to reach quorum, so it might still be in that loop when the
209 machine is shut down.
211 commit 9f967e3ac255b0037b598061f5cbb4050db79472
212 Author: Tommi Virtanen <tv@inktank.com>
213 Date: Tue Sep 11 16:28:41 2012 -0700
215 upstart: Start mds,mon,radosgw after a reboot.
217 They had no "start on" stanzas, so they didn't get started earlier.
219 commit ce1e7d1b0291759950abf02f5bae064994d2ec34
220 Author: Tommi Virtanen <tv@inktank.com>
221 Date: Tue Sep 11 15:31:06 2012 -0700
223 upstart: Add ceph-create-keys.conf to package.
225 Signed-off-by: Tommi Virtanen <tv@inktank.com>
227 commit 0ff22ba0508d43cd78aeae6736f2db002cc8de8e
228 Author: Sage Weil <sage@inktank.com>
229 Date: Tue Sep 11 14:50:53 2012 -0700
231 obsync: if OrdinaryCallingFormat fails, try SubdomainCallingFormat
233 This blindly tries the Subdomain calling format if the ordinary method
234 fails. In particular, this works around buckets that present a
235 PermanentRedirect message.
239 Signed-off-by: Sage Weil <sage@inktank.com>
240 Reviewed-by: Matthew Wodrich <matthew.wodrich@dreamhost.com>
242 commit 0e58d95134dd95f33b9b1a3b1286a0719ad20707
243 Author: Sage Weil <sage@inktank.com>
244 Date: Fri Aug 17 16:04:20 2012 -0700
246 librbd: add test for discard of nonexistent objects
248 This verifies librbd properly handles ENOENT during discard.
250 Signed-off-by: Sage Weil <sage@inktank.com>
252 commit 97d8a734ce937ce2a683c7c36f5b72395c6456c2
253 Author: Josh Durgin <josh.durgin@inktank.com>
254 Date: Mon Sep 10 13:19:53 2012 -0700
256 librbd: ignore -ENOENT during discard
258 This is a backport of a3ad98a3eef062e9ed51dd2d1e58c593e12c9703
260 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
262 commit 61d705e2d67f83c81aa7c6362ec6703e014ecb87
263 Author: Sage Weil <sage@inktank.com>
264 Date: Wed Aug 15 18:42:56 2012 -0700
266 objectcacher: fix bh leak on discard
269 Signed-off-by: Sage Weil <sage@inktank.com>
271 commit 787a78e8b1d8e5d92ee447b970ec8b79baa46f0b
272 Author: Tommi Virtanen <tv@inktank.com>
273 Date: Thu Aug 30 10:16:52 2012 -0400
275 upstart, ceph-create-keys: Make client.admin key generation automatic.
277 This should help simplify Chef etc deployments. Now (when using the
278 Upstart jobs), when a ceph-mon is started, ceph-create-admin-key is
279 triggered. If /etc/ceph/$cluster.client.admin.keyring already exists,
280 it does nothing; otherwise, it waits for ceph-mon to reach quorum, and
281 then does a "ceph auth get-or-create" to create the key, and writes it
284 The equivalent code can be removed from the Chef cookbook once this is
287 Signed-off-by: Tommi Virtanen <tv@inktank.com>
289 commit 66aecb1e410a59f3e0ed89a30212b8dc546a3d4a
290 Author: Tommi Virtanen <tv@inktank.com>
291 Date: Thu Aug 30 10:21:29 2012 -0400
293 config: Add a per-name default keyring to front of keyring search path.
295 This lets us have e.g. /etc/ceph/ceph.client.admin.keyring that is
296 owned by root:admin and mode u=rw,g=r,o= without making every non-root
297 run of the command line tools complain and fail.
299 This is what the Chef cookbook has been doing for a while already.
301 Signed-off-by: Tommi Virtanen <tv@inktank.com>
303 commit 6e34b8c109322690151b42efb745bc96a210dda4
304 Author: Tommi Virtanen <tv@inktank.com>
305 Date: Thu Aug 30 10:11:09 2012 -0400
307 upstart: Make instance jobs export their cluster and id variables.
309 This allows other jobs listening to Upstart "started ceph-mon" events
310 to see what instance started.
312 Signed-off-by: Tommi Virtanen <tv@inktank.com>
314 commit 27372dc4e99c17a7a2d5ad6646e5ae54392d5955
315 Author: Tommi Virtanen <tv@inktank.com>
316 Date: Thu Jul 12 10:47:29 2012 -0700
318 upstart: Make ceph-osd always set the crush location.
320 This used to be conditional on config having osd_crush_location set,
321 but with that, minimal configuration left the OSD completely out of
322 the crush map, and prevented the OSD from starting properly.
324 Note: Ceph does not currently let this mechanism automatically move
325 hosts to another location in the CRUSH hierarchy. This means if you
326 let this run with defaults, setting osd_crush_location later will not
327 take effect. Set up your config file (or Chef environment) fully
328 before starting the OSDs the first time.
330 Signed-off-by: Tommi Virtanen <tv@inktank.com>
332 commit 471105a966f873aef2361b1ed48d088c490fe1aa
333 Author: Tommi Virtanen <tv@inktank.com>
334 Date: Tue Jul 3 15:24:26 2012 -0700
336 ceph-disk-prepare: Partition and format OSD data disks automatically.
338 Uses gdisk, as it seems to be the only tool that can automate GPT uuid
339 changes. Needs to run as root.
341 Adds Recommends: gdisk to ceph.deb.
344 Signed-off-by: Tommi Virtanen <tv@inktank.com>
346 commit 24fe265c594308d5679e845fcfe8b0fe6a7be612
347 Author: Tommi Virtanen <tv@inktank.com>
348 Date: Tue Jul 3 09:22:28 2012 -0700
350 ceph-disk-prepare: Take fsid from config file.
354 Signed-off-by: Tommi Virtanen <tv@inktank.com>
356 commit 1f06b490b4187055a5bfabc20746c87dfa075e0d
357 Author: Tommi Virtanen <tv@inktank.com>
358 Date: Mon Jun 25 15:14:33 2012 -0700
362 Signed-off-by: Tommi Virtanen <tv@inktank.com>
363 Signed-off-by: Greg Farnum <greg@inktank.com>
365 commit 657ca118a7658617b9117311d9ee1cbe00103c06
366 Author: Yehuda Sadeh <yehuda@inktank.com>
367 Date: Tue Aug 28 16:17:21 2012 -0700
369 rgw: clear usage map before reading usage
372 Since we read usage in chunks we need to clear the
373 usage map before reading the next chunk, otherwise
374 we're going to aggregate the old data as well.
377 Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
379 commit c49284c98de1df1a889e0c88e6b1157133f5e0a6
380 Author: Gary Lowell <glowell@inktank.com>
381 Date: Thu Aug 23 11:48:50 2012 -0700
383 Don't package crush header files.
385 commit b6fb3e37a68d48434a81ee4356cde48cad187e94
386 Author: Yehuda Sadeh <yehuda@inktank.com>
387 Date: Fri Aug 17 17:34:23 2012 -0700
389 rgw: dump content_range using 64 bit formatters
392 Also make sure that size is 64 bit.
395 Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
397 commit 08d975146cbe6796799266f03361240a62acb297
398 Author: Sage Weil <sage@inktank.com>
399 Date: Tue Aug 21 10:58:38 2012 -0700
401 Revert "rgw: dump content_range using 64 bit formatters"
403 This reverts commit faf9fa5744b459abc2eda829a48a4e07b9c97a08.
405 commit faf9fa5744b459abc2eda829a48a4e07b9c97a08
406 Author: Yehuda Sadeh <yehuda@inktank.com>
407 Date: Fri Aug 17 17:34:23 2012 -0700
409 rgw: dump content_range using 64 bit formatters
412 Also make sure that size is 64 bit.
415 Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
416 Reviewed-by: Sage Weil <sage@inktank.com>
418 commit 47b24c0562bcb44964a0b8f6c4847bb0f05924e0
419 Author: Matthew Wodrich <matthew.wodrich@dreamhost.com>
420 Date: Tue Jul 31 19:13:03 2012 -0700
422 obsync: add missing package specifier to format_exc
425 Signed-off-by: Matthew Wodrich <matthew.wodrich@dreamhost.com>
426 Reviewed-by: Dan Mick <dan.mick@inktank.com>
428 commit a14214dc9b7c15581a0664dbe259389867f88e72
429 Author: Danny Kukawka <danny.kukawka@bisect.de>
430 Date: Thu Aug 16 12:56:58 2012 +0200
432 fix keyring generation for mds and osd
434 [ The following text is in the "UTF-8" character set. ]
435 [ Your display is set for the "ANSI_X3.4-1968" character set. ]
436 [ Some characters may be displayed incorrectly. ]
438 Fix config keys for OSD/MDS data dirs. As in documentation and other
439 places of the scripts the keys are 'osd data'/'mds data' and not
442 In case if MDS: if 'mds data' doesn't exist, create it.
444 Signed-off-by: Danny Kukawka <danny.kukawka@bisect.de>
446 commit d1a31ce1ca2a5e1c53146c6e9063a123a1fe8cdb
447 Author: Danny Kukawka <danny.kukawka@bisect.de>
448 Date: Thu Aug 16 12:56:32 2012 +0200
450 fix ceph osd create help
452 [ The following text is in the "UTF-8" character set. ]
453 [ Your display is set for the "ANSI_X3.4-1968" character set. ]
454 [ Some characters may be displayed incorrectly. ]
456 Change ceph osd create <osd-id> to ceph osd create <uuid>, since this
457 is what the command is really doing.
459 Signed-off-by: Danny Kukawka <danny.kukawka@bisect.de>
461 commit dc2a232bd37b7202c3d6e94396b3d85cec5225cd
462 Author: Sage Weil <sage@inktank.com>
463 Date: Mon Jul 9 17:24:19 2012 -0700
465 mon: simplify logmonitor check_subs; less noise
467 * simple helper to translate name to id
468 * verify sub type is valid in caller
469 * assert sub type is valid in method
470 * simplify iterator usage
472 Among other things, this gets rid of this noise in the logs:
474 2012-07-10 20:51:42.617152 7facb23f1700 1 mon.a@1(peon).log v310 check_sub sub monmap not log type
476 Signed-off-by: Sage Weil <sage@inktank.com>