1 commit df884bb7b59e5796c996ab806f5ec8b8322e292f
2 Author: Gary Lowell <gary.lowell@inktank.com>
3 Date: Thu May 2 18:08:06 2013 -0700
7 commit b38cbabb2a38e4476de1135c33c25c673d62cd67
8 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
9 Date: Thu Apr 4 18:23:40 2013 +0200
11 ceph.spec.in: fix udev rules.d files handling
13 Move 50-rbd.rules into the ceph base package since the related
14 ceph-rbdnamer binary is part of this package. Use correct install
17 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
19 commit d0678a062a1baf738ce96114114d99495be19478
20 Author: Sage Weil <sage@inktank.com>
21 Date: Mon Apr 29 17:01:55 2013 -0700
23 debian: only start/stop upstart jobs if upstart is present
25 This avoids errors on non-upstart distros (like wheezy).
27 Signed-off-by: Sage Weil <sage@inktank.com>
28 (cherry picked from commit 030bf8aaa15837f898e453161eeaf1d52fc5779d)
31 debian/ceph-mds.postinst
33 commit 209ce34a420cc5cdbe7219393f2f150ac28f612c
34 Author: Sage Weil <sage@inktank.com>
35 Date: Mon Mar 11 17:09:37 2013 -0700
37 debian: stop ceph-mds before uninstalling ceph-mds
40 Signed-off-by: Sage Weil <sage@inktank.com>
41 (cherry picked from commit 9eb0d91b867ab980135d7c6ff6347d69d0a8a794)
43 commit 0c91becfa6cc5f05c5b2eaa89299dbf1aa202344
44 Author: Dan Mick <dan.mick@inktank.com>
45 Date: Thu Apr 25 15:53:51 2013 -0700
47 Makefile.am: Add -lpthread to fix build on newer ld in Raring Ringtail
49 Signed-off-by: Dan Mick <dan.mick@inktank.com>
50 Reviewed-by: Sage Weil <sage@inktank.com>
51 (cherry picked from commit 98f532e8000af281fa03b24da9ad2fda81755270)
56 commit 15e6544f0892e8472f436149d15fc30257496c0b
57 Merge: fdc0534 418cff5
58 Author: Sage Weil <sage@inktank.com>
59 Date: Wed May 1 12:57:43 2013 -0700
61 Merge remote-tracking branch 'gh/bobtail-deploy' into bobtail-next
63 commit fdc05346177a60f064fe351ca81c6078cd065179
64 Author: Sage Weil <sage@inktank.com>
65 Date: Thu Apr 25 11:13:33 2013 -0700
67 init-ceph: use remote config when starting daemons on remote nodes (-a)
69 If you use -a to start a remote daemon, assume the remote config is present
70 instead of pushing the local config. This makes more sense and simplifies
73 Note that this means that -a in concert with -c foo means that foo must
74 also be present on the remote node in the same path. That, however, is a
75 use case that I don't particularly care about right now. :)
77 Signed-off-by: Sage Weil <sage@inktank.com>
78 Reviewed-by: Dan Mick <dan.mick@inktank.com>
79 (cherry picked from commit cd7e52cc76878eed0f084f7b9a6cf7c792b716c6)
81 commit 55c87e821b6acc1cd46056ca27c6e7f7030466e7
82 Author: Samuel Just <sam.just@inktank.com>
83 Date: Wed Apr 24 12:20:17 2013 -0700
85 PG: call check_recovery_sources in remove_down_peer_info
87 If we transition out of peering due to affected
88 prior set, we won't trigger start_peering_interval
89 and check_recovery_sources won't get called. This
90 will leave an entry in missing_loc_sources without
91 a matching missing set. We always want to
92 check_recovery_sources with remove_down_peer_info.
96 Signed-off-by: Samuel Just <sam.just@inktank.com>
97 Reviewed-by: Sage Weil <sage@inktank.com>
98 (cherry picked from commit 81a6165c13c533e9c1c6684ab7beac09d52ca6b5)
100 commit a28c2f55bfc768a502fbc8ec35265e7f1a53e044
101 Author: Samuel Just <sam.just@inktank.com>
102 Date: Thu Apr 25 14:08:57 2013 -0700
104 PG: clear want_acting when we leave Primary
106 This is somewhat annoying actually. Intuitively we want to
107 clear_primary_state when we leave primary, but when we restart
108 peering due to a change in prior set status, we can't afford
109 to forget most of our peering state. want_acting, on the
110 other hand, should never persist across peering attempts.
111 In fact, in the future, want_acting should be pulled into
112 the Primary state structure.
115 Signed-off-by: Samuel Just <sam.just@inktank.com>
116 Reviewed-by: Sage Weil <sage@inktank.com>
117 Reviewed-by: David Zafman <david.zafman@inktank.com>
118 (cherry picked from commit a5cade1fe7338602fb2bbfa867433d825f337c87)
120 commit 849ed5982d4547dd651313919fb090944f568214
121 Author: Greg Farnum <greg@inktank.com>
122 Date: Tue Apr 30 18:12:10 2013 -0700
124 mon: communicate the quorum_features properly when declaring victory.
128 Signed-off-by: Greg Farnum <greg@inktank.com>
129 Reviewed-by: Sage Weil <sage@inktank.com>
130 (cherry picked from commit fe68afe9d10bc5d49a05a8bafa644d57783447cf)
132 commit ea9c76b8f457d44e63551d47b6dd30bd16a56468
133 Author: Greg Farnum <greg@inktank.com>
134 Date: Tue Apr 30 11:01:54 2013 -0700
136 elector: trigger a mon reset whenever we bump the epoch
138 We need to call reset during every election cycle; luckily we
139 can call it more than once. bump_epoch is (by definition!) only called
140 once per cycle, and it's called at the beginning, so we put it there.
144 Signed-off-by: Greg Farnum <greg@inktank.com>
145 Reviewed-by: Sage Weil <sage@inktank.com>
146 (cherry picked from commit 6ae9bbb5d03cb5695a4ebb7a3c20f729de1bd67a)
152 commit 418cff585bf6fc292d260a464369d82f7cdb3b79
153 Author: Alexandre Marangone <alexandre.marangone@inktank.com>
154 Date: Fri Apr 19 15:09:28 2013 -0700
156 Fix journal partition creation
158 With OSD sharing data and journal, the previous code created the
159 journal partiton from the end of the device. A uint32_t is
160 used in sgdisk to get the last sector, with large HD, uint32_t
162 The journal partition will be created backwards from the
163 a sector in the midlle of the disk leaving space before
164 and after it. The data partition will use whichever of
165 these spaces is greater. The remaining will not be used.
167 This patch creates the journal partition from the start as a workaround.
169 Signed-off-by: Alexandre Marangone <alexandre.marangone@inktank.com>
170 (cherry picked from commit 56619ab91732bd2eacbef388311954f4e0230a30)
172 commit 1a6b87ea48c3bcd3904d888a2ad1e5774aa2de8e
173 Author: Sage Weil <sage@inktank.com>
174 Date: Fri Apr 26 15:37:21 2013 -0700
176 ceph.spec.in: put ceph-disk-* et al in correct sbindir
178 Signed-off-by: Sage Weil <sage@inktank.com>
180 commit 86337936059d6b17c887e82f79167324eafa083c
181 Author: Sage Weil <sage@inktank.com>
182 Date: Fri Apr 26 15:29:12 2013 -0700
184 debian: fix ceph.install
186 This got out of sync somewhere in cherry-picking all of these patches.
188 Signed-off-by: Sage Weil <sage@inktank.com>
190 commit 0b42b1edb306a9763bcd02bd962bd284f6b7b3a3
191 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
192 Date: Thu Apr 4 15:54:31 2013 +0200
194 Makefile.am: install ceph-* python scripts to /usr/bin directly
196 Install ceph-* scripts directly to $(prefix)$(sbindir) (which
197 normaly would be /usr/sbin) instead of moving it around after
198 installation in SPEC file or debian files.
200 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
201 (cherry picked from commit 4d16f38f48e276497190c8bc03abc55c40e18eed)
203 commit c71fb8d5b39667fc2c9f7e898ced53059d3f1eec
204 Author: Gary Lowell <glowell@inktank.com>
205 Date: Tue Apr 2 12:11:10 2013 -0700
207 ceph-disk: CalledProcessError has no output keyword on 2.6
209 Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
210 (cherry picked from commit a793853850ee135de14b9237f7023cadcdb8575c)
212 commit 1b86b1c7618b1ab93e25e1abf79bbe0a992c8526
213 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
214 Date: Tue Apr 2 17:54:53 2013 +0200
216 ceph-disk: fix some (local) variable names
218 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
219 (cherry picked from commit c4eb7e6ddd593cd45ab8343da01355be7382723e)
221 commit ee452ebe6ff37087714c085dacd1ca2bcf66bd49
222 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
223 Date: Tue Apr 2 17:36:37 2013 +0200
225 ceph-disk: fix naming of local variable in is_mounted()
227 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
228 (cherry picked from commit 3dd8b461219e64bb0f7a210dba5a9ab7c644f014)
230 commit 0e47d312dcec2deb26a960e6097708d8742d85cb
231 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
232 Date: Tue Apr 2 17:33:08 2013 +0200
234 ceph-disk: merge twice defined function is_mounted(dev)
236 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
237 (cherry picked from commit eaf31bf9f90ba9709a57a6870dbafa21142dae2c)
239 commit 7326ea6397160607d78914444f7f0598a6ba346f
240 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
241 Date: Tue Apr 2 17:26:12 2013 +0200
243 ceph-disk: define exception type
245 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
246 (cherry picked from commit 4c6d6442a89adc5b56e99cb4d2ed572f2ad192c9)
248 commit 14a348dc8ea9c012b6843825fd7beb5896a6d92e
249 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
250 Date: Tue Apr 2 17:17:38 2013 +0200
252 ceph-disk: fix Redefining name 'uuid' from outer scope
254 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
255 (cherry picked from commit 058eb923c5b7dab611901fdd1724ce2a7c180827)
257 commit 9419dca69292146ea1fd216a1ad08b2e07bdc1a0
258 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
259 Date: Tue Apr 2 17:14:23 2013 +0200
261 ceph-disk: add missing space after comma
263 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
264 (cherry picked from commit 0080d1df7c7950e051840a543fc4bdabe6cc53e5)
266 commit 7406981aa5515a3be8af0b9a0abef83a40c432b2
267 Author: Sage Weil <sage@inktank.com>
268 Date: Fri Mar 29 17:30:28 2013 -0700
270 ceph-disk list: say 'unknown cluster $UUID' when cluster is unknown
272 This makes it clearer that an old osd is in fact old.
274 Signed-off-by: Sage Weil <sage@inktank.com>
275 (cherry picked from commit e9b3f2e6e93426d631d4f8101fb431a523b0d88a)
277 commit 0182973b66d449552d17248e27cd12c470137ea9
278 Author: Sage Weil <sage@inktank.com>
279 Date: Fri Mar 29 13:59:04 2013 -0700
281 ceph-disk: handle missing journal_uuid field gracefully
283 Only lower if we know it's not None.
285 Signed-off-by: Sage Weil <sage@inktank.com>
286 (cherry picked from commit 562e1716bd4b5372716e502a5e4dd872d381bfb7)
288 commit 24d729c591430349b033992f87141e596dcd6bff
289 Author: Sage Weil <sage@inktank.com>
290 Date: Thu Mar 28 20:49:24 2013 -0700
292 ceph-disk: implement 'list'
294 This is based on Sandon's initial patch, but much-modified.
296 Mounts ceph data volumes temporarily to see what is inside. Attempts to
297 associated journals with osds.
300 Signed-off-by: Sage Weil <sage@inktank.com>
301 Reviewed-by: Dan Mick <dan.mick@inktank.com>
302 (cherry picked from commit 6a65b9131c444041d16b880c6a7f332776063a78)
304 commit bf3f8702c580c6b9647878837355688a2a4f954c
305 Author: Sage Weil <sage@inktank.com>
306 Date: Wed Mar 27 18:44:32 2013 -0700
308 ceph-disk: reimplement list_all_partitions
310 Use /dev/disk/by-id to list disks and their partitions. This is more
311 accurate and correct than the previous (as-yet unused) implementation.
313 Signed-off-by: Sage Weil <sage@inktank.com>
314 (cherry picked from commit d3e49047ff405573aa41f45864cf315be23f5c50)
316 commit 9da81e4e798b8e5593f3a7eda6dfa8586307121f
317 Author: Sage Weil <sage@inktank.com>
318 Date: Wed Mar 27 18:43:59 2013 -0700
320 ceph-disk: reimplement is_partition
322 Previously we were assuming any device that ended in a digit was a
323 partition, but this is not at all correct (e.g., /dev/sr0, /dev/rbd1).
324 Instead, look in /dev/disk/by-id and see if there is a symlink that ends in
325 -partNN that links to our device.
327 There is probably still a better way...
329 Signed-off-by: Sage Weil <sage@inktank.com>
330 (cherry picked from commit 20d594a889d62110ad03b761d8703f79f8eea6ad)
332 commit 0c8efc0664f068a1952fe54b8034d005cf3f9ce8
333 Author: Sage Weil <sage@inktank.com>
334 Date: Wed Mar 27 12:45:29 2013 -0700
336 ceph-disk: conditionally remove mount path
338 umount removes it on success; only remove it here if it is still there.
340 Signed-off-by: Sage Weil <sage@inktank.com>
341 (cherry picked from commit 4362934a94c5a6f7521f06aa1255e111094e1d88)
343 commit 153994cdcf9bc4a9719849d951bec5f4983340b5
344 Author: Sage Weil <sage@inktank.com>
345 Date: Tue Mar 26 17:04:14 2013 -0700
347 ceph-disk: ignore udevadm settle return code
349 If we time out, just continue and let the next step fail.
351 Signed-off-by: Sage Weil <sage@inktank.com>
352 (cherry picked from commit 2ae297ccb812c00204ec0c4dc614821c506062b9)
354 commit d714049d530dc9611cf5f2fcb9b272c355dbe9f1
355 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
356 Date: Mon Mar 25 17:45:32 2013 +0100
358 ceph-disk: rename some local variabels in list_*partitions
360 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
361 (cherry picked from commit b7d7e6894c550a7afa8dfb5bfa2bc54b5d331178)
363 commit ecb34b81b843adaf9455503eb3ecc69ea94652a3
364 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
365 Date: Mon Mar 25 16:24:00 2013 +0100
367 ceph-disk: fix naming of a local variable in find_cluster_by_uuid
369 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
370 (cherry picked from commit 0b5fcfffe6d2f69bd4318cc93ef73195d948b9c5)
372 commit 63eb85072f6a61552725bd04dfb261e5cd52a60a
373 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
374 Date: Mon Mar 25 16:18:17 2013 +0100
376 ceph-disk: rename some constants to upper case variable names
378 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
379 (cherry picked from commit 8a999ded088e688fd3f4a7c27127b7c06f0b2f66)
381 commit d26a03422a37f16d609de12f8973f3c32ffedae0
382 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
383 Date: Mon Mar 25 16:15:29 2013 +0100
385 ceph-disk: add some more docstrings
387 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
388 (cherry picked from commit 86e55f5448c4b5b46b74d2d89b01d1e64b1ea826)
390 commit bd8bb984806a1dbc3514c3a2a8980a03cfb2bc23
391 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
392 Date: Mon Mar 25 14:36:41 2013 +0100
394 ceph-disk: print subprocess.CalledProcessError on error
396 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
397 (cherry picked from commit 543327b1f2a9efe8083bb196433c4bcf83883269)
399 commit 970348fc46a7e100731ffdc63d20f343dcb1b787
400 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
401 Date: Mon Mar 25 13:55:56 2013 +0100
403 ceph-disk: fix indention
405 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
406 (cherry picked from commit 2d26bcc07162a5176cdbc1748b829e3f39653697)
408 commit 0113e5335e1552294bbf075cfff85c204b164e95
409 Author: Gary Lowell <glowell@inktank.com>
410 Date: Tue Mar 26 11:31:16 2013 -0700
412 ceph-disk: udevadm settle before partprobe
414 After changing the partition table, allow the udev event to be
415 processed before calling partprobe. This helps prevent partprobe
416 from getting a resource busy error on some platforms.
418 Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
419 (cherry picked from commit 9eda8e5d5abf0743a2ad484806cfb2018243515f)
421 commit 02d48351f73330917185d8980f8ad123b99138b5
422 Author: Sage Weil <sage@inktank.com>
423 Date: Fri Mar 22 10:09:55 2013 -0700
425 ceph-disk: re-add python 2.7 dependency comment
429 Signed-off-by: Sage Weil <sage@inktank.com>
430 (cherry picked from commit 6d63752c8fde91cdab306d1ca689690b269fe977)
432 commit e92baf5081a43ff3290eb934612a11fbed946469
433 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
434 Date: Wed Mar 20 14:36:58 2013 +0100
436 ceph-disk: cast output of subprocess.Popen() to str()
438 Cast output of subprocess.Popen() to str() to be able to use
439 str.split() and str.splitlines() without warnings from pylint.
441 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
442 (cherry picked from commit 87691dc46edfba11c370592dbb533772190be4b2)
444 commit 1ffc89af1954643426708987a09291463bd7525b
445 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
446 Date: Wed Mar 20 14:02:28 2013 +0100
448 ceph-disk: fix adjust_symlink() replace 'journal' with 'target'
450 Replace 'journal' variable with 'target' since journal doesn't
451 exist in this function.
453 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
454 (cherry picked from commit 3575feb7d2e5f4e35c5df193a1f8c9f08f88fcf4)
456 commit 690ab6b3e284e9beed74b3e77612e804464e467d
457 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
458 Date: Wed Mar 20 14:01:02 2013 +0100
460 ceph-disk: fix adjust_symlink() replace 'canonical' with 'path'
462 Replace 'canonical' variable with 'path' since canonical doesn't
463 exist in this function.
465 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
466 (cherry picked from commit a27cb85b21610b4a9f8eb24f8f6cd04902349728)
468 commit 329f279cd108c837e434ee3aae6c8ad502ba802f
469 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
470 Date: Wed Mar 20 13:56:23 2013 +0100
472 ceph-disk: there is no os.path.lstat use os.lstat
474 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
475 (cherry picked from commit 6d3247b5c02c39a66666a5833106dbc23044e436)
477 commit ffe024b8b5024cdac256bacb9df433b69385cc0a
478 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
479 Date: Wed Mar 20 13:30:21 2013 +0100
481 ceph-disk: remove unused variable key from prepare_journal_dev()
483 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
484 (cherry picked from commit 97b4f8d66bef2328fa53f9e508eb38f8b8d49632)
486 commit 9464284f3ac9737345c595847e165db48adc0a70
487 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
488 Date: Wed Mar 20 13:27:27 2013 +0100
490 ceph-disk: fix except to catch OSError
492 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
493 (cherry picked from commit 9daf6cfce2d57509d896eae28bb97146a682a306)
495 commit 01152115f7bf4a307296c9126174ce09bb0ce22d
496 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
497 Date: Wed Mar 20 13:15:36 2013 +0100
499 ceph-disk: add missing space after >> operator
501 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
502 (cherry picked from commit 0ada43f79d2b1f9f84367e558c6d1a3e90e5c9b2)
504 commit b9f86d96f5dd6ca18eb39882caf69e76369b5e0b
505 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
506 Date: Wed Mar 20 12:33:09 2013 +0100
508 fix: Redefining name 'uuid' from outer scope (line 14)
510 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
511 (cherry picked from commit d3c60dc8cad1db1d5df1c740bc805aaf9ba606ba)
513 commit 6fa6cd85b55935739e16b8ba537f7848dbb0218f
514 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
515 Date: Wed Mar 20 12:17:45 2013 +0100
517 ceph-disk: remove unused variables from list_partitions()
519 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
520 (cherry picked from commit 6a8120d4b0c4cfa851d473532eb2366534f8653d)
522 commit 0b4e85fe23e8aa24e8aef8548df2b508bda24752
523 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
524 Date: Wed Mar 20 12:10:22 2013 +0100
526 ceph-disk: fix /dev/dm-[0-9] handling list_all_partitions()
528 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
529 (cherry picked from commit 3af7a1ac5bf24bf832d7180002281d6b5853e85a)
531 commit 3ec61f85f6a8a8af8a2b921f94e77a77be77a1d7
532 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
533 Date: Tue Mar 19 22:07:36 2013 +0100
535 ceph-disk: rename local variable shadowing builtin
537 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
538 (cherry picked from commit 9bcf5b64f45ab6c4bdedf820ed111319b2dbd778)
540 commit bd1036dd83fa2ee4807047fb9c2b414ccc9375eb
541 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
542 Date: Tue Mar 19 22:05:23 2013 +0100
544 ceph-disk: remove twice defined identical function unmount
546 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
547 (cherry picked from commit 4adf088107586be7b356d1e963570cdab232809e)
549 commit 8dd8cbac6f88fcb9d2c6838b9f961c70cccb9288
550 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
551 Date: Tue Mar 19 22:02:49 2013 +0100
553 ceph-disk: remove twice defined function mount
555 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
556 (cherry picked from commit ea26ea0d81a23aa76076ad5441c3b1aadfba3b44)
558 commit 0da87db1c0e4b44b69c19b718d89e7a621979009
559 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
560 Date: Tue Mar 19 21:58:22 2013 +0100
562 ceph-disk: remove double defined function get_conf
564 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
565 (cherry picked from commit c57daa3c6e03e8974e133d3a2d9bc3d6f06f4faf)
567 commit 9c46dfb2512d3b55345faed1bebb9204ba07d030
568 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
569 Date: Tue Mar 19 21:51:54 2013 +0100
571 ceph-disk: rename local variable shadowing builtin
573 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
574 (cherry picked from commit 57dde5c8b18ff4ccd53a30bb94119c0ffceb52b7)
576 commit b807d8ba0a0c23c7dab6893bc5297e07c0fd902f
577 Author: Sage Weil <sage@inktank.com>
578 Date: Mon Mar 18 14:55:24 2013 -0700
580 ceph-disk: install and package
582 Signed-off-by: Sage Weil <sage@inktank.com>
583 (cherry picked from commit c2602d749023b24ac22d8cfce6e04889078f14d8)
589 commit 8901e02db05837b12d5e1d0ec6f14f909cc03315
590 Author: Sage Weil <sage@inktank.com>
591 Date: Fri Mar 15 16:50:05 2013 -0700
593 ceph-disk: simplify command dispatch
595 Signed-off-by: Sage Weil <sage@inktank.com>
596 (cherry picked from commit f287c6f90af0dfdd41358846b069aa3c54b600b3)
598 commit 3cbc0d0c92ad19d5022c94d9d1ac00aff4eb9b2d
599 Author: Sage Weil <sage@inktank.com>
600 Date: Fri Mar 15 16:40:32 2013 -0700
602 ceph-disk: consolidate exceptions
604 Use a single exception type, and catch it at the top level.
606 Signed-off-by: Sage Weil <sage@inktank.com>
607 (cherry picked from commit a019753bd3897ee0f5d9c3563c653c5457d5e67d)
609 commit b4176bafa2b0721664332a1bb8b73da54151f685
610 Author: Sage Weil <sage@inktank.com>
611 Date: Fri Mar 15 16:36:45 2013 -0700
613 ceph-disk: consolidate ceph-disk-* into a single binary
615 ceph-disk prepare ...
616 ceph-disk activate ...
619 This let's us share code (we were already duplicating a bunch of stuff!)
620 and to add new commands easily.
622 Signed-off-by: Sage Weil <sage@inktank.com>
623 (cherry picked from commit 20e4ba5cebb7b4989d1745932f7a412c28504ee1)
625 commit 455cb32543df8036a605dc7b6c194e58b10bc4ec
626 Author: Sage Weil <sage@inktank.com>
627 Date: Mon Mar 18 21:13:34 2013 -0700
629 ceph-disk-prepare: 'mkfs -t' instead of 'mkfs --type='
631 Older mkfs (el6) doesn't like --type=.
634 Reported-by: Alexandre Maragone <alexandre.maragone@inktank.com>
635 Signed-off-by: Sage Weil <sage@inktank.com>
636 (cherry picked from commit d47759429a6e2fdd392265e90b67046302c97644)
638 commit 19a2cf58504a3305ac9afe3d6642cf68e1b0f6c1
639 Author: Sage Weil <sage@inktank.com>
640 Date: Thu Mar 14 21:05:07 2013 -0700
642 ceph-disk-activate: identify cluster .conf by fsid
644 Determine what cluster the disk belongs to by checking the fsid defined
645 in /etc/ceph/*.conf. Previously we hard-coded 'ceph'.
647 Note that this has the nice side-effect that if we have a disk with a
648 bad/different fsid, we now fail to activate it. Previously, we would
649 mount and start ceph-osd, but the daemon would fail to authenticate
650 because it was part of the wrong cluster.
653 Signed-off-by: Sage Weil <sage@inktank.com>
654 (cherry picked from commit 80af5fb887f30792c342ac16da9ed95d7e89e491)
656 commit 568485bea8ae9f0f36571de259c7254fa4227b15
657 Author: Sage Weil <sage@inktank.com>
658 Date: Thu Mar 14 16:18:26 2013 -0700
660 ceph-disk-activate: abort if target position is already mounted
662 If the target position is already a mount point, fail to move our mount
663 over to it. This usually indicates that a different osd.N from a
664 different cluster instances is in that position.
666 Signed-off-by: Sage Weil <sage@inktank.com>
667 (cherry picked from commit 7370b5564606474f11b9ac5afb7cc60e0ac36ed1)
669 commit a6ecf9288af248656bc712c1a4de910ff107a9a2
670 Author: Sage Weil <sage@inktank.com>
671 Date: Thu Mar 14 12:05:52 2013 -0700
673 Revert "ceph-disk-activate: rely on default/configured keyring path"
675 This reverts commit 936b8f20af1d390976097c427b6e92da4b39b218.
677 This is necessary because we mount the osd in a temporary location.
679 Signed-off-by: Sage Weil <sage@inktank.com>
680 (cherry picked from commit b6102c0945a0d68b7c5ff7f2254a1a994788ca0f)
682 commit 7c1edc0c927a27c07b6f1611c2cf9c48f2dc95f6
683 Author: Sage Weil <sage@inktank.com>
684 Date: Thu Mar 14 12:04:44 2013 -0700
686 Revert "ceph-disk-activate: don't override default or configured osd journal path"
688 This reverts commit 813e9fe2b4291a1c1922ef78f031daa9b78fe53b.
690 We run --mkfs with the osd disk mounted in a temporary location, so it is
691 necessary to explicitly pass in these paths.
693 If we want to support journals in a different location, we need to make
694 ceph-disk-prepare update the journal symlink accordingly.. not control it via
697 Signed-off-by: Sage Weil <sage@inktank.com>
698 (cherry picked from commit 3e628eee770508e750f64ea50179bbce52e7b8e0)
700 commit 739b013cfa4b84d36750b80ce44579498e7ea4f4
701 Author: Sage Weil <sage@inktank.com>
702 Date: Mon Mar 11 21:15:11 2013 -0700
704 ceph-disk-activate: rely on default/configured keyring path
706 No reason to override the default or configured value here.
708 Signed-off-by: Sage Weil <sage@inktank.com>
709 (cherry picked from commit 936b8f20af1d390976097c427b6e92da4b39b218)
711 commit 897413f90c0e802c6824c0ee8d06bdae33979293
712 Author: Sage Weil <sage@inktank.com>
713 Date: Mon Mar 11 21:14:53 2013 -0700
715 ceph-disk-activate: don't override default or configured osd journal path
717 There is no reason not to rely on the default or obey any configured
721 Signed-off-by: Sage Weil <sage@inktank.com>
722 (cherry picked from commit 813e9fe2b4291a1c1922ef78f031daa9b78fe53b)
724 commit 35eac085182e569b17c287c86e1415880909be22
725 Author: Sage Weil <sage@inktank.com>
726 Date: Tue Mar 5 13:08:26 2013 -0800
728 ceph-disk-prepare: move in-use checks to the top, before zap
730 Move the in-use checks to the very top, before we (say) zap!
732 Signed-off-by: Sage Weil <sage@inktank.com>
733 (cherry picked from commit 32407c994f309cd788bf13fe9af27e17a422309a)
735 commit 5ad4120a4825d6615778a005cff990afccf30691
736 Author: Sage Weil <sage@inktank.com>
737 Date: Mon Mar 4 20:57:52 2013 -0800
739 ceph-disk-prepare: verify device is not in use by device-mapper
741 Be nice and tell the user which devices/mappings are consuming the device,
744 Signed-off-by: Sage Weil <sage@inktank.com>
745 (cherry picked from commit a6196de9e2f3ca9d67691f79d44e9a9f669443e9)
747 commit e4a520029196cc76f1ec45695554ca6330bf14aa
748 Author: Sage Weil <sage@inktank.com>
749 Date: Mon Mar 4 16:38:57 2013 -0800
751 ceph-disk-prepare: verify device is not mounted before using
753 Make sure the data and/or journal device(s) are not in use (mounted)
754 before using them. Make room for additional "in-use" checks in the future.
757 Signed-off-by: Sage Weil <sage@inktank.com>
758 (cherry picked from commit 3bd0ac0ab011c4cdf0121f0d9732938d085fb8bf)
760 commit d05b439142a24d28f35c6a09a8ab7c9eed503cd5
761 Author: Sage Weil <sage@inktank.com>
762 Date: Mon Mar 4 16:29:57 2013 -0800
764 ceph-disk-prepare: clean up stupid check for a digit
766 Signed-off-by: Sage Weil <sage@inktank.com>
767 (cherry picked from commit f03f62697f170d42b4b62c53d2860ff2f24a2d73)
769 commit ea07b0e1047a4ac1b4dde88c795709190bd048be
770 Author: Sage Weil <sage@inktank.com>
771 Date: Mon Mar 4 16:08:15 2013 -0800
773 ceph-disk-prepare: use os.path.realpath()
775 My janky symlink resolution is broken in various ways.
777 Signed-off-by: Sage Weil <sage@inktank.com>
778 (cherry picked from commit 59505546e52a175435881b431bd349d532ae627e)
780 commit 8f7e3e7dbbb9cab869366927c1687c38c012a1ef
781 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
782 Date: Thu Feb 28 14:16:26 2013 +0100
784 ceph.spec.in: add new Requires from ceph-disk-prepare
786 Added new Requires from ceph-disk-prepare: cryptsetup, gptfdisk,
787 parted and util-linux.
789 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
790 (cherry picked from commit 5c3f5c5b69a9edc99138d4f1ddb016689303dc28)
796 commit 3441acf3749dbd99f1e00e5306e8180647085d2a
797 Author: Sage Weil <sage@inktank.com>
798 Date: Wed Feb 27 13:31:12 2013 -0800
800 debian: require cryptsetup-bin
802 This is needed for ceph-disk-prepare's dmcrypt support.
804 Signed-off-by: Sage Weil <sage@inktank.com>
805 (cherry picked from commit cfcaceac44d6b7b7c55e81d0bfb05f4893f3b1d0)
811 commit abdac6fddd25bc71f59c1097246cfa32b33b0f5f
812 Author: Alexandre Marangone <alexandre.marangone@inktank.com>
813 Date: Mon Apr 15 15:57:00 2013 -0700
815 Fix: use absolute path with udev
817 Avoids the following: udevd[61613]: failed to execute '/lib/udev/bash'
818 'bash -c 'while [ ! -e /dev/mapper/....
820 Signed-off-by: Alexandre Marangone <alexandre.marangone@inktank.com>
821 (cherry picked from commit 785b25f53dc7f8035eeba2aae8a196e3b102d930)
823 commit d1775daf68d9aa887116a357cbcaf7c44e091cce
824 Author: Sage Weil <sage@inktank.com>
825 Date: Sat Feb 16 20:55:03 2013 -0800
827 ceph-disk-prepare: -f for mkfs.xfs only
829 Signed-off-by: Sage Weil <sage@inktank.com>
830 (cherry picked from commit fecc3c3abf1176f4c7938e161559ea2db59f1cff)
832 commit 405e0ea1c692b1d62f948734e07c4f919b90d4e0
833 Author: Sage Weil <sage@inktank.com>
834 Date: Sat Feb 16 16:49:50 2013 -0800
836 debian: fix start of ceph-all
838 Tolerate failure, and do ceph-all, not ceph-osd-all.
840 Signed-off-by: Sage Weil <sage@inktank.com>
841 (cherry picked from commit aff0bb6fdc8ca358f7ac1e941bb9cfecbefb4bb6)
843 commit 632be442261cabd56da0dc897b8a47a8e5493dce
844 Author: Alexandre Marangone <alexandre.marangone@inktank.com>
845 Date: Fri Feb 15 12:24:01 2013 -0800
847 ceph-disk-prepare: always force mkfs.xfs
849 Signed-off-by: Alexandre Marangone <alexandre.marangone@inktank.com>
850 (cherry picked from commit d950d83250db3a179c4b629fd32cd7bc8149997e)
852 commit 28d1193836edee622763e308aad69c7bfe7a4971
853 Author: Sage Weil <sage@inktank.com>
854 Date: Wed Feb 13 18:22:45 2013 -0800
856 udev: trigger on dmcrypted osd partitions
858 Automatically map encrypted journal partitions.
860 For encrypted OSD partitions, map them, wait for the mapped device to
861 appear, and then ceph-disk-activate.
863 This is much simpler than doing the work in ceph-disk-activate.
865 Signed-off-by: Sage Weil <sage@inktank.com>
866 (cherry picked from commit e090a92a20f4161f473d16bc966f7d6aacac75ee)
868 commit 5c5021b43ab70a08d791020262f76879dc77effb
869 Author: Sage Weil <sage@inktank.com>
870 Date: Tue Feb 12 21:35:56 2013 -0800
872 ceph-disk-prepare: add initial support for dm-crypt
874 Keep keys in /etc/ceph/dmcrypt-keys.
876 Identify partition instances by the partition UUID. Identify encrypted
877 partitions by a parallel set of type UUIDs.
879 Signed-off-by: Alexandre Marangone <alexandre.maragone@inktank.com>
880 Signed-off-by: Sage Weil <sage@inktank.com>
881 (cherry picked from commit c6ac0ddf91915ba2aeae46d21367f017e18e82cd)
883 commit d7084037d7a2395acfe8181f94963c1337c0f95b
884 Author: Alexandre Marangone <alexandre.marangone@inktank.com>
885 Date: Fri Feb 15 12:22:33 2013 -0800
887 ceph-disk-activate: pull mount options from ceph.conf
889 Signed-off-by: Alexandre Marangone <alexandre.marangone@inktank.com>
890 (cherry picked from commit e7040f55f01db3de7d5cebfc79de50c8b6ad5d45)
892 commit 34fba357ca8b662c7b943d426ed37875c173003f
893 Author: Sage Weil <sage@inktank.com>
894 Date: Thu Feb 14 17:05:32 2013 -0800
896 ceph-disk-activate: use full paths for everything
898 We are run from udev, which doesn't get a decent PATH.
900 Signed-off-by: Sage Weil <sage@inktank.com>
901 (cherry picked from commit b1c0fccba42dd184a2891ee873c0d6d8f8c79d14)
903 commit caad18745cd8553a012d9e7f92e59d5b4450dcf2
904 Author: Sage Weil <sage@inktank.com>
905 Date: Thu Feb 14 17:04:55 2013 -0800
907 ceph-disk-prepare: do partprobe after setting final partition type
909 This is necessary to kick udev into processing the updated partition and
912 Signed-off-by: Sage Weil <sage@inktank.com>
913 (cherry picked from commit 95835de9f80712eb26652ac6b66ba9c5eeb093d6)
915 commit e1624e4626b4e67909f3bb83920c99ad323ed083
916 Author: Sage Weil <sage@inktank.com>
917 Date: Wed Feb 13 21:47:30 2013 -0800
919 debian: start/stop ceph-all event on install/uninstall
921 This helps us avoid the confusing situation with upstart where an individual
922 daemon job is running (like ceph-osd id=2) but the container jobs ceph-osd-all
923 and ceph-all are not.
925 Signed-off-by: Sage Weil <sage@inktank.com>
926 (cherry picked from commit b7b9af5c0d531dcee7ce9b10043a29b0a1b31f47)
928 commit 656305f65eb33d68b95f4d29f37b031cf6cf889a
929 Author: Sage Weil <sage@inktank.com>
930 Date: Wed Feb 13 21:37:08 2013 -0800
932 ceph-disk-activate: catch daemon start errors
934 Signed-off-by: Sage Weil <sage@inktank.com>
935 (cherry picked from commit 690ae05309db118fb3fe390a48df33355fd068a0)
937 commit 8b771bf929c4a9ab3fd4eb6f40b9222a463fd1a4
938 Author: Sage Weil <sage@inktank.com>
939 Date: Wed Feb 13 17:30:19 2013 -0800
941 udev: trigger ceph-disk-activate directly from udev
943 There is no need to depend on upstart for this.
945 Signed-off-by: Sage Weil <sage@inktank.com>
946 (cherry picked from commit 5bd85ee5aa31bfd1f4f0e434f08c2a19414358ef)
952 commit ffb0613efaa9cf919992640322785eedf95ca25f
953 Author: Sage Weil <sage@inktank.com>
954 Date: Wed Feb 13 16:02:10 2013 -0800
956 ceph-disk-activate: auto detect init system
958 Look for an option 'init' in ceph.conf. Otherwise, check if we're ubuntu.
959 If so, use upstart. Otherwise, use sysvinit.
961 Signed-off-by: Sage Weil <sage@inktank.com>
962 (cherry picked from commit d1904b2a848af3c02d2065ac2a42abe0e2699d0f)
964 commit 74b562703c422890c67b2a88d7b18242f64949dc
965 Author: Sage Weil <sage@inktank.com>
966 Date: Wed Feb 13 15:49:42 2013 -0800
968 ceph-disk-activate: specify full path for blkid, initctl, service
970 /sbin apparently isn't in the path when udev runs us.
972 Signed-off-by: Sage Weil <sage@inktank.com>
973 (cherry picked from commit f06b45e66315310abb0720e021da377186455048)
975 commit 9ea32e5f066bee75923212d8009fb37a365ef32e
976 Author: Sage Weil <sage@inktank.com>
977 Date: Sat Jan 26 19:18:23 2013 -0800
979 upstart: ceph-hotplug -> ceph-osd-activate
981 This is a more meaningful name.
983 Signed-off-by: Sage Weil <sage@inktank.com>
984 (cherry picked from commit e011ad128e7f302cb6955d9a7171ac0ec8890ddf)
986 commit 494533a55010a59a52f6dcbe64f76e677a7dfe8e
987 Author: Sage Weil <sage@inktank.com>
988 Date: Sat Jan 26 19:14:22 2013 -0800
990 upstart/ceph-hotplug: tell activate to start via upstart
992 This will mark the OSD data dir as upstart-managed.
994 Signed-off-by: Sage Weil <sage@inktank.com>
995 (cherry picked from commit 792e45c63dd7a9622fddd6e15ee4c075f995ea56)
997 commit 5e0892fd8cbc2571d94cffc0b64daaa4ec6c38f8
998 Author: Sage Weil <sage@inktank.com>
999 Date: Sat Jan 26 19:08:22 2013 -0800
1001 ceph-disk-prepare: refactor to support DIR, DISK, or PARTITION for data or journal
1003 Lots of code reorganization collapsed into a single commit here.
1005 - detect whether the user gave us a directory, disk, or partition, and Do The
1007 - allow them to force that the input was of type X, for the careful/paranoid.
1008 - make --zap-disk an option -- no longer the default
1010 Signed-off-by: Sage Weil <sage@inktank.com>
1011 (cherry picked from commit b2ff6e8c9d96dee2c063b126de7030a5c2ae0d02)
1013 commit aa428017e4aad9872a54cd87036ef2bb528aac7b
1014 Author: Sage Weil <sage@inktank.com>
1015 Date: Sat Jan 26 20:33:16 2013 -0800
1017 ceph-disk-activate: detect whether PATH is mount or dir
1019 remove in-the-way symlinks in /var/lib/ceph/osd
1021 This is simpler. Just detect what the path is and Do The Right Thing.
1023 Closes #3341 (which wanted to make --mount the default)
1025 Signed-off-by: Sage Weil <sage@inktank.com>
1026 (cherry picked from commit 191d5f7535f8d96d493e1b35b43a421c67c168ea)
1028 commit e6d5aa053dbaaf07c94e35406c23f4ca009fe2da
1029 Author: Sage Weil <sage@inktank.com>
1030 Date: Sat Jan 26 20:32:47 2013 -0800
1032 ceph-disk-activate: add --mark-init INITSYSTEM option
1034 Do not assume we will manage via upstart; let that be passed down via the
1037 Signed-off-by: Sage Weil <sage@inktank.com>
1038 (cherry picked from commit fd4a921085a861e4aa428376219bb39055731f2b)
1040 commit fa23919eae363291b4807afe3fadd34f94e9ddcb
1041 Author: Sage Weil <sage@inktank.com>
1042 Date: Sat Jan 26 14:44:26 2013 -0800
1044 ceph-disk-activate: factor mounting out of activate
1046 The activate stuff is generic for any OSD, regardless of whether we want
1047 to mount it or not. Pull that part out.
1049 Signed-off-by: Sage Weil <sage@inktank.com>
1050 (cherry picked from commit 07655288281c9c6f691f87352dc26b7c11ae07e8)
1052 commit 181ebdee0addfe3d13c13342def94ecf9415d6d5
1053 Author: Sage Weil <sage@inktank.com>
1054 Date: Tue Feb 12 18:17:55 2013 -0800
1056 debian: put ceph-mds upstart conf in ceph-mds package
1059 Signed-off-by: Sage Weil <sage@inktank.com>
1060 (cherry picked from commit 23ad3a46a0099e263f43e0f0c1df1d21cfe58b3f)
1062 commit 919b0aedf7286e85e6ddc23f99f80f29e1d35db6
1063 Author: Sage Weil <sage@inktank.com>
1064 Date: Tue Feb 12 17:02:52 2013 -0800
1066 debian: include /var/lib/ceph/bootstrap-mds in package
1068 Signed-off-by: Sage Weil <sage@inktank.com>
1069 (cherry picked from commit e80675a0f333c04452d4822fd0eb3c6e92eda3df)
1071 commit f97f49b1e7ca8555c945b93fbc8241f5fa620dd8
1072 Author: Sage Weil <sage@inktank.com>
1073 Date: Tue Feb 12 16:26:14 2013 -0800
1075 ceph-create-keys: create mds bootstrap key
1077 Signed-off-by: Sage Weil <sage@inktank.com>
1078 (cherry picked from commit 809143f16c70483ba5bb429dea812d31b67f2b49)
1080 commit f43c339d67b78e6afc3737d26cea4bc05dcea900
1081 Author: Sage Weil <sage@inktank.com>
1082 Date: Sat Jan 26 14:45:43 2013 -0800
1084 upstart/ceph-hotplug: drop -- in ceph-disk-activate args
1086 We would like to transition to
1088 ceph-disk-activate --mount DEV
1090 and away from a generic multi-definition PATH argument.
1092 Signed-off-by: Sage Weil <sage@inktank.com>
1093 (cherry picked from commit 4698b6a1035dee8509ce2d4dab7b34a16b78f7cd)
1095 commit 39df4c81f2166b7e9ac89c591b268b60de4042e6
1096 Author: Sage Weil <sage@inktank.com>
1097 Date: Fri Jan 25 22:53:23 2013 -0800
1099 init-ceph: iterate/locate local sysvinit-tagged directories
1101 Search /var/lib/ceph/$type/ceph-$id and start/stop those daemons if
1102 present and tagged with the sysvinit file.
1104 Signed-off-by: Sage Weil <sage@inktank.com>
1105 (cherry picked from commit c8f528a4070dd3aa0b25c435c6234032aee39b21)
1107 commit 05efb7ab5b289472a1af05d6aa100a7385be304e
1108 Author: Sage Weil <sage@inktank.com>
1109 Date: Fri Jan 25 22:52:03 2013 -0800
1111 init-ceph: consider sysvinit-tagged dirs as local
1113 If there is a 'sysvinit' file in the daemon directory in the default
1114 location (/var/lib/ceph/$type/ceph-$id), consider it sysvinit-managed.
1116 Signed-off-by: Sage Weil <sage@inktank.com>
1117 (cherry picked from commit b8aa4769a62e0d88174678cbefd89d9ee2baceea)
1119 commit 8c4c53abf84d30ff4a605225a22575f56d946971
1120 Author: Sage Weil <sage@inktank.com>
1121 Date: Mon Feb 11 17:39:03 2013 -0800
1123 ceph-disk-prepare: align mkfs, mount config options with mkcephfs
1125 'osd mkfs ...', not 'osd fs mkfs ...'. Sigh. Support both.
1127 Signed-off-by: Sage Weil <sage@inktank.com>
1128 (cherry picked from commit af2372ca4a702da70275edd1b1357fcff51e6ae2)
1130 commit a8e7e9df61a7229d9e2b4b4dedc68b5c1bf15c38
1131 Author: Sage Weil <sage@inktank.com>
1132 Date: Tue Apr 23 10:00:38 2013 -0700
1134 init-ceph: fix (and simplify) pushing ceph.conf to remote unique name
1136 The old code would only do the push once per remote node (due to the
1137 list in $pushed_to) but would reset $unique on each attempt. This would
1138 break if a remote host was processed twice.
1140 Fix by just skipping the $pushed_to optimization entirely.
1143 Reported-by: Andreas Friedrich <andreas.friedrich@ts.fujitsu.com>
1144 Signed-off-by: Sage Weil <sage@inktank.com>
1145 (cherry picked from commit ccbc4dbc6edf09626459ca52a53a72682f541e86)
1147 commit 9374baccb8a71e1fe5ea2e614feac93e865dd027
1148 Merge: b6b4ebe aa37726
1149 Author: Josh Durgin <josh.durgin@inktank.com>
1150 Date: Tue Apr 23 12:04:45 2013 -0700
1152 Merge pull request #238 from ceph/wip-bobtail-rbd-backports-req-order
1154 Reviewed-by: Sage Weil <sage.weil@inktank.com>
1156 commit aa37726b8d43d08b495d55dc2aef93854e9539c5
1157 Author: Josh Durgin <josh.durgin@inktank.com>
1158 Date: Tue Apr 23 09:18:30 2013 -0700
1160 rbd: only set STRIPINGV2 feature when needed
1162 Only set the STRIPINGV2 feature if the striping parameters are non-default.
1163 Specifically, fix the case where the passed-in size and count are == 0.
1166 Signed-off-by: Sage Weil <sage@inktank.com>
1167 (cherry picked from commit 5926ffa576e9477324ca00eaec731a224195e7db)
1173 commit 0e2266dba912cde2c4a86ba7055c8bec3a5bc1a5
1174 Author: Josh Durgin <josh.durgin@inktank.com>
1175 Date: Wed Apr 10 14:16:56 2013 -0700
1177 LibrbdWriteback: complete writes strictly in order
1179 RADOS returns writes to the same object in the same order. The
1180 ObjectCacher relies on this assumption to make sure previous writes
1181 are complete and maintain consistency. Reads, however, may be
1182 reordered with respect to each other. When writing to an rbd clone,
1183 reads to the parent must be performed when the object does not exist
1184 in the child yet. These reads may be reordered, resulting in the
1185 original writes being reordered. This breaks the assmuptions of the
1186 ObjectCacher, causing an assert to fail.
1188 To fix this, keep a per-object queue of outstanding writes to an
1189 object in the LibrbdWriteback handler, and finish them in the order in
1190 which they were sent.
1193 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1194 (cherry picked from commit 06d05e5ed7e09fa873cc05021d16f21317a1f8ef)
1196 commit 7a11c2505a8b74babee90cca945c2a068a656ec1
1197 Author: Josh Durgin <josh.durgin@inktank.com>
1198 Date: Wed Apr 10 12:22:02 2013 -0700
1200 LibrbdWriteback: removed unused and undefined method
1202 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1203 (cherry picked from commit 909dfb7d183f54f7583a70c05550bec07856d4e4)
1205 commit 884438febaf12dc380d4a1a3c3c8d3cbefd32399
1206 Author: Josh Durgin <josh.durgin@inktank.com>
1207 Date: Wed Apr 10 12:06:36 2013 -0700
1209 LibrbdWriteback: use a tid_t for tids
1211 An int could be much smaller, leading to overflow and bad behavior.
1213 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1214 (cherry picked from commit 9d19961539b2d50d0c9edee1e3d5ac6912a37f24)
1216 commit 124f81cc5fa5a3ac9e7777ad49dd42d864fd7f68
1217 Author: Josh Durgin <josh.durgin@inktank.com>
1218 Date: Wed Apr 10 12:03:04 2013 -0700
1220 WritebackHandler: make read return nothing
1222 The tid returned by reads is ignored, and would make tracking writes
1223 internally more difficult by using the same id-space as them. Make read
1224 void and update all implementations.
1226 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1227 (cherry picked from commit 870f9cd421ca7b0094f9f89e13b1898a8302c494)
1229 commit 13ba07a0f3af479861c0e83e3e6441fef1bc8a99
1230 Author: Josh Durgin <josh.durgin@inktank.com>
1231 Date: Mon Apr 1 14:51:46 2013 -0700
1233 ObjectCacher: deduplicate final part of flush_set()
1235 Both versions of flush_set() did the same thing. Move it into a
1236 helper called from both.
1238 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1239 (cherry picked from commit f5b81d8d167d1aa7f82a5776bbb1f319063ab809)
1241 commit 7bc8df1f3e3b60b59672a082eba374729a6866b8
1242 Author: Josh Durgin <josh.durgin@inktank.com>
1243 Date: Wed Apr 10 11:35:46 2013 -0700
1245 test_stress_watch: remove bogus asserts
1247 There's no reason to check the duration of a watch. The notify will
1248 timeout after 30s on the OSD, but there's no guarantee the client will
1249 see that in any bounded time. This test is really meant as a stress
1250 test of the OSDs anyway, not of the clients, so just remove asserts
1251 about operation duration.
1254 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1255 Reviewed-by: Sam Just <sam.just@inktank.com>
1256 (cherry picked from commit 4b656730ffff21132f358c2b9a63504dfbf0998d)
1258 commit 4a1c27c0e6e2e70be2b58e01872e321352c8e484
1259 Author: Josh Durgin <josh.durgin@inktank.com>
1260 Date: Mon Apr 1 11:09:52 2013 -0700
1262 librados: don't use lockdep for AioCompletionImpl
1264 This is a quick workaround for the next branch. A more complete fix
1265 will be done for the master branch. This does not affect correctness,
1266 just what qa runs with lockdep enabled do.
1268 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1269 Reviewed-by: Sage Weil <sage.weil@inktank.com>
1270 (cherry picked from commit 267ce0d90b8f3afaaddfdc0556c9bafbf4628426)
1272 commit d36c5b5bd30a9d7e60403a09cedaea28bdc29e99
1273 Author: Josh Durgin <josh.durgin@inktank.com>
1274 Date: Fri Mar 29 12:46:27 2013 -0700
1276 librados: move snapc creation to caller for aio_operate
1278 The common case already has a snapshot context, so avoid duplicating
1279 it (copying a potentially large vector) in IoCtxImpl::aio_operate().
1281 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1282 (cherry picked from commit 4c4d5591bdb048cd9ffa25b529c6127356e7f9a7)
1284 commit 31a45e8e23ebf9815ce5a4e0c89ddbf384702aad
1285 Author: Josh Durgin <josh.durgin@inktank.com>
1286 Date: Thu Mar 21 16:04:10 2013 -0700
1288 librbd: add an async flush
1290 At this point it's a simple wrapper around the ObjectCacher or
1293 This is needed for QEMU so that its main thread can continue while a
1294 flush is occurring. Since this will be backported, don't update the
1295 librbd version yet, just add a #define that QEMU and others can use to
1296 detect the presence of aio_flush().
1299 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1300 (cherry picked from commit 302b93c478b3f4bc2c82bfb08329e3c98389dd97)
1302 commit f2e490cb5b1f322e637d787e788733ac4b2496f4
1303 Author: Josh Durgin <josh.durgin@inktank.com>
1304 Date: Wed Mar 27 15:42:10 2013 -0700
1306 librbd: use the same IoCtx for each request
1308 Before we were duplicating the IoCtx for each new request since they
1309 could have a different snapshot context or read from a different
1310 snapshot id. Since librados now supports setting these explicitly
1311 for a given request, do that instead.
1313 Since librados tracks outstanding requests on a per-IoCtx basis, this
1314 also fixes a bug that causes flush() without caching to ignore
1315 all the outstanding requests, since they were to separate,
1318 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1319 (cherry picked from commit 860493e7ff0d87d02069b243fc1c8326ce0721f9)
1321 commit cbb37fb5470f22949a4dbb747f428943cce4aca7
1322 Author: Josh Durgin <josh.durgin@inktank.com>
1323 Date: Wed Mar 27 15:37:27 2013 -0700
1325 librbd: add an is_complete() method to AioCompletions
1327 Mainly this is useful for testing, like flushing and checking that
1328 all pending writes are complete after the flush finishes.
1330 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1331 (cherry picked from commit 2ae32068dee22a0ca0698e230ead98f2eeeff3e6)
1333 commit f9bcffa2482220202e68d6bac70216d44ee5046b
1334 Author: Josh Durgin <josh.durgin@inktank.com>
1335 Date: Wed Mar 27 15:32:29 2013 -0700
1337 librados: add versions of a couple functions taking explicit snap args
1339 Usually the snapid to read from or the snapcontext to send with a write
1340 are determined implicitly by the IoCtx the operations are done on.
1342 This makes it difficult to have multiple ops in flight to the same
1343 IoCtx using different snapcontexts or reading from different snapshots,
1344 particularly when more than one operation may be needed past the initial
1347 Add versions of aio_read, aio_sparse_read, and aio_operate
1348 that don't depend on the snap id or snapcontext stored in the IoCtx,
1349 but get them from the caller. Specifying this information for each
1350 operation can be a more useful interface in general, but for now just
1351 add it for the methods used by librbd.
1353 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1354 (cherry picked from commit f06debef6c293750539501ec4e6103e5ae078392)
1356 commit fb95b800a4cc431a8bd98692fffbfc150f6f8d67
1357 Author: Josh Durgin <josh.durgin@inktank.com>
1358 Date: Wed Mar 27 14:48:31 2013 -0700
1360 librados: add async flush interface
1362 Sometimes you don't want flush to block, and can't modify
1363 already scheduled aio_writes. This will be useful for a
1364 librbd async flush interface.
1366 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1367 (cherry picked from commit 7cc0940f89070dadab5b9102b1e78362f762f402)
1371 src/include/rados/librados.h
1372 src/include/rados/librados.hpp
1374 commit 3a61d17b6729b73d0bf2df106f54dafb603af646
1375 Author: Josh Durgin <josh.durgin@inktank.com>
1376 Date: Thu Mar 28 10:34:37 2013 -0700
1378 ObjectCacher: remove unneeded var from flush_set()
1380 The gather will only have subs if there is something to flush. Remove
1381 the safe variable, which indicates the same thing, and convert the
1382 conditionals that used it to an else branch. Movinig gather.activate()
1383 inside the has_subs() check has no effect since activate() does
1384 nothing when there are no subs.
1386 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1387 (cherry picked from commit 553aaac8a19e2359acf6d9d2e1bb4ef0bdba7801)
1389 commit ee7bf281005cce671e467ca9b9eff0ba7eb9899e
1390 Author: Josh Durgin <josh.durgin@inktank.com>
1391 Date: Fri Mar 22 12:17:43 2013 -0700
1393 ObjectCacher: remove NULL checks in flush_set()
1395 Callers will always pass a callback, so assert this and remove the
1396 checks for it being NULL.
1398 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1399 (cherry picked from commit 41568b904de6d155e5ee87c68e9c31cbb69508e5)
1401 commit d86f9b1dd370563170ab875c6a7de511f05acbf7
1402 Author: Josh Durgin <josh.durgin@inktank.com>
1403 Date: Fri Mar 22 12:13:36 2013 -0700
1405 ObjectCacher: always complete flush_set() callback
1407 This removes the last remnants of
1408 b5e9995f59d363ba00d9cac413d9b754ee44e370. If there's nothing to flush,
1409 immediately call the callback instead of deleting it. Callers were
1410 assuming they were responsible for completing the callback whenever
1411 flush_set() returned true, and always called complete(0) in this
1412 case. Simplify the interface and just do this in flush_set(), so that
1413 it always calls the callback.
1415 Since C_GatherBuilder deletes its finisher if there are no subs,
1416 only set its finisher when subs are present. This way we can still
1417 call ->complete() for the callback.
1419 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1420 (cherry picked from commit 92db06c05dc2cad8ed31648cb08866781aee2855)
1424 src/client/Client.cc
1426 commit 00dfb3f06fb6c2581a3f71126adcde0126e5e207
1427 Author: Josh Durgin <josh.durgin@inktank.com>
1428 Date: Tue Jan 29 14:22:15 2013 -0800
1430 ObjectCacher: fix flush_set when no flushing is needed
1432 C_GatherBuilder takes ownership of the Context we pass it. Deleting it
1433 in flush_set after constructing the C_GatherBuilder results in a
1437 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1438 Reviewed-by: Sam Lang <sam.lang@inktank.com>
1439 (cherry picked from commit 3bc21143552b35698c9916c67494336de8964d2a)
1441 commit 0f2e5d36e4dcd073174715c310fa22a835ca1259
1442 Author: Sam Lang <sam.lang@inktank.com>
1443 Date: Fri Jan 18 14:59:12 2013 -0600
1445 objectcacher: Remove commit_set, use flush_set
1447 commit_set() and flush_set() are identical in functionality,
1448 so use flush_set everywhere and remove commit_set from
1451 Also fixes a bug in flush_set where the finisher context was
1452 getting freed twice if no objects needed to be flushed.
1454 Signed-off-by: Sam Lang <sam.lang@inktank.com>
1455 (cherry picked from commit 72147fd3a1da8ecbcb31ddf6b66a158d71933909)
1457 commit 3b0c565dceb41dcaf53965321ef420641bcb699b
1458 Author: Josh Durgin <josh.durgin@inktank.com>
1459 Date: Wed Mar 13 09:42:43 2013 -0700
1461 librbd: make aio_writes to the cache always non-blocking by default
1463 When the ObjectCacher's writex blocks, it affects the thread requesting
1464 the aio, which can cause starvation for other I/O when used by QEMU.
1466 Preserve the old behavior via a config option in case this has any
1467 bad side-effects, like too much memory usage under heavy write loads.
1470 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1471 (cherry picked from commit 03ac01fa6a94fa7a66ede057e9267e0a562c3cdb)
1473 commit e237dfc742bba76664861a8868c502946fe53548
1474 Author: Josh Durgin <josh.durgin@inktank.com>
1475 Date: Wed Mar 13 09:37:21 2013 -0700
1477 ObjectCacher: optionally make writex always non-blocking
1479 Add a callback argument to writex, and a finisher to run the
1480 callbacks. Move the check for dirty+tx > max_dirty into a helper that
1481 can be called from a wrapper around the callbacks from writex, or from
1482 the current place in _wait_for_write().
1484 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1485 (cherry picked from commit c21250406eced8e5c467f492a2148c57978634f4)
1487 commit 7bc1596b90d2d5853659cb3ffbe9653b633345f4
1488 Author: Josh Durgin <josh.durgin@inktank.com>
1489 Date: Wed Mar 27 17:30:42 2013 -0700
1491 librbd: flush cache when set_snap() is called
1493 If there are writes pending, they should be sent while the image
1494 is still writeable. If the image becomes read-only, flushing the
1495 cache will just mark everything dirty again due to -EROFS.
1499 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1500 (cherry picked from commit 613b7085bb48cde1e464b7a97c00b8751e0e917f)
1502 commit 9facdcac7bb8ab92f1ab486eaabee681e6b6519d
1503 Author: Josh Durgin <josh.durgin@inktank.com>
1504 Date: Fri Mar 15 17:28:13 2013 -0700
1506 librbd: optionally wait for a flush before enabling writeback
1508 Older guests may not send flushes properly (i.e. never), so if this is
1509 enabled, rbd_cache=true is safe for them transparently.
1511 Disable by default, since it will unnecessarily slow down newer guest
1512 boot, and prevent writeback caching for things that don't need to send
1513 flushes, like the command line tool.
1516 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1517 Reviewed-by: Sage Weil <sage@inktank.com>
1518 (cherry picked from commit 1597b3e3a1d776b56e05c57d7c3de396f4f2b5b2)
1520 commit 1c44b66fb371a5864860c067bb5f59374f43005d
1521 Author: Josh Durgin <josh.durgin@inktank.com>
1522 Date: Fri Mar 8 18:57:24 2013 -0800
1524 librbd: invalidate cache when flattening
1526 The cache stores which objects don't exist. Flatten bypasses the cache
1527 when doing its copyups, so when it is done the -ENOENT from the cache
1528 is treated as zeroes instead of 'need to read from parent'.
1530 Clients that have the image open need to forgot about the cached
1531 non-existent objects as well. Do this during ictx_refresh, while the
1532 parent_lock is held exclusively so no new reads from the parent can
1533 happen until the updated parent metadata is visible, so no new reads
1534 from the parent will occur.
1536 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1537 (cherry picked from commit 46e8fc00b2dc8eb17d8777b6ef5ad1cfcc389cea)
1539 commit d9ca1b00a4dacb4715a69a276a644d645d0d5bc1
1540 Author: Josh Durgin <josh.durgin@inktank.com>
1541 Date: Fri Mar 8 17:53:31 2013 -0800
1543 ObjectCacher: add a method to clear -ENOENT caching
1545 Clear the exists and complete flags for any objects that have exists
1546 set to false, and force any in-flight reads to retry if they get
1547 -ENOENT instead of generating zeros.
1549 This is useful for getting the cache into a consistent state for rbd
1550 after an image has been flattened, since many objects which previously
1551 did not exist and went up to the parent to retrieve data may now exist
1554 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1555 (cherry picked from commit f2a23dc0b092c5ac081893e8f28c6d4bcabd0c2e)
1557 commit 1e51be05b7909a676ae499ca84e4cce94bb50da4
1558 Author: Josh Durgin <josh.durgin@inktank.com>
1559 Date: Fri Mar 8 17:49:27 2013 -0800
1561 ObjectCacher: keep track of outstanding reads on an object
1563 Reads always use C_ReadFinish as a callback (and they are the only
1564 user of this callback). Keep an xlist of these for each object, so
1565 they can remove themselves as they finish. To prevent racing requests
1566 and with discard removing objects from the cache, clear the xlist in
1567 the object destructor, so if the Object is still valid the set_item
1568 will still be on the list.
1570 Make the ObjectCacher constructor take an Object* instead of the pool
1571 and object id, which are derived from the Object* anyway.
1573 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1574 (cherry picked from commit f6f876fe51e40570596c25ac84ba3689f72776c2)
1576 commit f2bcf241257500f5784b216b7a377ddec4669531
1577 Author: Josh Durgin <josh.durgin@inktank.com>
1578 Date: Mon Feb 25 16:09:26 2013 -0800
1580 test_rbd: move flatten tests back into TestClone
1582 They need the same setup, and it's easy enough to run specific
1583 subtests. Making them a separate subclass accidentally duplicated
1584 tests from TestClone.
1586 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1587 (cherry picked from commit 9c693d7e8312026f6d8d9586381b026ada35d808)
1589 commit cd989681823a2b8521c789f5d4fea5525ac53911
1590 Author: Josh Durgin <josh.durgin@inktank.com>
1591 Date: Tue Feb 26 13:20:08 2013 -0800
1593 librbd: fix rollback size
1595 The duplicate calls to get_image_size() and get_snap_size() replaced
1596 by 5806226cf0743bb44eaf7bc815897c6846d43233 uncovered this. The first
1597 call was using the currently set snap_id instead of the snapshot being
1600 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1601 (cherry picked from commit d6c126e2131fefab6df676f2b9d0addf78f7a488)
1603 commit 796066b7a8324b12a660d9b80b927e643db7529e
1604 Author: Josh Durgin <josh.durgin@inktank.com>
1605 Date: Mon Feb 25 12:05:16 2013 -0800
1607 Merge branch 'wip-4249' into wip-4249-master
1609 Make snap_rollback() only take a read lock on snap_lock, since
1610 it does not modify snapshot-related fields.
1612 src/librbd/internal.cc
1613 (cherry picked from commit db5fc2270f91aae220fc3c97b0c62e92e263527b)
1615 commit 34e9030e50fe15a320cbfbc9854c86deb3a9c57c
1616 Author: Josh Durgin <josh.durgin@inktank.com>
1617 Date: Thu Feb 21 11:26:45 2013 -0800
1619 librbd: make sure racing flattens don't crash
1621 The only way for a parent to disappear is a racing flatten completing,
1622 or possibly in the future the image being forcibly removed. In either
1623 case, continuing to flatten makes no sense, so stop early.
1625 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1626 (cherry picked from commit a1ae8562877d1b902918e866a1699214090c40bd)
1628 commit 6e6636d50840e97022c8e4a1072f42fee15050a9
1629 Author: Josh Durgin <josh.durgin@inktank.com>
1630 Date: Thu Feb 21 11:17:18 2013 -0800
1632 librbd: use rwlocks instead of mutexes for several fields
1634 Image metadata like snapshots, size, and parent is frequently read,
1635 but rarely updated. During flatten, we were depending on the parent
1636 lock to prevent the parent ImageCtx from disappearing out from under
1637 us while we read from it. The copy-up path also needed the parent lock
1638 to be able to read from the parent image, which lead to a deadlock.
1640 Convert parent_lock, snap_lock, and md_lock to RWLocks, and change
1641 their use to read instead of exclusive locks where appropriate. The
1642 main place exclusive locks are needed is in ictx_refresh, so this is
1643 pretty simple. This fixes the deadlock, since parent_lock is only
1644 needed for read access in both flatten and the copy-up operation.
1646 cache_lock and refresh_lock are only really used for exclusive access,
1647 so leave them as regular mutexes.
1649 One downside to this is that there's no way to assert is_locked()
1650 for RWLocks, so we'll have to be very careful about changing code
1654 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1655 (cherry picked from commit 995ff0e3eaa560b242da8c019a2e11e735e854f7)
1657 commit 9b292199ef63822462c67cb6cf1cca6a53cf9fd7
1658 Author: Josh Durgin <josh.durgin@inktank.com>
1659 Date: Thu Feb 21 11:15:41 2013 -0800
1661 common: add lockers for RWLocks
1663 This makes them easier to use, especially instead of existing mutexes.
1665 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1666 (cherry picked from commit e0f8e5a80d6d22bd4dee79a4996ea7265d11b0c1)
1668 commit d8ac6cbf883fce0f39d661a879ff2462479d5494
1669 Author: Josh Durgin <josh.durgin@inktank.com>
1670 Date: Thu Feb 21 23:22:59 2013 -0800
1672 objecter: initialize linger op snapid
1674 Since they are write ops now, it must be CEPH_NOSNAP or the OSD
1677 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1678 (cherry picked from commit 15bb9ba9fbb4185708399ed6deee070d888ef6d2)
1680 commit 9ea4dac1db46c20cd83c5af5d29d9ce7a5768380
1681 Author: Sage Weil <sage@inktank.com>
1682 Date: Thu Feb 21 15:44:19 2013 -0800
1684 objecter: separate out linger_read() and linger_mutate()
1686 A watch is a mutation, while a notify is a read. The mutations need to
1687 pass in a proper snap context to be fully correct.
1689 Also, make the WRITE flag implicit so the caller doesn't need to pass it
1692 Signed-off-by: Sage Weil <sage@inktank.com>
1693 (cherry picked from commit 6c08c7c1c6d354d090eb16df279d4b63ca7a355a)
1695 commit d9636faabfdb2c0a876f0afa092a2ab925cf8983
1696 Author: Sage Weil <sage@inktank.com>
1697 Date: Thu Feb 21 15:31:08 2013 -0800
1699 osd: make watch OSDOp print sanely
1701 Signed-off-by: Sage Weil <sage@inktank.com>
1702 (cherry picked from commit de4fa95f03b99a55b5713911c364d7e2a4588679)
1704 commit 959bfe9097a2cfa48e2ab21f11bd32c1349807aa
1705 Author: Sage Weil <sage@inktank.com>
1706 Date: Thu Feb 21 13:28:47 2013 -0800
1708 osdc/Objecter: unwatch is a mutation, not a read
1710 This was causing librados to unblock after the ACK on unwatch, which meant
1711 that librbd users raced and tried to delete the image before the unwatch
1712 change was committed..and got EBUSY. See #3958.
1714 The watch operation has a similar problem.
1716 Signed-off-by: Sage Weil <sage@inktank.com>
1717 (cherry picked from commit fea77682a6cf9c7571573bc9791c03373d1d976d)
1721 src/librados/IoCtxImpl.cc
1723 commit b6b4ebed559db8bf74da4f482201948b5abc9225
1724 Author: Sage Weil <sage@inktank.com>
1725 Date: Thu Feb 21 11:15:58 2013 -0800
1727 osd: an interval can't go readwrite if its acting is empty
1729 Let's not forget that min_size can be zero.
1732 Signed-off-by: Sage Weil <sage@inktank.com>
1733 (cherry picked from commit 4277265d99647c9fe950ba627e5d86234cfd70a9)
1735 commit 055d746c3bca0d7067b71ed1ff6d1c1cce42b5ed
1736 Author: Sage Weil <sage@inktank.com>
1737 Date: Tue Feb 19 08:29:53 2013 -0800
1739 mon: restrict pool size to 1..10
1742 Signed-off-by: Sage Weil <sage@inktank.com>
1743 (cherry picked from commit 30b8d653751acb4bc4be5ca611f154e19afe910a)
1745 commit c073bd25610ba556f3b30e6c583d1d74a10f09e2
1746 Author: Sage Weil <sage@inktank.com>
1747 Date: Fri Apr 19 13:05:43 2013 -0700
1749 init-ceph: do not stop start on first failure
1751 When starting we often loop over many daemon instances. Currently we stop
1752 on the first error and do not try to start other daemons.
1754 Instead, try them all, but return a failure if anything did not start.
1757 Signed-off-by: Sage Weil <sage@inktank.com>
1758 Reviewed-by: Gary Lowell <gary.lowell@inktank.com>
1759 (cherry picked from commit d395aa521e8a4b295ed2b08dd7cfb7d9f995fcf7)
1765 commit daa6ed2bfe790f83f986f51d0917d6268d3e9d78
1766 Merge: 1d0bf61 9fe57e2
1767 Author: Josh Durgin <josh.durgin@inktank.com>
1768 Date: Thu Apr 11 13:00:27 2013 -0700
1770 Merge pull request #210 from dalgaaf/wip-da-bobtail-pybind
1772 Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
1774 commit 9fe57e2bea89243a0080e667f90b7d4fb15ed883
1775 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
1776 Date: Fri Apr 5 15:55:34 2013 +0200
1778 rados.py: fix create_pool()
1780 Call rados_pool_create_with_all() only if auid and crush_rule
1781 are set properly. In case only crush_rule is set call
1782 rados_pool_create_with_crush_rule() on librados, not the other
1785 Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
1786 (cherry picked from commit 94a1f25e7230a700f06a2699c9c2b99ec1bf7144)
1788 commit 1d0bf61da98bec7318f44b95a49298e13b792b70
1789 Author: Dan Mick <dan.mick@inktank.com>
1790 Date: Mon Apr 8 13:52:32 2013 -0700
1792 mon: Use _daemon version of argparse functions
1794 Allow argparse functions to fail if no argument given by using
1795 special versions that avoid the default CLI behavior of "cerr/exit"
1798 Signed-off-by: Dan Mick <dan.mick@inktank.com>
1799 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
1800 (cherry picked from commit be801f6c506d9fbfb6c06afe94663abdb0037be5)
1805 commit 3769250acf42a751ee8dfa95207a4ffafd25574a
1806 Author: Dan Mick <dan.mick@inktank.com>
1807 Date: Mon Apr 8 13:49:22 2013 -0700
1809 ceph_argparse: add _daemon versions of argparse calls
1811 mon needs to call argparse for a couple of -- options, and the
1812 argparse_witharg routines were attempting to cerr/exit on missing
1813 arguments. This is appropriate for the CLI usage, but not the daemon
1814 usage. Add a 'cli' flag that can be set false for the daemon usage
1815 (and cause the parsing routine to return false instead of exit).
1817 The daemon's parsing code due for a rewrite soon.
1819 Signed-off-by: Dan Mick <dan.mick@inktank.com>
1820 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
1821 (cherry picked from commit c76bbc2e6df16d283cac3613628a44937e38bed8)
1823 commit 1f3b4917cc5c4d796a96637912d2ae5ce2877861
1824 Author: Alexandre Oliva <oliva@gnu.org>
1825 Date: Wed Feb 6 15:27:13 2013 -0200
1827 silence logrotate some more
1829 I was getting email with logrotate error output from “which invoke-rc.d”
1830 on systems without an invoke-rc.d. This patch silences it.
1832 Silence stderr from which when running logrotate
1834 From: Alexandre Oliva <oliva@gnu.org>
1836 Signed-off-by: Alexandre Oliva <oliva@gnu.org>
1837 (cherry picked from commit d02340d90c9d30d44c962bea7171db3fe3bfba8e)
1839 commit e6eace2334d04fc9292c96a843304d1748b5bbe7
1840 Merge: 8cb13a1 1507443
1841 Author: Samuel Just <sam.just@inktank.com>
1842 Date: Fri Mar 29 12:14:22 2013 -0700
1844 Merge remote-tracking branch 'upstream/bobtail-4556' into bobtail
1846 Reviewed-by: Samuel Just <sam.just@inktank.com>
1848 commit 8cb13a195c592fd2f17889e77d717c1864f97dca
1849 Author: Samuel Just <sam.just@inktank.com>
1850 Date: Thu Feb 14 14:03:56 2013 -0800
1852 OSD: always activate_map in advance_pgs, only send messages if up
1854 We should always handle_activate_map() after handle_advance_map() in
1855 order to kick the pg into a valid peering state for processing requests
1856 prior to dropping the lock.
1858 Additionally, we would prefer to avoid sending irrelevant messages
1859 during boot, so only send if we are up according to the current service
1864 Signed-off-by: Samuel Just <sam.just@inktank.com>
1865 Reviewed-by: Sage Weil <sage@inktank.com>
1866 (cherry picked from commit 4dfcad44431855ba7d68a1ccb41dc3cb5db6bb50)
1868 commit d89ab0ea6fa8d0961cad82f6a81eccbd3bbd3f55
1869 Author: Samuel Just <sam.just@inktank.com>
1870 Date: Thu Mar 28 14:09:17 2013 -0700
1872 PG: update PGPool::name in PGPool::update
1875 Signed-off-by: Samuel Just <sam.just@inktank.com>
1876 Reviewed-by: Sage Weil <sage@inktank.com>
1877 (cherry picked from commit f804892d725cfa25c242bdc577b12ee81dcc0dcc)
1879 commit 750626108616761512271d5a4f10dee82a54e460
1880 Author: Samuel Just <sam.just@inktank.com>
1881 Date: Tue Mar 26 15:10:37 2013 -0700
1883 ReplicatedPG: send entire stats on OP_BACKFILL_FINISH
1885 Otherwise, we update the stat.stat structure, but not the
1886 stat.invalid_stats part. This will result in a recently
1887 split primary propogating the invalid stats but not the
1888 invalid marker. Sending the whole pg_stat_t structure
1889 also mirrors MOSDSubOp.
1893 Signed-off-by: Samuel Just <sam.just@inktank.com>
1894 Reviewed-by: Sage Weil <sage@inktank.com>
1895 (cherry picked from commit 76b296f01fd0d337c8fc9f79013883e62146f0c6)
1897 commit 1507443271fda933032ef0877aff1890d4fd5b63
1898 Author: Sage Weil <sage@inktank.com>
1899 Date: Wed Mar 27 13:19:03 2013 -0700
1901 osd: disallow classes with flags==0
1903 They must be RD, WR, or something....
1905 Signed-off-by: Sage Weil <sage@inktank.com>
1906 (cherry picked from commit 89c69016e1dddb9f3ca40fd699e4a995ef1e3eee)
1908 commit 6b6e0cef99e66b46ade35ab262f071982049bc22
1909 Author: Sage Weil <sage@inktank.com>
1910 Date: Wed Mar 27 12:59:41 2013 -0700
1912 osd: EINVAL when rmw_flags is 0
1914 A broken client (e.g., v0.56) can send a request that ends up with an
1915 rmw_flags of 0. Treat this as invalid and return EINVAL.
1918 Signed-off-by: Sage Weil <sage@inktank.com>
1919 (cherry picked from commit f2dda43c9ed4fda9cfa87362514985ee79e0ae15)
1921 commit 4bdd37495cedb1cf30a5311548492fe3f5db6e92
1922 Author: Sage Weil <sage@inktank.com>
1923 Date: Wed Mar 27 13:08:38 2013 -0700
1925 osd: fix detection of non-existent class method
1927 Signed-off-by: Sage Weil <sage@inktank.com>
1928 (cherry picked from commit 50b831e3641c21cd5b145271688189e199f432d1)
1930 commit f28800f8b65e90a3b96429f07197236e6c9bf1a2
1931 Author: Sage Weil <sage@inktank.com>
1932 Date: Wed Mar 27 13:12:38 2013 -0700
1934 osd: tolerate rmw_flags==0
1936 We will let OSD return a proper error instead of asserting.
1938 This is effectively a backport of c313423cfda55a2231e000cd5ff20729310867f8.
1940 Signed-off-by: Sage Weil <sage@inktank.com>
1942 commit 94321ccdff81d5d6cea1acdb54344c3d930a49eb
1943 Author: Josh Durgin <josh.durgin@inktank.com>
1944 Date: Thu Feb 21 17:39:19 2013 -0800
1946 test_librbd_fsx: fix image closing
1948 Always close the image we opened in check_clone(), and check the
1949 return code of the rbd_close() called before cloning.
1952 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1953 (cherry picked from commit 94ae72546507799667197fd941633bb1fd2520c2)
1955 commit 7fbc1ab69267e6be96665b0d4e277dc4a07f9220
1956 Author: Josh Durgin <josh.durgin@inktank.com>
1957 Date: Wed Mar 13 17:05:42 2013 -0700
1959 rbd: remove fiemap use from import
1961 On some kernels and filesystems fiemap can be racy and provide
1962 incorrect data even after an fsync. Later we can use SEEK_HOLE and
1963 SEEK_DATA, but for now just detect zero runs like we do with stdin.
1965 Basically this adapts import from stdin to work in the case of a file
1966 or block device, and gets rid of other cruft in the import that used
1971 Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
1972 (cherry picked from commit 3091283895e8ffa3e4bda13399318a6e720d498f)