Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / doc / changelog / v0.61.4.txt
1 commit 1669132fcfc27d0c0b5e5bb93ade59d147e23404
2 Author: Gary Lowell <gary.lowell@inktank.com>
3 Date:   Wed Jun 19 13:51:38 2013 -0700
4
5     v0.61.4
6
7 commit b76540f6e2db7a08dee86f84358d56c4ea0b3293
8 Author: Sage Weil <sage@inktank.com>
9 Date:   Wed May 22 14:29:37 2013 -0700
10
11     messages/MOSDMarkMeDown: fix uninit field
12     
13     Fixes valgrind warning:
14     ==14803== Use of uninitialised value of size 8
15     ==14803==    at 0x12E7614: sctp_crc32c_sb8_64_bit (sctp_crc32.c:567)
16     ==14803==    by 0x12E76F8: update_crc32 (sctp_crc32.c:609)
17     ==14803==    by 0x12E7720: ceph_crc32c_le (sctp_crc32.c:733)
18     ==14803==    by 0x105085F: ceph::buffer::list::crc32c(unsigned int) (buffer.h:427)
19     ==14803==    by 0x115D7B2: Message::calc_front_crc() (Message.h:441)
20     ==14803==    by 0x1159BB0: Message::encode(unsigned long, bool) (Message.cc:170)
21     ==14803==    by 0x1323934: Pipe::writer() (Pipe.cc:1524)
22     ==14803==    by 0x13293D9: Pipe::Writer::entry() (Pipe.h:59)
23     ==14803==    by 0x120A398: Thread::_entry_func(void*) (Thread.cc:41)
24     ==14803==    by 0x503BE99: start_thread (pthread_create.c:308)
25     ==14803==    by 0x6C6E4BC: clone (clone.S:112)
26     
27     Backport: cuttlefish
28     Signed-off-by: Sage Weil <sage@inktank.com>
29     (cherry picked from commit eb91f41042fa31df2bef9140affa6eac726f6187)
30
31 commit 2434ecca6f8e1f2af62c74cb1b7df277f4a076f7
32 Merge: f8973bd 3f32ded
33 Author: Sage Weil <sage@inktank.com>
34 Date:   Wed Jun 19 10:56:51 2013 -0700
35
36     Merge remote-tracking branch 'gh/wip-4976-cuttlefish' into cuttlefish
37     
38     Reviewed-by: Samuel Just <sam.just@inktank.com>
39
40 commit f8973bda801dbb2412c4cd83869c0203930f38e9
41 Author: Sage Weil <sage@inktank.com>
42 Date:   Mon Jun 17 20:32:15 2013 -0700
43
44     common/Preforker: fix warning
45     
46     common/Preforker.h: In member function ‘int Preforker::signal_exit(int)’:
47     warning: common/Preforker.h:82:45: ignoring return value of ‘ssize_t safe_write(int, const void*, size_t)’, declared with attribute warn_unused_result [-Wunused-result]
48     
49     This is harder than it should be to fix.  :(
50       http://stackoverflow.com/questions/3614691/casting-to-void-doesnt-remove-warn-unused-result-error
51     
52     Whatever, I guess we can do something useful with this return value.
53     
54     Signed-off-by: Sage Weil <sage@inktank.com>
55     Reviewed-by: David Zafman <david.zafman@inktank.com>
56     (cherry picked from commit ce7b5ea7d5c30be32e4448ab0e7e6bb6147af548)
57
58 commit 6427985b746b7c29f5337d87b60aab9008a8bc6e
59 Author: Joao Eduardo Luis <joao.luis@inktank.com>
60 Date:   Wed Jun 19 02:50:45 2013 +0100
61
62     mon: Monitor: make sure we backup a monmap during sync start
63     
64     First of all, we must find a monmap to backup.  The newest version.
65     
66     Secondly, we must make sure we back it up before clearing the store.
67     
68     Finally, we must make sure that we don't remove said backup while
69     clearing the store; otherwise, we would be out of a backup monmap if the
70     sync happened to fail (and if the monitor happened to be killed before a
71     new sync had finished).
72     
73     This patch makes sure these conditions are met.
74     
75     Fixes: #5256 (partially)
76     Backport: cuttlefish
77     
78     Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
79     Reviewed-by: Sage Weil <sage@inktank.com>
80     (cherry picked from commit 5e6dc4ea21b452e34599678792cd36ce1ba3edb3)
81
82 commit f8f83e78218ee5b8602cfe6758caf2ecd3e06602
83 Author: Joao Eduardo Luis <joao.luis@inktank.com>
84 Date:   Wed Jun 19 02:36:44 2013 +0100
85
86     mon: Monitor: obtain latest monmap on sync store init
87     
88     Always use the highest version amongst all the typically available
89     monmaps: whatever we have in memory, whatever we have under the
90     MonmapMonitor's store, and whatever we have backed up from a previous
91     sync.  This ensures we always use the newest version we came across
92     with.
93     
94     Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
95     Reviewed-by: Sage Weil <sage@inktank.com>
96     (cherry picked from commit 6284fdce794b73adcc757fee910e975b6b4bd054)
97
98 commit 41e1a6beeef69136fe6ec3f31d07ea8c33d64cba
99 Author: Joao Eduardo Luis <joao.luis@inktank.com>
100 Date:   Wed Jun 19 02:21:58 2013 +0100
101
102     mon: Monitor: don't remove 'mon_sync' when clearing the store during abort
103     
104     Otherwise, we will end up losing the monmap we backed up when we started
105     the sync, and the monitor may be unable to start if it is killed or
106     crashes in-between the sync abort and finishing a new sync.
107     
108     Fixes: #5256 (partially)
109     Backport: cuttlefish
110     
111     Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
112     Reviewed-by: Sage Weil <sage@inktank.com>
113     (cherry picked from commit af5a9861d7c6b4527b0d2312d0efa792910bafd9)
114
115 commit 3f32ded41818ad3c607339d723c095f166e36f7e
116 Author: Sage Weil <sage@inktank.com>
117 Date:   Tue Jun 18 21:31:23 2013 -0700
118
119     os/FileStore: drop posix_fadvise(...DONTNEED)
120     
121     On XFS this call is problematic because it directly calls the filemap
122     writeback without vectoring through xfs.  This can break the delicate
123     ordering of writeback and range zeroing; see #4976 and this thread
124     
125           http://oss.sgi.com/archives/xfs/2013-06/msg00066.html
126     
127     Drop this behavior for now to avoid subtle data corruption.
128     
129     Signed-off-by: Sage Weil <sage@inktank.com>
130
131 commit ffade3c85dfffa13a16edd9630a52d99eb8a413d
132 Author: Sage Weil <sage@inktank.com>
133 Date:   Tue Jun 18 21:24:16 2013 -0700
134
135     os/FileStore: use fdatasync(2) instead of sync_file_range(2)
136     
137     The use of sync_file_range(2) on XFS screws up XFS' delicate ordering
138     of writeback and range zeroing; see #4976 and this thread:
139     
140       http://oss.sgi.com/archives/xfs/2013-06/msg00066.html
141     
142     Instead, replace all sync_file_range(2) calls with fdatasync(2), which
143     *does* do ordered writeback and should not leak unzeroed blocks.
144     
145     Signed-off-by: Sage Weil <sage@inktank.com>
146
147 commit 3383ba6326aeff6500df4792fcef65740dd6b3ea
148 Author: Sage Weil <sage@inktank.com>
149 Date:   Wed Jun 12 21:47:09 2013 -0700
150
151     config: fix run_dir typo
152     
153     From 654299108bfb11e7dce45f54946d1505f71d2de8.
154     
155     Signed-off-by: Sage Weil <sage@inktank.com>
156     (cherry picked from commit e9689ac6f5f50b077a6ac874f811d204ef996c96)
157
158 commit 41e1416c3585507db75f10ed69f65a5a80370827
159 Author: Sage Weil <sage@inktank.com>
160 Date:   Tue Jun 18 14:51:08 2013 -0700
161
162     ceph.spec: create /var/run on package install
163     
164     The %ghost %dir ... line will make this get cleaned up but won't install
165     it.
166     
167     Reported-by: Derek Yarnell <derek@umiacs.umd.edu>
168     Signed-off-by: Sage Weil <sage@inktank.com>
169     Reviewed-by: Gary Lowell <gary.lowell@inktank.com>
170     (cherry picked from commit 64ee0148a5b7324c7df7de2d5f869b880529d452)
171
172 commit 2df3619169d2e83617fc3005b68de395e982b39a
173 Author: Sage Weil <sage@inktank.com>
174 Date:   Fri Jun 7 17:03:41 2013 -0700
175
176     global: create /var/run/ceph on daemon startup
177     
178     This handles cases where the daemon is started without the benefit of
179     sysvinit or upstart (as with teuthology or ceph-fuse).
180     
181     Signed-off-by: Sage Weil <sage@inktank.com>
182     (cherry picked from commit 654299108bfb11e7dce45f54946d1505f71d2de8)
183
184 commit eace9987c19f4da5cc89ca84abec5e54035b4887
185 Author: Samuel Just <sam.just@inktank.com>
186 Date:   Wed Jun 5 11:10:34 2013 -0700
187
188     PG: don't dirty log unconditionally in activate()
189     
190     merge_log and friends all take care of dirtying the log
191     as necessary.
192     
193     Fixes: #5238
194     Signed-off-by: Samuel Just <sam.just@inktank.com>
195     (cherry picked from commit 5deece1d034749bf72b7bd04e4e9c5d97e5ad6ce)
196
197 commit fda618e96690b2693c7a8dd523ece7c1c5a90b67
198 Author: Joao Eduardo Luis <joao.luis@inktank.com>
199 Date:   Fri Jun 14 17:11:43 2013 +0100
200
201     mon: OSDMonitor: don't ignore apply_incremental()'s return on UfP [1]
202     
203     apply_incremental() may return -EINVAL.  Don't ignore it.
204     
205     [1] UfP = Update from Paxos
206     
207     Fixes: #5343
208     
209     Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
210     (cherry picked from commit e3c33f4315cbf8718f61eb79e15dd6d44fc908b7)
211
212 commit c14dd154584eef97075e4a260719b6cbe686d4c7
213 Author: Sage Weil <sage@inktank.com>
214 Date:   Mon Jun 17 16:38:26 2013 -0700
215
216     client: handle reset during initial mds session open
217     
218     If we get a reset during our attempt to open an MDS session, close out the
219     Connection* and retry to open the session, moving the waiters over.
220     
221     Fixes: #5379
222     Signed-off-by: Sage Weil <sage@inktank.com>
223     Reviewed-by: Greg Farnum <greg@inktank.com>
224     (cherry picked from commit df8a3e5591948dfd94de2e06640cfe54d2de4322)
225
226 commit aa8834831dbfcdebb96841686e3707e552c349f6
227 Author: Sage Weil <sage@inktank.com>
228 Date:   Mon Jun 17 15:43:40 2013 -0700
229
230     ceph-disk: add some notes on wth we are up to
231     
232     Signed-off-by: Sage Weil <sage@inktank.com>
233     (cherry picked from commit 8c6b24e9039079e897108f28d6af58cbc703a15a)
234
235 commit 261964adc5a7efe7c0efac2d527bc10a95498e45
236 Author: Sage Weil <sage@inktank.com>
237 Date:   Fri Jun 14 16:29:10 2013 -0700
238
239     ceph-disk: clear TERM to avoid libreadline hijinx
240     
241     The weird output from libreadline users is related to the TERM variable.
242     
243     Signed-off-by: Sage Weil <sage@inktank.com>
244     (cherry picked from commit e538829f16ce19d57d63229921afa01cc687eb86)
245
246 commit e36fb3267cdbe0ec5bb01f8a012485de1bbf1652
247 Author: Sage Weil <sage@inktank.com>
248 Date:   Mon Jun 17 09:49:46 2013 -0700
249
250     ceph-disk-udev: set up by-partuuid, -typeuuid symlinks on ancient udev
251     
252     Make the ancient-udev/blkid workaround script for RHEL/CentOS create the
253     symlinks for us too.
254     
255     Signed-off-by: Sage Weil <sage@inktank.com>
256     (cherry picked from commit d7f7d613512fe39ec883e11d201793c75ee05db1)
257
258 commit c3936ebb159b419115bfdc5dc7a23f5807cff9fa
259 Author: Sage Weil <sage@inktank.com>
260 Date:   Sat Jun 15 20:06:33 2013 -0700
261
262     ceph-disk: do not stop activate-all on first failure
263     
264     Keep going even if we hit one activation error.  This avoids failing to
265     start some disks when only one of them won't start (e.g., because it
266     doesn't belong to the current cluster).
267     
268     Signed-off-by: Sage Weil <sage@inktank.com>
269     (cherry picked from commit c9074375bfbe1e3757b9c423a5ff60e8013afbce)
270
271 commit 3cb783c31541cebe928b97cf27eb326bb4b54f9b
272 Author: Sage Weil <sage@inktank.com>
273 Date:   Fri Jun 14 16:30:24 2013 -0700
274
275     ceph.spec: include partuuid rules in package
276     
277     Commit f3234c147e083f2904178994bc85de3d082e2836 missed this.
278     
279     Signed-off-by: Sage Weil <sage@inktank.com>
280     (cherry picked from commit 253069e04707c5bf46869f4ff5a47ea6bb0fde3e)
281
282 commit 2d771b57082545e139086f3c5c9f79ba47101a14
283 Author: Sage Weil <sage@inktank.com>
284 Date:   Fri Jun 14 15:01:14 2013 -0700
285
286     ceph.spec: install/uninstall init script
287     
288     This was commented out almost years ago in commit 9baf5ef4 but it is not
289     clear to me that it was correct to do so.  In any case, we are not
290     installing the rc.d links for ceph, which means it does not start up after
291     a reboot.
292     
293     Signed-off-by: Sage Weil <sage@inktank.com>
294     (cherry picked from commit cc9b83a80262d014cc37f0c974963cf7402a577a)
295
296 commit dfe421e44cfa13178950258509a0cf71e308daa1
297 Author: Sage Weil <sage@inktank.com>
298 Date:   Fri Jun 14 13:39:03 2013 -0700
299
300     sysvinit, upstart: ceph-disk activate-all on start
301     
302     On 'service ceph start' or 'service ceph start osd' or start ceph-osd-all
303     we should activate any osd GPT partitions.
304     
305     Signed-off-by: Sage Weil <sage@inktank.com>
306     (cherry picked from commit 13680976ef6899cb33109f6f841e99d4d37bb168)
307
308 commit ef47cf9c9dd7f4a1f549c14f984cd052fc95bb64
309 Author: Sage Weil <sage@inktank.com>
310 Date:   Fri Jun 14 13:34:40 2013 -0700
311
312     ceph-disk: add 'activate-all'
313     
314     Scan /dev/disk/by-parttypeuuid for ceph OSDs and activate them all.  This
315     is useful when the event didn't trigger on the initial udev event for
316     some reason.
317     
318     Signed-off-by: Sage Weil <sage@inktank.com>
319     (cherry picked from commit 5c7a23687a1a21bec5cca7b302ac4ba47c78e041)
320
321 commit 65ec1d87f96694ab08c99a7104329065c7c5ebae
322 Author: Sage Weil <sage@inktank.com>
323 Date:   Fri Jun 14 13:23:52 2013 -0700
324
325     udev: /dev/disk/by-parttypeuuid/$type-$uuid
326     
327     We need this to help trigger OSD activations.
328     
329     Signed-off-by: Sage Weil <sage@inktank.com>
330     (cherry picked from commit d512dc9eddef3299167d4bf44e2018b3b6031a22)
331
332 commit 4a739b13f420acf4f0af21b4cf133ac08c97ee18
333 Author: Yehuda Sadeh <yehuda@inktank.com>
334 Date:   Fri Jun 14 14:53:54 2013 -0700
335
336     rgw: escape prefix correctly when listing objects
337     
338     Fixes: #5362
339     When listing objects prefix needs to be escaped correctly (the
340     same as with the marker). Otherwise listing objects with prefix
341     that starts with underscore doesn't work.
342     Backport: bobtail, cuttlefish
343     
344     Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
345     Reviewed-by: Greg Farnum <greg@inktank.com>
346     (cherry picked from commit d582ee2438a3bd307324c5f44491f26fd6a56704)
347
348 commit 6edba9e9ad1c115a462aeab858063fe3939a40e4
349 Author: Sage Weil <sage@inktank.com>
350 Date:   Mon Jun 10 17:28:22 2013 -0700
351
352     messages/MMonSync: initialize crc in ctor
353     
354     Signed-off-by: Sage Weil <sage@inktank.com>
355     (cherry picked from commit cd1c289b96a874ff99a83a44955d05efc9f2765a)
356
357 commit 2ad85576850bcb61c3ac8fee38609f9cd51bfac2
358 Author: Sage Weil <sage@inktank.com>
359 Date:   Sat Jun 15 08:48:37 2013 -0700
360
361     client: fix ancient typo in caps revocation path
362     
363     If we have dropped all references to a revoked capability, send the ack
364     to the MDS.  This typo has been there since v0.7 (early 2009)!
365     
366     Backport: cuttlefish
367     Signed-off-by: Sage Weil <sage@inktank.com>
368     Reviewed-by: Greg Farnum <greg@inktank.com>
369     (cherry picked from commit b7143c2f84daafbe2c27d5b2a2d5dc40c3a68d15)
370
371 commit d3d88983bceaf508f2585cc6bf8fc304a0943ffe
372 Author: Sage Weil <sage@inktank.com>
373 Date:   Wed Jun 5 08:42:25 2013 -0700
374
375     messages/MMonHealth: remove unused flag field
376     
377     This was initialized in (one of) the ctor(s), but not encoded/decoded,
378     and not used.  Remove it.  This makes valgrind a happy.
379     
380     Signed-off-by: Sage Weil <sage@inktank.com>
381     (cherry picked from commit 08bb8d510b5abd64f5b9f8db150bfc8bccaf9ce8)
382
383 commit 646d9ccc575bf91cf73fbfaf91ab4d04ed2b5981
384 Author: Sage Weil <sage@inktank.com>
385 Date:   Wed Jun 5 08:34:20 2013 -0700
386
387     messages/MMonProbe: fix uninitialized variables
388     
389     Backport: cuttlefish
390     Signed-off-by: Sage Weil <sage@inktank.com>
391     (cherry picked from commit 4974b29e251d433101b69955091e22393172bcd8)
392
393 commit 08304a7c46da7517319b7db0b64d1c4f54771472
394 Author: Sage Weil <sage@inktank.com>
395 Date:   Sat Jun 15 08:14:40 2013 -0700
396
397     common/Preforker: fix broken recursion on exit(3)
398     
399     If we exit via preforker, call exit(3) and not recursively back into
400     Preforker::exit(r).  Otherwise you get a hang with the child blocked
401     at:
402     
403     Thread 1 (Thread 0x7fa08962e7c0 (LWP 5419)):
404     #0  0x000000309860e0cd in write () from /lib64/libpthread.so.0
405     #1  0x00000000005cc906 in Preforker::exit(int) ()
406     #2  0x00000000005c8dfb in main ()
407     
408     and the parent at
409     
410     #0  0x000000309860eba7 in waitpid () from /lib64/libpthread.so.0
411     #1  0x00000000005cc87a in Preforker::parent_wait() ()
412     #2  0x00000000005c75ae in main ()
413     
414     Backport: cuttlefish
415     Signed-off-by: Sage Weil <sage@inktank.com>
416     (cherry picked from commit 7e7ff7532d343c473178799e37f4b83cf29c4eee)
417
418 commit f202d332dc86844caa9076c7866cc009d87f76b6
419 Author: Gary Lowell <glowell@inktank.com>
420 Date:   Thu Jun 13 16:38:26 2013 -0700
421
422     rules:  Don't disable tcmalloc on ARM (and other non-intel)
423     
424     Fixes #5342
425     
426     Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
427
428 commit cbca9232618e85bd15b8677c9306042caad876a6
429 Author: Guilhem Lettron <guilhem+github@lettron.fr>
430 Date:   Mon May 27 12:41:53 2013 +0200
431
432     Remove mon socket in post-stop
433     
434     If ceph-mon segfault, socket file isn't removed.
435     
436     By adding a remove in post-stop, upstart clean run directory properly.
437     
438     Signed-off-by: Guilhem Lettron <guilhem@lettron.fr>
439     (cherry picked from commit 554b41b171eab997038e83928c462027246c24f4)
440
441 commit 3f8b3cf1d4042ae6bb64a840ff19f859e6ce6dc2
442 Author: James Page <james.page@ubuntu.com>
443 Date:   Mon May 20 10:26:06 2013 +0100
444
445     Remove stop on from upstart tasks
446     
447     Upstart tasks don't have to concept of 'stop on' as they
448     are not long running.
449     (cherry picked from commit 17f6fccabc262b9a6d59455c524b550e77cd0fe3)
450
451 commit 0b9b8368aec049bfdd4cf72b481f3a4aa8cb031e
452 Author: Dan Mick <dan.mick@inktank.com>
453 Date:   Wed Jun 12 22:22:42 2013 -0700
454
455     ceph-disk: extra dash in error message
456     
457     Signed-off-by: Dan Mick <dan.mick@inktank.com>
458     (cherry picked from commit f86b4e7a4831c684033363ddd335d2f3fb9a189a)
459
460 commit ecddd1e0062ae58e8cc75e125cc683fc04b8befe
461 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
462 Date:   Fri May 24 12:41:11 2013 +0200
463
464     ceph-disk: cast output of _check_output()
465     
466     Cast output of _check_output() to str() to be able to use
467     str.split().
468     
469     Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
470     (cherry picked from commit 16ecae153d260407085aaafbad1c1c51f4486c9a)
471
472 commit 43855e3788cc90900f1b3424c4e4e2c28e8f351e
473 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
474 Date:   Fri May 24 12:46:15 2013 +0200
475
476     ceph-disk: remove unnecessary semicolons
477     
478     Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
479     (cherry picked from commit 9785478a2aae7bf5234fbfe443603ba22b5a50d2)
480
481 commit 53927f94f3dcf7c57b73b66159d924557d92506e
482 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
483 Date:   Fri May 24 12:33:16 2013 +0200
484
485     ceph-disk: fix undefined variable
486     
487     Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
488     (cherry picked from commit 9429ff90a06368fc98d146e065a7b9d1b68e9822)
489
490 commit f1beeb267d6e19754a9f2f483b5849a6b900f3ce
491 Author: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
492 Date:   Fri May 24 12:29:07 2013 +0200
493
494     ceph-disk: add missing spaces around operator
495     
496     Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
497     (cherry picked from commit c127745cc021c8b244d721fa940319158ef9e9d4)
498
499 commit fe23ae0042629f493792eadb88a30514c29fc1a0
500 Author: Sage Weil <sage@inktank.com>
501 Date:   Thu Jun 13 22:02:03 2013 -0700
502
503     udev: drop useless --mount argument to ceph-disk
504     
505     It doesn't mean anything anymore; drop it.
506     
507     Signed-off-by: Sage Weil <sage@inktank.com>
508     (cherry picked from commit bcfd2f31a50d27038bc02e645795f0ec99dd3b32)
509
510 commit d99e0a8908d4feccc0a73952ee31586c83174589
511 Author: Sage Weil <sage@inktank.com>
512 Date:   Thu Jun 13 22:01:34 2013 -0700
513
514     ceph-disk-udev: activate-journal
515     
516     Trigger 'ceph-disk activate-journal' from the alt udev rules.
517     
518     Signed-off-by: Sage Weil <sage@inktank.com>
519     (cherry picked from commit b139152039bfc0d190f855910d44347c9e79b22a)
520
521 commit dfbd20104e01ce22c7e501f748b2bf13382ee7f6
522 Author: Sage Weil <sage@inktank.com>
523 Date:   Thu Jun 13 21:56:23 2013 -0700
524
525     ceph-disk: do not use mount --move (or --bind)
526     
527     The kernel does not let you mount --move when the parent mount is
528     shared (see, e.g., https://bugzilla.redhat.com/show_bug.cgi?id=917008
529     for another person this also confused).  We can't use --bind either
530     since that (on RHEL at least) screws up /etc/mtab so that the final
531     result looks like
532     
533      /var/lib/ceph/tmp/mnt.HNHoXU /var/lib/ceph/osd/ceph-0 none rw,bind 0 0
534     
535     Instead, mount the original dev in the final location and then umount
536     from the old location.
537     
538     Signed-off-by: Sage Weil <sage@inktank.com>
539     (cherry picked from commit e5ffe0d2484eb6cbcefcaeb5d52020b1130871a5)
540
541 commit 98a990d796e71c62fa64c13230a18a4a40aedcdf
542 Author: Sage Weil <sage@inktank.com>
543 Date:   Thu Jun 13 21:22:53 2013 -0700
544
545     ceph.spec: include by-partuuid udev workaround rules
546     
547     These are need for old or buggy udev.  Having them for new and unbroken
548     udev is harmless.
549     
550     Signed-off-by: Sage Weil <sage@inktank.com>
551     (cherry picked from commit f3234c147e083f2904178994bc85de3d082e2836)
552
553 commit 1504e23f177fff00a794c0db76db8a8c72bc8eb7
554 Author: Sage Weil <sage@inktank.com>
555 Date:   Fri Jun 14 12:10:49 2013 -0700
556
557     ceph-disk: work around buggy rhel/centos parted
558     
559     parted on RHEL/Centos prefixes the *machine readable output* with
560     
561      1b 5b 3f 31 30 33 34 68
562     
563     Note that the same thing happens when you 'import readline' in python.
564     
565     Work around it!
566     
567     Signed-off-by: Sage Weil <sage@inktank.com>
568     (cherry picked from commit 82ff72f827b9bd7f91d30a09d35e42b25d2a7344)
569
570 commit 0b9482bd631aada9e2ca730b6cddd51d7954fb11
571 Author: Sage Weil <sage@inktank.com>
572 Date:   Thu Jun 13 15:54:58 2013 -0700
573
574     ceph-disk: implement 'activate-journal'
575     
576     Activate an osd via its journal device.  udev populates its symlinks and
577     triggers events in an order that is not related to whether the device is
578     an osd data partition or a journal.  That means that triggering
579     'ceph-disk activate' can happen before the journal (or journal symlink)
580     is present and then fail.
581     
582     Similarly, it may be that they are on different disks that are hotplugged
583     with the journal second.
584     
585     This can be wired up to the journal partition type to ensure that osds are
586     started when the journal appears second.
587     
588     Include the udev rules to trigger this.
589     
590     Signed-off-by: Sage Weil <sage@inktank.com>
591     (cherry picked from commit a2a78e8d16db0a71b13fc15457abc5fe0091c84c)
592
593 commit 062b9296c98a03f4f291615dce010aebc55aaa32
594 Author: Sage Weil <sage@inktank.com>
595 Date:   Tue Jun 11 18:35:01 2013 -0700
596
597     ceph-disk: call partprobe outside of the prepare lock; drop udevadm settle
598     
599     After we change the final partition type, sgdisk may or may not trigger a
600     udev event, depending on how well udev is behaving (it varies between
601     distros, it seems).  The old code would often settle and wait for udev to
602     activate the device, and then partprobe would uselessly fail because it
603     was already mounted.
604     
605     Call partprobe only at the very end, after prepare is done.  This ensures
606     that if partprobe calls udevadm settle (which is sometimes does) we do not
607     get stuck.
608     
609     Drop the udevadm settle.  I'm not sure what this accomplishes; take it out,
610     at least until we determine we need it.
611     
612     Signed-off-by: Sage Weil <sage@inktank.com>
613     (cherry picked from commit 8b3b59e01432090f7ae774e971862316203ade68)
614
615 commit 9f9dc8b85a81529deb6865ec5f1cebb45f04ddc4
616 Author: Sage Weil <sage@inktank.com>
617 Date:   Thu Jun 13 11:03:37 2013 -0700
618
619     ceph-disk: add 'zap' command
620     
621     Signed-off-by: Sage Weil <sage@inktank.com>
622     (cherry picked from commit 10ba60cd088c15d4b4ea0b86ad681aa57f1051b6)
623
624 commit 4fab29c1c5e4dec79f089e9803adf0e855e5ec4f
625 Author: Sage Weil <sage@inktank.com>
626 Date:   Tue May 21 12:52:03 2013 -0700
627
628     ceph-disk: fix stat errors with new suppress code
629     
630     Broken by 225fefe5e7c997b365f481b6c4f66312ea28ed61.
631     
632     Signed-off-by: Sage Weil <sage@inktank.com>
633     (cherry picked from commit bcc8bfdb672654c6a6b48a2aa08267a894debc32)
634
635 commit 01ba391b079a494272a071b76f8dee89b5f5c44d
636 Author: Sage Weil <sage@inktank.com>
637 Date:   Mon May 13 12:35:32 2013 -0700
638
639     ceph-disk: add '[un]suppress-activate <dev>' command
640     
641     It is often useful to prepare but not activate a device, for example when
642     preparing a bunch of spare disks.  This marks a device as 'do not
643     activate' so that it can be prepared without activating.
644     
645     Fixes: #3255
646     Signed-off-by: Sage Weil <sage@inktank.com>
647     (cherry picked from commit 225fefe5e7c997b365f481b6c4f66312ea28ed61)
648
649 commit 41a15a63349abc5f3e1c0b8de8fcc543e2567035
650 Author: Sage Weil <sage@inktank.com>
651 Date:   Fri Jun 14 11:21:25 2013 -0700
652
653     upstart: start ceph-all on runlevel [2345]
654     
655     Starting when only one network interface has started breaks machines with
656     multiple nics in very problematic ways.
657     
658     There may be an earlier trigger that we can use for cases where other
659     services on the local machine depend on ceph, but for now this is better
660     than the existing behavior.
661     
662     See #5248
663     
664     Signed-off-by: Sage Weil <sage@inktank.com>
665     (cherry picked from commit 7e08ed1bf154f5556b3c4e49f937c1575bf992b8)
666
667 commit 60e4bb0acb41febb75c866646c7102e9a25782f7
668 Author: Sage Weil <sage@inktank.com>
669 Date:   Sat Jun 8 17:38:07 2013 -0700
670
671     client: set issue_seq (not seq) in cap release
672     
673     We regularly have been observing a stall where the MDS is blocked waiting
674     for a cap revocation (Ls, in our case) and never gets a reply.  We finally
675     tracked down the sequence:
676     
677      - mds issues cap seq 1 to client
678      - mds does revocation (seq 2)
679      - client replies
680      - much time goes by
681      - client trims inode from cache, sends release with seq == 2
682      - mds ignores release because its issue_seq is 1
683      - mds later tries to revoke other caps
684      - client discards message because it doesn't have the inode in cache
685     
686     The problem is simply that we are using seq instead of issue_seq in the
687     cap release message.  Note that the other release call site in
688     encode_inode_release() is correct.  That one is much more commonly
689     triggered by short tests, as compared to this case where the inode needs to
690     get pushed out of the client cache.
691     
692     Signed-off-by: Sage Weil <sage@inktank.com>
693     Reviewed-by: Greg Farnum <greg@inktank.com>
694     (cherry picked from commit 9b012e234a924efd718826ab6a53b9aeb7cd6649)
695
696 commit ae522291d2a9b994a65fed5e63e9fec74eece5be
697 Author: Sage Weil <sage@inktank.com>
698 Date:   Wed May 22 15:03:50 2013 -0700
699
700     osd: skip mark-me-down message if osd is not up
701     
702     Fixes crash when the OSD has not successfully booted and gets a
703     SIGINT or SIGTERM.
704     
705     Signed-off-by: Sage Weil <sage@inktank.com>
706     (cherry picked from commit c2e262fc9493b4bb22c2b7b4990aa1ee7846940e)
707
708 commit 48f8d6e3ffe9fc5bb71b362e3059ffb2da69926b
709 Author: Sage Weil <sage@inktank.com>
710 Date:   Sun Jun 2 21:21:51 2013 -0700
711
712     ceph-fuse: create finisher threads after fork()
713     
714     The ObjectCacher and MonClient classes both instantiate Finisher
715     threads.  We need to make sure they are created *after* the fork(2)
716     or else the process will fail to join() them on shutdown, and the
717     threads will not exist while fuse is doing useful work.
718     
719     Put CephFuse on the heap and move all this initalization into the child
720     block, and make sure errors are passed back to the parent.
721     
722     Fix-proposed-by: Alexandre Marangone <alexandre.maragone@inktank.com>
723     Signed-off-by: Sage Weil <sage@inktank.com>
724     (cherry picked from commit 4fa5f99a40792341d247e51488c37301da3c4e4f)
725
726 commit 7012d192e6a31d91e57bc9f5b00af6c541ceb3e0
727 Author: Sage Weil <sage@inktank.com>
728 Date:   Thu Jun 6 16:35:54 2013 -0700
729
730     osd: do not include logbl in scrub map
731     
732     This is a potentially use object/file, usually prefixed by a zeroed region
733     on disk, that is not used by scrub at all.  It dates back to
734     f51348dc8bdd5071b7baaf3f0e4d2e0496618f08 (2008) and the original version of
735     scrub.
736     
737     This *might* fix #4179.  It is not a leak per se, but I observed 1GB
738     scrub messages going over the write.  Maybe the allocations are causing
739     fragmentation, or the sub_op queues are growing.
740     
741     Signed-off-by: Sage Weil <sage@inktank.com>
742     Reviewed-by: Samuel Just <sam.just@inktank.com>
743     (cherry picked from commit 0b036ecddbfd82e651666326d6f16b3c000ade18)
744
745 commit c75760e39d8df5b1971343e9f9186fd67e154af6
746 Author: Yehuda Sadeh <yehuda@inktank.com>
747 Date:   Thu Jun 6 21:53:00 2013 -0700
748
749     rgw: handle deep uri resources
750     
751     In case of deep uri resources (ones created beyond a single level
752     of hierarchy, e.g. auth/v1.0) we want to create a new empty
753     handlers for the path if no handlers exists. E.g., for
754     auth/v1.0 we need to have a handler for 'auth', otherwise
755     the default S3 handler will be used, which we don't want.
756     
757     Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
758     Reviewed-by: Greg Farnum <greg@inktank.com>
759     (cherry picked from commit ad3934e335399f7844e45fcfd17f7802800d2cb3)
760
761 commit bd12e81e48014024171c55f5984c9183c8e363cb
762 Author: Yehuda Sadeh <yehuda@inktank.com>
763 Date:   Thu Jun 6 21:47:21 2013 -0700
764
765     rgw: fix get_resource_mgr() to correctly identify resource
766     
767     Fixes: #5262
768     The original test was not comparing the correct string, ended up
769     with the effect of just checking the substring of the uri to match
770     the resource.
771     
772     Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
773     Reviewed-by: Greg Farnum <greg@inktank.com>
774     (cherry picked from commit 8d55b87f95d59dbfcfd0799c4601ca37ebb025f5)
775
776 commit b1d436e752c9c20e7dbff91b769cb2ba47383571
777 Author: Yehuda Sadeh <yehuda@inktank.com>
778 Date:   Thu Jun 6 11:22:38 2013 -0700
779
780     rgw: add 'cors' to the list of sub-resources
781     
782     Fixes: #5261
783     Backport: cuttlefish
784     Add 'cors' to the list of sub-resources, otherwise auth signing
785     is wrong.
786     
787     Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
788     Reviewed-by: Greg Farnum <greg@inktank.com>
789     (cherry picked from commit 9a0a9c205b8c24ca9c1e05b0cf9875768e867a9e)
790
791 commit 4bf75015ae7539a9dbabbbfc0c784dbd58aa6004
792 Author: Sage Weil <sage@inktank.com>
793 Date:   Fri May 31 21:23:45 2013 -0700
794
795     mon: fix preforker exit behavior behavior
796     
797     In 3c5706163b72245768958155d767abf561e6d96d we made exit() not actually
798     exit so that the leak checking would behave for a non-forking case.
799     That is only needed for the normal exit case; every other case expects
800     exit() to actually terminate and not continue execution.
801     
802     Instead, make a signal_exit() method that signals the parent (if any)
803     and then lets you return.  exit() goes back to it's usual behavior,
804     fixing the many other calls in main().
805     
806     Backport: cuttlefish
807     Signed-off-by: Sage Weil <sage@inktank.com>
808     Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
809     (cherry picked from commit 92d085f7fd6224ffe5b7651c1f83b093f964b5cd)
810
811 commit d398a1850d5895ad409f5229f0dc06651c3d4d75
812 Author: Josh Durgin <josh.durgin@inktank.com>
813 Date:   Tue Jun 4 13:23:36 2013 -0700
814
815     rados.py: correct some C types
816     
817     trunc was getting size_t instead of uint64_t, leading to bad results
818     in 32-bit environments. Explicitly cast to the desired type
819     everywhere, so it's clear the correct type is being used.
820     
821     Fixes: #5233
822     Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
823     (cherry picked from commit 6dd7d469000144b499af84bda9b735710bb5cec3)