]> git.proxmox.com Git - ceph.git/blob - ceph/doc/changelog/v0.61.5.txt
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / doc / changelog / v0.61.5.txt
1 commit 8ee10dc4bb73bdd918873f29c70eedc3c7ef1979
2 Author: Gary Lowell <gary.lowell@inktank.com>
3 Date: Wed Jul 17 16:39:08 2013 -0700
4
5 v0.61.5
6
7 commit 39bffac6b6c898882d03de392f7f2218933d942b
8 Author: Sage Weil <sage@inktank.com>
9 Date: Tue Jul 16 13:14:50 2013 -0700
10
11 ceph-disk: rely on /dev/disk/by-partuuid instead of special-casing journal symlinks
12
13 This was necessary when ceph-disk-udev didn't create the by-partuuid (and
14 other) symlinks for us, but now it is fragile and error-prone. (It also
15 appears to be broken on a certain customer RHEL VM.) See
16 d7f7d613512fe39ec883e11d201793c75ee05db1.
17
18 Instead, just use the by-partuuid symlinks that we spent all that ugly
19 effort generating.
20
21 Backport: cuttlefish
22 Signed-off-by: Sage Weil <sage@inktank.com>
23 Reviewed-by: Dan Mick <dan.mick@inktank.com>
24 (cherry picked from commit 64379e701b3ed862c05f156539506d3382f77aa8)
25
26 commit 363d54288254b5e2311cd28fce5988d68cfd5773
27 Author: Joao Eduardo Luis <joao.luis@inktank.com>
28 Date: Tue Jul 16 16:49:48 2013 +0100
29
30 mon: Monitor: StoreConverter: clearer debug message on 'needs_conversion()'
31
32 The previous debug message outputted the function's name, as often our
33 functions do. This was however a source of bewilderment, as users would
34 see those in logs and think their stores would need conversion. Changing
35 this message is trivial enough and it will make ceph users happier log
36 readers.
37
38 Backport: cuttlefish
39 Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
40 Reviewed-by: Sage Weil <sage@inktank.com>
41 (cherry picked from commit ad1392f68170b391d11df0ce5523c2d1fb57f60e)
42
43 commit 0ea89760def73f76d8100889eca3c25b0a6eb772
44 Author: Joao Eduardo Luis <joao.luis@inktank.com>
45 Date: Tue Jul 16 16:45:39 2013 +0100
46
47 mon: Monitor: do not reopen MonitorDBStore during conversion
48
49 We already open the store on ceph_mon.cc, before we start the conversion.
50 Given we are unable to reproduce this every time a conversion is triggered,
51 we are led to believe that this causes a race in leveldb that will lead
52 to 'store.db/LOCK' being locked upon the open this patch removes.
53
54 Regardless, reopening the db here is pointless as we already did it when
55 we reach Monitor::StoreConverter::convert().
56
57 Fixes: #5640
58 Backport: cuttlefish
59
60 Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
61 Reviewed-by: Sage Weil <sage@inktank.com>
62 (cherry picked from commit 036e6739a4e873863bae3d7d00f310c015dfcdb3)
63
64 commit 595c09df9134fb0d62144fe1594914c90e567dca
65 Author: Sage Weil <sage@inktank.com>
66 Date: Sun Jul 14 15:54:29 2013 -0700
67
68 messages/MClientReconnect: clear data when encoding
69
70 The MClientReconnect puts everything in the data payload portion of
71 the message and nothing in the front portion. That means that if the
72 message is resent (socket failure or something), the messenger thinks it
73 hasn't been encoded yet (front empty) and reencodes, which means
74 everything gets added (again) to the data portion.
75
76 Decoding keep decoding until it runs out of data, so the second copy
77 means we decode garbage snap realms, leading to the crash in bug
78
79 Clearing data each time around resolves the problem, although it does
80 mean we do the encoding work multiple times. We could alternatively
81 (or also) stick some data in the front portion of the payload
82 (ignored), but that changes the wire protocol and I would rather not
83 do that.
84
85 Fixes: #4565
86 Backport: cuttlefish
87 Signed-off-by: Sage Weil <sage@inktank.com>
88 Reviewed-by: Greg Farnum <greg@inktank.com>
89 (cherry picked from commit 314cf046b0b787ca69665e8751eab6fe7adb4037)
90
91 commit 8c178e0d39d8d4a4820eb061f79d74f95e60199f
92 Author: Sage Weil <sage@inktank.com>
93 Date: Mon Jul 15 10:05:37 2013 -0700
94
95 mon: once sync full is chosen, make sure we don't change our mind
96
97 It is possible for a sequence like:
98
99 - probe
100 - first probe reply has paxos trim that indicates a full sync is
101 needed
102 - start sync
103 - clear store
104 - something happens that makes us abort and bootstrap (e.g., the
105 provider mon restarts
106 - probe
107 - first probe reply has older paxos trim bound and we call an election
108 - on election completion, we crash because we have no data.
109
110 Non-determinism of the probe decision aside, we need to ensure that
111 the info we share during probe (fc, lc) is accurate, and that once we
112 clear the store we know we *must* do a full sync.
113
114 This is a backport of aa60f940ec1994a61624345586dc70d261688456.
115
116 Fixes: #5621
117 Signed-off-by: Sage Weil <sage@inktank.com>
118 Reviewed-by: Greg Farnum <greg@inktank.com>
119
120 commit 6af0ed9bc4cc955f8c30ad9dc6e9095599f323d0
121 Author: Sage Weil <sage@inktank.com>
122 Date: Tue Jul 9 14:12:15 2013 -0700
123
124 mon: do not scrub if scrub is in progress
125
126 This prevents an assert from unexpected scrub results from the previous
127 scrub on the leader.
128
129 Backport: cuttlefish
130 Signed-off-by: Sage Weil <sage@inktank.com>
131 (cherry picked from commit 00ae543b3e32f89d906a0e934792cc5309f57696)
132
133 commit 5642155ba5ca9b384a7af058a6538ac00c2a592d
134 Author: Sage Weil <sage@inktank.com>
135 Date: Wed Jul 10 10:06:20 2013 -0700
136
137 messages/MPGStats: do not set paxos version to osdmap epoch
138
139 The PaxosServiceMessage version field is meant for client-coordinated
140 ordering of messages when switching between monitors (and is rarely
141 used). Do not fill it with the osdmap epoch lest it be compared to a
142 pgmap version, which may cause the mon to (near) indefinitely put it on
143 a wait queue until the pgmap version catches up.
144
145 Backport: cuttlefish
146 Signed-off-by: Sage Weil <sage@inktank.com>
147 Reviewed-by: Greg Farnum <greg@inktank.com>
148 (cherry picked from commit b36338be43f43b6dd4ee87c97f2eaa23b467c386)
149
150 commit 06c65988bb0b1d1ec626fe31e9d806a1c4e24b28
151 Author: Sage Weil <sage@inktank.com>
152 Date: Thu Jul 11 18:43:24 2013 -0700
153
154 osd/OSDmap: fix OSDMap::Incremental::dump() for new pool names
155
156 The name is always present when pools are created, but not when they are
157 modified. Also, a name may be present with a new_pools entry if the pool
158 is just renamed. Separate it out completely in the dump.
159
160 Backport: cuttlefish, bobtail
161 Signed-off-by: Sage Weil <sage@inktank.com>
162 (cherry picked from commit 3e4a29111e89588385e63f8d92ce3d67739dd679)
163
164 commit 658240710baaf9c661b8fbf856322907a0d394ee
165 Author: Sage Weil <sage@inktank.com>
166 Date: Mon Jul 8 10:49:28 2013 -0700
167
168 mon/PaxosService: prevent reads until initial service commit is done
169
170 Do not process reads (or, by PaxosService::dispatch() implication, writes)
171 until we have committed the initial service state. This avoids things like
172 EPERM due to missing keys when we race with mon creation, triggered by
173 teuthology tests doing their health check after startup.
174
175 Fixes: #5515
176 Backport: cuttlefish
177 Signed-off-by: Sage Weil <sage@inktank.com>
178 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
179 (cherry picked from commit d08b6d6df7dba06dad73bdec2c945f24afc02717)
180
181 commit 5c3ff33771e227b3fb5cc354323846fe8db4ecc1
182 Author: Sage Weil <sage@inktank.com>
183 Date: Fri Jun 28 12:21:58 2013 -0700
184
185 client: send all request put's through put_request()
186
187 Make sure all MetaRequest reference put's go through the same path that
188 releases inode references, including all of the error paths.
189
190 Signed-off-by: Sage Weil <sage@inktank.com>
191 (cherry picked from commit 87217e1e3cb2785b79d0dec49bd3f23a827551f5)
192
193 commit 1df78ad73df581bc7537688ae28bda820b089a13
194 Author: Sage Weil <sage@inktank.com>
195 Date: Fri Jun 28 11:50:11 2013 -0700
196
197 client: fix remaining Inode::put() caller, and make method psuedo-private
198
199 Not sure I can make this actually private and make Client::put_inode() a
200 friend method (making all of Client a friend would defeat the purpose).
201 This works well enough, though!
202
203 Signed-off-by: Sage Weil <sage@inktank.com>
204 (cherry picked from commit 9af3b86b25574e4d2cdfd43e61028cffa19bdeb1)
205
206 commit fea024cc3dd2c6fd9ff322d1cd15e0d75c92eca5
207 Author: Sage Weil <sage@inktank.com>
208 Date: Thu Jun 27 21:39:35 2013 -0700
209
210 client: use put_inode on MetaRequest inode refs
211
212 When we drop the request inode refs, we need to use put_inode() to ensure
213 they get cleaned up properly (removed from inode_map, caps released, etc.).
214 Do this explicitly here (as we do with all other inode put() paths that
215 matter).
216
217 Fixes: #5381
218 Backport: cuttlefish
219 Signed-off-by: Sage Weil <sage@inktank.com>
220 (cherry picked from commit 81bee6487fb1ce9e090b030d61bda128a3cf4982)
221
222 commit 62ae39ec8f208cb8f89e43ba844b9a20b4315c61
223 Author: Sage Weil <sage@inktank.com>
224 Date: Mon Jul 8 15:57:48 2013 -0700
225
226 mon: be smarter about calculating last_epoch_clean lower bound
227
228 We need to take PGs whose mapping has not changed in a long time into
229 account. For them, the pg state will indicate it was clean at the time of
230 the report, in which case we can use that as a lower-bound on their actual
231 latest epoch clean. If they are not currently clean (at report time), use
232 the last_epoch_clean value.
233
234 Fixes: #5519
235 Signed-off-by: Sage Weil <sage@inktank.com>
236 (cherry picked from commit cc0006deee3153e06ddd220bf8a40358ba830135)
237
238 commit da725852190245d2f91b7b21e72baee70e4342bd
239 Author: Sage Weil <sage@inktank.com>
240 Date: Mon Jul 8 13:27:58 2013 -0700
241
242 osd: report pg stats to mon at least every N (=500) epochs
243
244 The mon needs a moderately accurate last_epoch_clean value in order to trim
245 old osdmaps. To prevent a PG that hasn't peered or received IO in forever
246 from preventing this, send pg stats at some minimum frequency. This will
247 increase the pg stat report workload for the mon over an idle pool, but
248 should be no worse that a cluster that is getting actual IO and sees these
249 updates from normal stat updates.
250
251 This makes the reported update a bit more aggressive/useful in that the epoch
252 is the last map epoch processed by this PG and not just one that is >= the
253 currenting interval. Note that the semantics of this field are pretty useless
254 at this point.
255
256 See #5519
257
258 Signed-off-by: Sage Weil <sage@inktank.com>
259 (cherry picked from commit da81228cc73c95737f26c630e5c3eccf6ae1aaec)
260
261 commit 757af91b2af0da6bbfeeb53551fa1ef4ef9118ea
262 Author: Sage Weil <sage@inktank.com>
263 Date: Wed Jul 10 11:32:34 2013 -0700
264
265 osd: fix warning
266
267 From 653e04a79430317e275dd77a46c2b17c788b860b
268
269 Backport: cuttlefish, bobtail
270 Signed-off-by: Sage Weil <sage@inktank.com>
271 (cherry picked from commit bc291d3fc3fc1cac838565cbe0f25f71d855a6e3)
272
273 commit 65af2538329472d2fd078bb961863c40cdabda12
274 Merge: e537699 804314b
275 Author: Sage Weil <sage@inktank.com>
276 Date: Fri Jul 12 15:21:20 2013 -0700
277
278 Merge remote-tracking branch 'gh/wip-mon-sync-2' into cuttlefish
279
280 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
281 Reviewed-by: Greg Farnum <greg@inktank.com>
282
283 commit e537699b33f84c14f027b56372fbcb0a99bbe88d
284 Author: Sandon Van Ness <sandon@inktank.com>
285 Date: Wed Jul 10 14:55:52 2013 -0700
286
287 Get device-by-path by looking for it instead of assuming 3rd entry.
288
289 On some systems (virtual machines so far) the device-by-path entry
290 from udevadm is not always in the same spot so instead actually
291 look for the right output instead of blindy assuming that its a
292 specific field in the output.
293
294 Signed-off-by: Sandon Van Ness <sandon@inktank.com>
295 Reviewed-by: Gary Lowell <gary.lowell@inktank.com>
296
297 commit 804314b8bfa5ec75cc9653e2928874c457395c92
298 Merge: 6ad9fe1 78f2266
299 Author: Sage Weil <sage@inktank.com>
300 Date: Wed Jul 10 11:40:37 2013 -0700
301
302 Merge remote-tracking branch 'gh/cuttlefish' into wip-mon-sync-2
303
304 commit 78f226634bd80f6678b1f74ccf785bc52fcd6b62
305 Author: Sage Weil <sage@inktank.com>
306 Date: Wed Jul 10 11:02:08 2013 -0700
307
308 osd: limit number of inc osdmaps send to peers, clients
309
310 We should not send an unbounded number of inc maps to our peers or clients.
311 In particular, if a peer is not contacted for a while, we may think they
312 have a very old map (say, 10000 epochs ago) and send thousands of inc maps
313 when the distribution shifts and we need to peer.
314
315 Note that if we do not send enough maps, the peers will make do by
316 requesting the map from somewhere else (currently the mon). Regardless
317 of the source, however, we must limit the amount that we speculatively
318 share as it usually is not needed.
319
320 Backport: cuttlefish, bobtail
321 Signed-off-by: Sage Weil <sage@inktank.com>
322 Reviewed-by: Samuel Just <sam.just@inktank.com>
323 (cherry picked from commit 653e04a79430317e275dd77a46c2b17c788b860b)
324
325 commit 54ee2dc80ed032c286546da51442340ec9991cdf
326 Author: Christophe Courtaut <christophe.courtaut@gmail.com>
327 Date: Mon Jul 1 14:57:17 2013 +0200
328
329 rgw: Fix return value for swift user not found
330
331 http://tracker.ceph.com/issues/1779 fixes #1779
332
333 Adjust the return value from rgw_get_user_info_by_swift call
334 in RGW_SWIFT_Auth_Get::execute() to have the correct
335 return code in response.
336 (cherry picked from commit 4089001de1f22d6acd0b9f09996b71c716235551)
337
338 commit 47852c263831707fff1570317a7446b0700c5962
339 Author: Sage Weil <sage@inktank.com>
340 Date: Tue Jul 9 21:55:51 2013 -0700
341
342 mon/OSDMonitor: make 'osd crush rm ...' slightly more idempotent
343
344 This is a manual backport of 18a624fd8b90d9959de51f07622cf0839e6bd9aa.
345 Do not return immediately if we are looking at uncommitted state.t
346
347 Signed-off-by: Sage Weil <sage@inktank.com>
348
349 commit bfc26c656d183fbcc90a352391e47f9f51c96052
350 Author: Sage Weil <sage@inktank.com>
351 Date: Mon Jul 8 17:46:40 2013 -0700
352
353 mon/OSDMonitor: fix base case for loading full osdmap
354
355 Right after cluster creation, first_committed is 1 and latest stashed in 0,
356 but we don't have the initial full map yet. Thereafter, we do (because we
357 write it with trim). Fixes afd6c7d8247075003e5be439ad59976c3d123218.
358
359 Signed-off-by: Sage Weil <sage@inktank.com>
360 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
361 (cherry picked from commit 43fa7aabf1f7e5deb844c1f52d451bab9e7d1006)
362
363 commit 7fb3804fb860dcd0340dd3f7c39eec4315f8e4b6
364 Author: Sage Weil <sage@inktank.com>
365 Date: Mon Jul 8 15:04:59 2013 -0700
366
367 mon: fix osdmap stash, trim to retain complete history of full maps
368
369 The current interaction between sync and stashing full osdmaps only on
370 active mons means that a sync can result in an incomplete osdmap_full
371 history:
372
373 - mon.c starts a full sync
374 - during sync, active osdmap service should_stash_full() is true and
375 includes a full in the txn
376 - mon.c sync finishes
377 - mon.c update_from_paxos gets "latest" stashed that it got from the
378 paxos txn
379 - mon.c does *not* walk to previous inc maps to complete it's collection
380 of full maps.
381
382 To fix this, we disable the periodic/random stash of full maps by the
383 osdmap service.
384
385 This introduces a new problem: we must have at least one full map (the first
386 one) in order for a mon that just synced to build it's full collection.
387 Extend the encode_trim() process to allow the osdmap service to include
388 the oldest full map with the trim txn. This is more complex than just
389 writing the full maps in the txn, but cheaper--we only write the full
390 map at trim time.
391
392 This *might* be related to previous bugs where the full osdmap was
393 missing, or case where leveldb keys seemed to 'disappear'.
394
395 Fixes: #5512
396 Backport: cuttlefish
397 Signed-off-by: Sage Weil <sage@inktank.com>
398 Reviewed-by: Greg Farnum <greg@inktank.com>
399 (cherry picked from commit afd6c7d8247075003e5be439ad59976c3d123218)
400
401 commit 24f90b832c695ef13021db66a178c18369ac356d
402 Author: Sage Weil <sage@inktank.com>
403 Date: Mon Jul 8 15:07:57 2013 -0700
404
405 mon: implement simple 'scrub' command
406
407 Compare all keys within the sync'ed prefixes across members of the quorum
408 and compare the key counts and CRC for inconsistencies.
409
410 Currently this is a one-shot inefficient hammer. We'll want to make this
411 work in chunks before it is usable in production environments.
412
413 Protect with a feature bit to avoid sending MMonScrub to mons who can't
414 decode it.
415
416 Signed-off-by: Sage Weil <sage@inktank.com>
417 Reviewed-by: Greg Farnum <greg@inktank.com>
418 (cherry picked from commit a9906641a1dce150203b72682da05651e4d68ff5)
419
420 Conflicts:
421
422 src/mon/MonCommands.h
423 src/mon/Monitor.cc
424
425 commit 926f723c12428a034545c6c4ff6641e1d5e05d24
426 Author: Samuel Just <sam.just@inktank.com>
427 Date: Wed Jul 3 11:18:33 2013 -0700
428
429 Elector.h: features are 64 bit
430
431 Fixes: #5497
432 Signed-off-by: Samuel Just <sam.just@inktank.com>
433 Reviewed-by: Sage Weil <sage@inktank.com>
434 Reviewed-by: Joao Luis <joao.luis@inktank.com>
435 (cherry picked from commit 3564e304e3f50642e4d9ff25e529d5fc60629093)
436
437 commit c2b38291e706c9d1d4d337cee3a944f34bf66525
438 Author: Samuel Just <sam.just@inktank.com>
439 Date: Wed Jul 3 11:18:19 2013 -0700
440
441 ceph_features.h: declare all features as ULL
442
443 Otherwise, the first 32 get |'d together as ints. Then, the result
444 ((int)-1) is sign extended to ((long long int)-1) before being |'d
445 with the 1LL entries. This results in ~((uint64_t)0).
446
447 Fixes: #5497
448 Signed-off-by: Samuel Just <sam.just@inktank.com>
449 Reviewed-by: Sage Weil <sage@inktank.com>
450 Reviewed-by: Joao Luis <joao.luis@inktank.com>
451 (cherry picked from commit 4255b5c2fb54ae40c53284b3ab700fdfc7e61748)
452
453 commit 95ef961d8537fc369efd0634262ffb8f288d6e9e
454 Author: Samuel Just <sam.just@inktank.com>
455 Date: Tue Jul 2 21:09:36 2013 -0700
456
457 Pipe: use uint64_t not unsigned when setting features
458
459 Fixes: #5497
460 Signed-off-by: Samuel Just <sam.just@inktank.com>
461 Reviewed-by: Sage Weil <sage@inktank.com>
462 Reviewed-by: Joao Luis <joao.luis@inktank.com>
463 (cherry picked from commit bc3e2f09f8860555d8b3b49b2eea164b4118d817)
464
465 commit 09d258b70a28e5cea555b9d7e215fe41d6b84577
466 Author: Sage Weil <sage@inktank.com>
467 Date: Mon Jul 8 11:24:48 2013 -0700
468
469 client: remove O_LAZY
470
471 The once-upon-a-time unique O_LAZY value I chose forever ago is now
472 O_NOATIME, which means that some clients are choosing relaxed
473 consistency without meaning to.
474
475 It is highly unlikely that a real O_LAZY will ever exist, and we can
476 select it in the ceph case with the ioctl or libcephfs call, so drop
477 any support for doing this via open(2) flags.
478
479 Update doc/lazy_posix.txt file re: lazy io.
480
481 Backport: cuttlefish
482 Signed-off-by: Sage Weil <sage@inktank.com>
483 Reviewed-by: Greg Farnum <greg@inktank.com>
484 (cherry picked from commit 94afedf02d07ad4678222aa66289a74b87768810)
485
486 commit c3b684932bad31fc853ad556d16e1e4a9926486e
487 Author: Sage Weil <sage@inktank.com>
488 Date: Mon Jul 8 12:55:20 2013 -0700
489
490 osd/osd_types: fix pg_stat_t::dump for last_epoch_clean
491
492 Backport: cuttlefish
493 Signed-off-by: Sage Weil <sage@inktank.com>
494 (cherry picked from commit 69a55445439fce0dd6a3d32ff4bf436da42f1b11)
495
496 commit a02f2510fcc800b9f2cf2a06401a7b97d5985409
497 Author: Sage Weil <sage@inktank.com>
498 Date: Fri Jul 5 16:03:49 2013 -0700
499
500 mon: remove bad assert about monmap version
501
502 It is possible to start a sync when our newest monmap is 0. Usually we see
503 e0 from probe, but that isn't always published as part of the very first
504 paxos transaction due to the way PaxosService::_active generates it's
505 first initial commit.
506
507 In any case, having e0 here is harmless.
508
509 Fixes: #5509
510 Signed-off-by: Sage Weil <sage@inktank.com>
511 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
512 (cherry picked from commit 85a1d6cc5d3852c94d1287b566656c5b5024fa13)
513
514 commit 6ad9fe17a674ba65bbeb4052cb1ac47f3113e7bf
515 Author: Sage Weil <sage@inktank.com>
516 Date: Thu Jul 4 19:33:06 2013 -0700
517
518 mon/Paxos: fix sync restart
519
520 If we have a sync going, and an election intervenes, the client will
521 try to continue by sending a new start_chunks request. In order to
522 ensure that we get all of the paxos commits from our original starting
523 point (and thus properly update the keys from which they started),
524 only pay attention if they *also* send their current last_committed
525 version. Otherwise, start them at the beginning.
526
527 Signed-off-by: Sage Weil <sage@inktank.com>
528
529 commit c5812b1c893305a7d20f9eaec2695c8b1691f0c9
530 Author: Sage Weil <sage@inktank.com>
531 Date: Thu Jul 4 14:57:06 2013 -0700
532
533 mon: uninline _trim_enable and Paxos::trim_{enable,disable} so we can debug them
534
535 Signed-off-by: Sage Weil <sage@inktank.com>
536
537 commit 6fbcbd7fddf35a5be4b38e536871903bff4f9bf1
538 Author: Sage Weil <sage@inktank.com>
539 Date: Thu Jul 4 14:55:34 2013 -0700
540
541 mon/Paxos: increase paxos max join drift
542
543 A value of 10 is too aggressive for large, long-running syncs. 100 is
544 about 2 minutes of activity at most, which should be a more forgiving
545 buffer.
546
547 Signed-off-by: Sage Weil <sage@inktank.com>
548
549 commit f3a51fa30e5ce1656853b40d831409f195f6e4ca
550 Author: Sage Weil <sage@inktank.com>
551 Date: Thu Jul 4 14:21:04 2013 -0700
552
553 mon/Paxos: configure minimum paxos txns separately
554
555 We were using paxos_max_join_drift to control the minimum number of
556 paxos transactions to keep around. Instead, make this explicit, and
557 separate from the join drift.
558
559 Signed-off-by: Sage Weil <sage@inktank.com>
560
561 commit 1156721f22f5f337241eef3d0276ca74fe6352d1
562 Author: Sage Weil <sage@inktank.com>
563 Date: Thu Jul 4 17:09:07 2013 -0700
564
565 mon: include any new paxos commits in each sync CHUNK message
566
567 We already take note of the paxos version when we begin the sync. As
568 sync progresses and there are new paxos commits/txns, include those
569 and update last_committed, so that when sync completes we will have
570 a full view of everything that happened during sync.
571
572 Note that this does not introduce any compatibility change. This change
573 *only* affects the provider. The key difference is that at the end
574 of the sync, the provide will set version to the latest version, and
575 not the version from the start of the sync (as was done previously).
576
577 Signed-off-by: Sage Weil <sage@inktank.com>
578
579 commit 40672219a081f0dc2dd536977290ef05cfc9f097
580 Author: Sage Weil <sage@inktank.com>
581 Date: Thu Jul 4 12:17:28 2013 -0700
582
583 mon/MonitorDBStore: expose get_chunk_tx()
584
585 Allow users get the transaction unencoded.
586
587 Signed-off-by: Sage Weil <sage@inktank.com>
588
589 commit db2bb270e93ed44f9252d65d1d4c9b36875d0ea5
590 Author: Sage Weil <sage@inktank.com>
591 Date: Wed Jul 3 17:15:56 2013 -0700
592
593 mon: enable leveldb cache by default
594
595 256 is not as large as the upstream 512 MB, but will help signficiantly and
596 be less disruptive for existing cuttlefish clusters.
597
598 Sort-of backport of e93730b7ffa48b53c8da2f439a60cb6805facf5a.
599
600 Signed-off-by: Sage Weil <sage@inktank.com>
601
602 commit 123f676e3ae8154ca94cb076c4c4ec5389d2a643
603 Author: Sage Weil <sage@inktank.com>
604 Date: Wed Jul 3 16:56:06 2013 -0700
605
606 mon/Paxos: make 'paxos trim disabled max versions' much much larger
607
608 108000 is about 3 hours if paxos is going full-bore (1 proposal/second).
609 That ought to be pretty safe. Otherwise, we start trimming to soon and a
610 slow sync will just have to restart when it finishes.
611
612 Backport: cuttlefish
613 Signed-off-by: Sage Weil <sage@inktank.com>
614 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
615 (cherry picked from commit 71ebfe7e1abe4795b46cf00dfe1b03d1893368b0)
616
617 Conflicts:
618
619 src/common/config_opts.h
620
621 commit 03393c0df9f54e4f1db60e1058ca5a7cd89f44e6
622 Author: Sage Weil <sage@inktank.com>
623 Date: Wed Jun 26 06:01:40 2013 -0700
624
625 mon: do not reopen MonitorDBStore during startup
626
627 level doesn't seem to like this when it races with an internal compaction
628 attempt (see below). Instead, let the store get opened by the ceph_mon
629 caller, and pull a bit of the logic into the caller to make the flow a
630 little easier to follow.
631
632 -2> 2013-06-25 17:49:25.184490 7f4d439f8780 10 needs_conversion
633 -1> 2013-06-25 17:49:25.184495 7f4d4065c700 5 asok(0x13b1460) entry start
634 0> 2013-06-25 17:49:25.316908 7f4d3fe5b700 -1 *** Caught signal (Segmentation fault) **
635 in thread 7f4d3fe5b700
636
637 ceph version 0.64-667-g089cba8 (089cba8fc0e8ae8aef9a3111cba7342ecd0f8314)
638 1: ceph-mon() [0x649f0a]
639 2: (()+0xfcb0) [0x7f4d435dccb0]
640 3: (leveldb::Table::BlockReader(void*, leveldb::ReadOptions const&, leveldb::Slice const&)+0x154) [0x806e54]
641 4: ceph-mon() [0x808840]
642 5: ceph-mon() [0x808b39]
643 6: ceph-mon() [0x806540]
644 7: (leveldb::DBImpl::DoCompactionWork(leveldb::DBImpl::CompactionState*)+0xdd) [0x7f363d]
645 8: (leveldb::DBImpl::BackgroundCompaction()+0x2c0) [0x7f4210]
646 9: (leveldb::DBImpl::BackgroundCall()+0x68) [0x7f4cc8]
647 10: ceph-mon() [0x80b3af]
648 11: (()+0x7e9a) [0x7f4d435d4e9a]
649 12: (clone()+0x6d) [0x7f4d4196bccd]
650 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.
651
652 Signed-off-by: Sage Weil <sage@inktank.com>
653 (cherry picked from commit ea1f316e5de21487ae034a1aa929068ba23ac525)
654
655 commit 0143acc49bc5834836afc2c5a9d8f67030bec85f
656 Author: Sage Weil <sage@inktank.com>
657 Date: Tue Jul 2 14:43:17 2013 -0700
658
659 sysvinit, upstart: handle symlinks to dirs in /var/lib/ceph/*
660
661 Match a symlink to a dir, not just dirs. This fixes the osd case of e.g.,
662 creating an osd in /data/osd$id in which ceph-disk makes a symlink from
663 /var/lib/ceph/osd/ceph-$id.
664
665 Fix proposed by Matt Thompson <matt.thompson@mandiant.com>; extended to
666 include the upstart users too.
667
668 Fixes: #5490
669 Signed-off-by: Sage Weil <sage@inktank.com>
670 Reviewed-by: Dan Mick <dan.mick@inktank.com>
671 (cherry picked from commit 87c98e92d1375c8bc76196bbbf06f677bef95e64)
672
673 commit 7e878bcc8c1b51538f3c05f854a9dac74c09b116
674 Author: Sage Weil <sage@inktank.com>
675 Date: Mon Jul 1 17:33:11 2013 -0700
676
677 rgw: add RGWFormatter_Plain allocation to sidestep cranky strlen()
678
679 Valgrind complains about an invalid read when we don't pad the allocation,
680 and because it is inlined we can't whitelist it for valgrind. Workaround
681 the warning by just padding our allocations a bit.
682
683 Fixes: #5346
684 Backport: cuttlefish
685 Signed-off-by: Sage Weil <sage@inktank.com>
686 (cherry picked from commit 49ff63b1750789070a8c6fef830c9526ae0f6d9f)
687
688 commit ca61402855966210ba1598239eaf454eaad0f5f2
689 Author: Yan, Zheng <zheng.z.yan@intel.com>
690 Date: Wed May 15 11:24:36 2013 +0800
691
692 mds: warn on unconnected snap realms
693
694 When there are more than one active MDS, restarting MDS triggers
695 assertion "reconnected_snaprealms.empty()" quite often. If there
696 is no snapshot in the FS, the items left in reconnected_snaprealms
697 should be other MDS' mdsdir. I think it's harmless.
698
699 If there are snapshots in the FS, the assertion probably can catch
700 real bugs. But at present, snapshot feature is broken, fixing it is
701 non-trivial. So replace the assertion with a warning.
702
703 Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
704 (cherry picked from commit 26effc0e583b0a3dade6ec81ef26dec1c94ac8b2)
705
706 commit e11f258831e14dc3755e09c0fd4f9bfdf79022a7
707 Author: Sage Weil <sage@inktank.com>
708 Date: Wed Jun 26 06:53:08 2013 -0700
709
710 mon/PGMonitor: use post_paxos_update, not init, to refresh from osdmap
711
712 We do two things here:
713 - make init an one-time unconditional init method, which is what the
714 health service expects/needs.
715 - switch PGMonitor::init to be post_paxos_update() which is called after
716 the other services update, which is what PGMonitor really needs.
717
718 This is a new version of the fix originally in commit
719 a2fe0137946541e7b3b537698e1865fbce974ca6 (and those around it). That is,
720 this re-fixes a problem where osds do not see pg creates from their
721 subscribe due to map_pg_creates() not getting called.
722
723 Backport: cuttlefish
724 Signed-off-by: Sage Weil <sage@inktank.com>
725 (cherry picked from commit e635c47851d185eda557e36bdc4bf3775f7b87a2)
726
727 Conflicts:
728 src/mon/PGMonitor.cc
729 src/mon/PGMonitor.h
730
731 commit 4d07fb014178da3c88edeb8765e1aaacb8cb8ffa
732 Author: Sage Weil <sage@inktank.com>
733 Date: Wed Jun 26 06:52:01 2013 -0700
734
735 mon/PaxosService: add post_paxos_update() hook
736
737 Some services need to update internal state based on other service's
738 state, and thus need to be run after everyone has pulled their info out of
739 paxos.
740
741 Backport: cuttlefish
742 Signed-off-by: Sage Weil <sage@inktank.com>
743 (cherry picked from commit 131686980f0a930d5de7cbce8234fead5bd438b6)
744
745 commit 90f5c448abeb127ae5a5528a79bd7bdbc74cb497
746 Author: Greg Farnum <greg@inktank.com>
747 Date: Thu Jun 27 14:58:14 2013 -0700
748
749 ceph-disk: s/else if/elif/
750
751 Signed-off-by: Greg Farnum <greg@inktank.com>
752 Reviewed-by: Joao Luis <joao.luis@inktank.com>
753 (cherry picked from commit bd8255a750de08c1b8ee5e9c9a0a1b9b16171462)
754 (cherry picked from commit 9e604ee6943fdb131978afbec51321050faddfc6)
755
756 commit 5c4bb463dca5aa61ea5f02f7592d5a3cc82cf6f4
757 Author: Yehuda Sadeh <yehuda@inktank.com>
758 Date: Wed Jun 26 11:28:57 2013 -0700
759
760 rgw: fix radosgw-admin buckets list
761
762 Fixes: #5455
763 Backport: cuttlefish
764 This commit fixes a regression, where radosgw-admin buckets list
765 operation wasn't returning any data.
766
767 Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
768 Reviewed-by: Sage Weil <sage@inktank.com>
769 (cherry picked from commit e1f9fe58d2860fcbb18c92d3eb3946236b49a6ce)
770
771 commit b2fb48762f32279e73feb83b220339fea31275e9
772 Author: Sage Weil <sage@inktank.com>
773 Date: Wed Jun 19 17:27:49 2013 -0700
774
775 ceph-disk: use unix lock instead of lockfile class
776
777 The lockfile class relies on file system trickery to get safe mutual
778 exclusion. However, the unix syscalls do this for us. More
779 importantly, the unix locks go away when the owning process dies, which
780 is behavior that we want here.
781
782 Fixes: #5387
783 Backport: cuttlefish
784 Signed-off-by: Sage Weil <sage@inktank.com>
785 Reviewed-by: Dan Mick <dan.mick@inktank.com>
786 (cherry picked from commit 2a4953b697a3464862fd3913336edfd7eede2487)
787
788 commit 26e7a6fffde4abcb685f34247e8491c05ee2a68d
789 Author: Sage Weil <sage@inktank.com>
790 Date: Wed Jun 26 18:27:49 2013 -0700
791
792 ceph-disk: do not mount over an osd directly in /var/lib/ceph/osd/$cluster-$id
793
794 If we see a 'ready' file in the target OSD dir, do not mount our device
795 on top of it.
796
797 Among other things, this prevents ceph-disk activate on stray disks from
798 stepping on teuthology osds.
799
800 Fixes: #5445
801 Signed-off-by: Sage Weil <sage@inktank.com>
802 (cherry picked from commit 8a17f33b14d858235dfeaa42be1f4842dcfd66d2)
803
804 commit ccb3dd5ad5533ca4e9b656b4e3df31025a5f2017
805 Author: Yan, Zheng <zheng.z.yan@intel.com>
806 Date: Tue Apr 2 15:46:51 2013 +0800
807
808 mds: fix underwater dentry cleanup
809
810 If the underwater dentry is a remove link, we shouldn't mark the
811 inode clean
812
813 Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
814 (cherry picked from commit 81d073fecb58e2294df12b71351321e6d2e69652)
815
816 commit 3020c5ea07a91475a7261dc2b810f5b61a1ae1f2
817 Author: Sage Weil <sage@inktank.com>
818 Date: Mon Jun 24 18:51:07 2013 -0700
819
820 mon/Elector: cancel election timer if we bootstrap
821
822 If we short-circuit and bootstrap, cancel our timer. Otherwise it will
823 go off some time later when we are in who knows what state.
824
825 Backport: cuttlefish
826 Signed-off-by: Sage Weil <sage@inktank.com>
827 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
828 (cherry picked from commit 9ae0ec83dabe37ac15e5165559debdfef7a5f91d)
829
830 commit 305f0c50a5f0ffabc73e10bdf4590217d5d5d211
831 Author: Sage Weil <sage@inktank.com>
832 Date: Mon Jun 24 18:12:11 2013 -0700
833
834 mon: cancel probe timeout on reset
835
836 If we are probing and get (say) an election timeout that calls reset(),
837 cancel the timer. Otherwise, we assert later with a splat like
838
839 2013-06-24 01:09:33.675882 7fb9627e7700 4 mon.b@0(leader) e1 probe_timeout 0x307a520
840 2013-06-24 01:09:33.676956 7fb9627e7700 -1 mon/Monitor.cc: In function 'void Monitor::probe_timeout(int)' thread 7fb9627e7700 time 2013-06-24 01:09:43.675904
841 mon/Monitor.cc: 1888: FAILED assert(is_probing() || is_synchronizing())
842
843 ceph version 0.64-613-g134d08a (134d08a9654f66634b893d493e4a92f38acc63cf)
844 1: (Monitor::probe_timeout(int)+0x161) [0x56f5c1]
845 2: (Context::complete(int)+0xa) [0x574a2a]
846 3: (SafeTimer::timer_thread()+0x425) [0x7059a5]
847 4: (SafeTimerThread::entry()+0xd) [0x7065dd]
848 5: (()+0x7e9a) [0x7fb966f62e9a]
849 6: (clone()+0x6d) [0x7fb9652f9ccd]
850 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.
851
852 Fixes: #5438
853 Backport: cuttlefish
854 Signed-off-by: Sage Weil <sage@inktank.com>
855 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
856 (cherry picked from commit 03d3be3eaa96a8e72754c36abd6f355c68d52d59)
857
858 commit a8f601d543168f4cdbddf674479d8de4b8dfc732
859 Author: Alexandre Maragone <alexandre.marangone@inktank.com>
860 Date: Tue Jun 18 16:18:01 2013 -0700
861
862 ceph-disk: make list_partition behave with unusual device names
863
864 When you get device names like sdaa you do not want to mistakenly conclude that
865 sdaa is a partition of sda. Use /sys/block/$device/$partition existence
866 instead.
867
868 Fixes: #5211
869 Backport: cuttlefish
870 Signed-off-by: Alexandre Maragone <alexandre.maragone@inktank.com>
871 Reviewed-by: Sage Weil <sage@inktank.com>
872 (cherry picked from commit 8c0daafe003935881c5192e0b6b59b949269e5ae)
873
874 commit 1c890f5cdfc596588e54fffeb016b4a5e9e2124c
875 Author: Sage Weil <sage@inktank.com>
876 Date: Mon Jun 17 20:28:24 2013 -0700
877
878 client: fix warning
879
880 client/Client.cc: In member function 'virtual void Client::ms_handle_remote_reset(Connection*)':
881 warning: client/Client.cc:7892:9: enumeration value 'STATE_NEW' not handled in switch [-Wswitch]
882 warning: client/Client.cc:7892:9: enumeration value 'STATE_OPEN' not handled in switch [-Wswitch]
883 warning: client/Client.cc:7892:9: enumeration value 'STATE_CLOSED' not handled in switch [-Wswitch]
884
885 Signed-off-by: Sage Weil <sage@inktank.com>
886 Reviewed-by: David Zafman <david.zafman@inktank.com>
887 (cherry picked from commit 8bd936f077530dfeb2e699164e4492b1c0973088)
888
889 commit c3b97591fd8206825bcfe65bdb24fbc75a2a9b42
890 Author: Sage Weil <sage@inktank.com>
891 Date: Mon Jun 24 17:58:48 2013 -0700
892
893 mon/AuthMonitor: ensure initial rotating keys get encoded when create_initial called 2x
894
895 The create_initial() method may get called multiple times; make sure it
896 will unconditionally generate new/initial rotating keys. Move the block
897 up so that we can easily assert as much.
898
899 Broken by commit cd98eb0c651d9ee62e19c2cc92eadae9bed678cd.
900
901 Signed-off-by: Sage Weil <sage@inktank.com>
902 Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
903 (cherry picked from commit 521fdc2a4e65559b3da83283e6ca607b6e55406f)
904
905 commit 0cc826c385edb2e327505696491d3ff1c3bfe8fd
906 Author: Sage Weil <sage@inktank.com>
907 Date: Mon Jun 24 17:42:04 2013 -0700
908
909 init-radosgw.sysv: remove -x debug mode
910
911 Fixes: #5443
912 Signed-off-by: Sage Weil <sage@inktank.com>
913 (cherry picked from commit 31d6062076fdbcd2691c07a23b381b26abc59f65)
914
915 commit 4d57c12faceb7f591f10776c6850d98da55c667b
916 Author: Sage Weil <sage@inktank.com>
917 Date: Mon Jun 24 12:52:44 2013 -0700
918
919 common/pick_addresses: behave even after internal_safe_to_start_threads
920
921 ceph-mon recently started using Preforker to working around forking issues.
922 As a result, internal_safe_to_start_threads got set sooner and calls to
923 pick_addresses() which try to set string config values now fail because
924 there are no config observers for them.
925
926 Work around this by observing the change while we adjust the value. We
927 assume pick_addresses() callers are smart enough to realize that their
928 result will be reflected by cct->_conf and not magically handled elsewhere.
929
930 Fixes: #5195, #5205
931 Backport: cuttlefish
932 Signed-off-by: Sage Weil <sage@inktank.com>
933 Reviewed-by: Dan Mick <dan.mick@inktank.com>
934 (cherry picked from commit eb86eebe1ba42f04b46f7c3e3419b83eb6fe7f9a)
935
936 commit e1ac7c6c3ca673d08710829aa5a3c03735710486
937 Author: Sage Weil <sage@inktank.com>
938 Date: Thu Jun 20 15:39:23 2013 -0700
939
940 mon/PaxosService: allow paxos service writes while paxos is updating
941
942 In commit f985de28f86675e974ac7842a49922a35fe24c6c I mistakenly made
943 is_writeable() false while paxos was updating due to a misread of
944 Paxos::propose_new_value() (I didn't see that it would queue).
945 This is problematic because it narrows the window during which each service
946 is writeable for no reason.
947
948 Allow service to be writeable both when paxos is active and updating.
949
950 Signed-off-by: Sage Weil <sage@inktank.com>
951 (cherry picked from commit 11169693d086e67dcf168ce65ef6e13eebd1a1ab)
952
953 commit 02b0b4a9acb439b2ee5deadc8b02492006492931
954 Author: Sage Weil <sage@inktank.com>
955 Date: Fri Jun 7 11:41:21 2013 -0700
956
957 mon/PaxosService: not active during paxos UPDATING_PREVIOUS
958
959 Treat this as an extension of the recovery process, e.g.
960
961 RECOVERING -> ACTIVE
962 or
963 RECOVERING -> UPDATING_PREVIOUS -> ACTIVE
964
965 and we are not active until we get to "the end" in both cases.
966
967 Signed-off-by: Sage Weil <sage@inktank.com>
968 (cherry picked from commit 392a8e21f8571b410c85be2129ef62dd6fc52b54)
969
970 commit c6d5dc4d47838c8c8f4d059b7d018dea3f9c4425
971 Author: Sage Weil <sage@inktank.com>
972 Date: Fri Jun 7 11:40:22 2013 -0700
973
974 mon: simplify states
975
976 - make states mutually exclusive (an enum)
977 - rename locked -> updating_previous
978 - set state prior to begin() to simplify things a bit
979
980 Signed-off-by: Sage Weil <sage@inktank.com>
981 (cherry picked from commit ee34a219605d1943740fdae0d84cfb9020302dd6)
982
983 commit c43b1f4dff254df96144b0b4d569cc72421a8fff
984 Author: Sage Weil <sage@inktank.com>
985 Date: Fri Jun 7 11:14:58 2013 -0700
986
987 mon/Paxos: not readable when LOCKED
988
989 If we are re-proposing a previously accepted value from a previous quorum,
990 we should not consider it readable, because it is possible it was exposed
991 to clients as committed (2/3 accepted) but not recored to be committed, and
992 we do not want to expose old state as readable when new state was
993 previously readable.
994
995 Signed-off-by: Sage Weil <sage@inktank.com>
996 (cherry picked from commit ec2ea86ed55e00265c2cc5ad0c94460b4c92865c)
997
998 commit 10d41200622d76dbf276602828584e7153cb22b5
999 Author: Sage Weil <sage@inktank.com>
1000 Date: Fri Jun 7 11:07:38 2013 -0700
1001
1002 mon/Paxos: cleanup: drop unused PREPARING state bit
1003
1004 This is never set when we block, and nobody looks at it.
1005
1006 Signed-off-by: Sage Weil <sage@inktank.com>
1007 (cherry picked from commit 7b7ea8e30e20704caad9a841332ecb2e39819a41)
1008
1009 commit 9d7c40e3f4ea2dd969aa0264ea8a6ad74f3e678a
1010 Author: Sage Weil <sage@inktank.com>
1011 Date: Thu Jun 6 15:20:05 2013 -0700
1012
1013 mon/PaxosService: simplify is_writeable
1014
1015 Recast this in terms of paxos check + our conditions, and make it
1016 match wait_for_writeable().
1017
1018 Signed-off-by: Sage Weil <sage@inktank.com>
1019 (cherry picked from commit f985de28f86675e974ac7842a49922a35fe24c6c)
1020
1021 commit 35745cba8985c5f3238e3c28fd28b194fae043d9
1022 Author: Sage Weil <sage@inktank.com>
1023 Date: Tue Jun 4 17:03:15 2013 -0700
1024
1025 mon/PaxosService: simplify readable check
1026
1027 Recast this in terms of the paxos check and our additional conditions,
1028 which match wait_for_readable().
1029
1030 Signed-off-by: Sage Weil <sage@inktank.com>
1031 (cherry picked from commit 3aa61a0beb540e48bf61ceded766d6ff52c95eb2)
1032
1033 commit 57c89291a48c319907fb3029746d9f5a4bd9dd61
1034 Author: Sage Weil <sage@inktank.com>
1035 Date: Fri May 31 16:45:08 2013 -0700
1036
1037 mon: simplify Monitor::init_paxos()
1038
1039 Signed-off-by: Sage Weil <sage@inktank.com>
1040 (cherry picked from commit e832e76a4af04b091c806ad412bcfd0326d75a2d)
1041
1042 commit fd1769cb2d61e8f2c7921a78760e8f12b28258fb
1043 Author: Sage Weil <sage@inktank.com>
1044 Date: Fri May 31 16:39:37 2013 -0700
1045
1046 mon/Paxos: go active *after* refreshing
1047
1048 The update_from_paxos() methods occasionally like to trigger new activity.
1049 As long as they check is_readable() and is_writeable(), they will defer
1050 until we go active and that activity will happen in the normal callbacks.
1051
1052 This fixes the problem where we active but is_writeable() is still false,
1053 triggered by PGMonitor::check_osd_map().
1054
1055 Signed-off-by: Sage Weil <sage@inktank.com>
1056 (cherry picked from commit e68b1bd36ed285e38a558899f83cf224d3aa60ed)
1057
1058 commit cf75478d027dfd377424988745230d096dae79ac
1059 Author: Sage Weil <sage@inktank.com>
1060 Date: Fri May 31 15:32:06 2013 -0700
1061
1062 mon: safely signal bootstrap from MonmapMonitor::update_from_paxos()
1063
1064 Signed-off-by: Sage Weil <sage@inktank.com>
1065 (cherry picked from commit dc83430124a5fd37573202a4cc0986c3c03739ef)
1066
1067 commit 6ac58cd9c1f9c80c5f3cbe97e19cfcd8427db46d
1068 Author: Sage Weil <sage@inktank.com>
1069 Date: Sun Jun 2 16:57:11 2013 -0700
1070
1071 mon/Paxos: do paxos refresh in finish_proposal; and refactor
1072
1073 Do the paxos refresh inside finish_proposal, ordered *after* the leader
1074 assertion so that MonmapMonitor::update_from_paxos() calling bootstrap()
1075 does not kill us.
1076
1077 Also, remove unnecessary finish_queued_proposal() and move the logic inline
1078 where the bad leader assertion is obvious.
1079
1080 Signed-off-by: Sage Weil <sage@inktank.com>
1081 (cherry picked from commit a42d7582f816b45f5d19c393fd45447555e78fdd)
1082
1083 commit 054e96d96533b1c4078402e43184f13b97329905
1084 Author: Joao Eduardo Luis <joao.luis@inktank.com>
1085 Date: Sun Jun 2 16:15:02 2013 -0700
1086
1087 mon/PaxosService: cache {first,last}_committed
1088
1089 Refresh the in-memory values when we are told the on-disk paxos state
1090 may have changed.
1091
1092 Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
1093 (cherry picked from commit 2fccb300bdf6ffd44db3462eb05115da11322ed4)
1094
1095 commit 265212a7384399bf85e15e6978bc7543824c0e92
1096 Author: Sage Weil <sage@inktank.com>
1097 Date: Fri May 31 14:30:48 2013 -0700
1098
1099 mon: no need to refresh from _active
1100
1101 The refresh is done explicitly by the monitor, independent of the more
1102 fragile PaxosService callbacks.
1103
1104 Signed-off-by: Sage Weil <sage@inktank.com>
1105 (cherry picked from commit d941363d6e4249e97b64faff0e573f75e918ac0c)
1106
1107 commit 1d8662504299babec22c714662cefbb86a0acb8b
1108 Author: Sage Weil <sage@inktank.com>
1109 Date: Sun Jun 2 16:10:57 2013 -0700
1110
1111 mon: remove unnecessary update_from_paxos calls
1112
1113 The refresh() will do this when the state changes; no need to
1114 opportunistically call this method all of the time.
1115
1116 Signed-off-by: Sage Weil <sage@inktank.com>
1117 (cherry picked from commit 03014a4ecc06cde420fad0c6c2a0177ebd7b839d)
1118
1119 commit 34acc5a3161b6bcda2b9f7ce18d89a8618fff1c5
1120 Author: Sage Weil <sage@inktank.com>
1121 Date: Sun Jun 2 16:14:01 2013 -0700
1122
1123 mon: explicitly refresh_from_paxos() when leveldb state changes
1124
1125 Instead of opportunistically calling each service's update_from_paxos(),
1126 instead explicitly refresh all in-memory state whenever we know the
1127 paxos state may have changed. This is simpler and less fragile.
1128
1129 Signed-off-by: Sage Weil <sage@inktank.com>
1130 (cherry picked from commit cc339c07312006e65854207523f50542d00ecf87)
1131
1132 commit 4474a0cc6c009a566ecf46efadb39d80343a7c68
1133 Author: Sage Weil <sage@inktank.com>
1134 Date: Sun Jun 23 09:25:55 2013 -0700
1135
1136 mon/AuthMonitor: make initial auth include rotating keys
1137
1138 This closes a very narrow race during mon creation where there are no
1139 service keys.
1140
1141 Fixes: #5427
1142 Signed-off-by: Sage Weil <sage@inktank.com>
1143 (cherry picked from commit cd98eb0c651d9ee62e19c2cc92eadae9bed678cd)
1144
1145 commit d572cf6f77418f217a5a8e37f1124dc566e24d0b
1146 Author: Sage Weil <sage@inktank.com>
1147 Date: Fri Jun 21 11:53:29 2013 -0700
1148
1149 mds: fix iterator invalidation for backtrace removal
1150
1151 - Don't increment before we dereference!
1152 - We need to update the iterator before we delete the item.
1153
1154 This code is changed in master, so this fix is for cuttlefish only.
1155
1156 Signed-off-by: Sage Weil <sage@inktank.com>
1157 Reviewed-by: Greg Farnum <greg@inktank.com>
1158
1159 commit 50957772c3582290331f69ba4a985b1cdf86834d
1160 Author: Sage Weil <sage@inktank.com>
1161 Date: Thu May 9 09:44:20 2013 -0700
1162
1163 osd: init test_ops_hook
1164
1165 CID 1019628 (#1 of 1): Uninitialized pointer field (UNINIT_CTOR)
1166 2. uninit_member: Non-static class member "test_ops_hook" is not initialized in this constructor nor in any functions that it calls.
1167
1168 Signed-off-by: Sage Weil <sage@inktank.com>
1169 (cherry picked from commit e30a03210c3efb768b1653df5ae58917ef26e579)
1170
1171 commit 17d2745f095e7bb640dece611d7824d370ea3b81
1172 Author: Sage Weil <sage@inktank.com>
1173 Date: Thu May 9 09:45:51 2013 -0700
1174
1175 osd: initialize OSDService::next_notif_id
1176
1177 CID 1019627 (#1 of 1): Uninitialized scalar field (UNINIT_CTOR)
1178 2. uninit_member: Non-static class member "next_notif_id" is not initialized in this constructor nor in any functions that it calls.
1179
1180 Signed-off-by: Sage Weil <sage@inktank.com>
1181 (cherry picked from commit 499edd8bfc355c2d590f5fa1ef197d1ea5680351)
1182
1183 commit ffdb7236a994aa20b5f75860b9c81dac0f131f9a
1184 Author: Sage Weil <sage@inktank.com>
1185 Date: Thu Jun 20 09:46:42 2013 -0700
1186
1187 mon: more fix dout use in sync_requester_abort()
1188
1189 Signed-off-by: Sage Weil <sage@inktank.com>
1190 (cherry picked from commit d60534b8f59798feaeeaa17adba2a417d7777cbf)
1191
1192 commit 38ddae04bb974a93f1718c509363f1afbe6b612d
1193 Author: Sage Weil <sage@inktank.com>
1194 Date: Mon Jun 10 11:48:25 2013 -0700
1195
1196 mon: fix raw use of *_dout in sync_requester_abort()
1197
1198 Signed-off-by: Sage Weil <sage@inktank.com>
1199 (cherry picked from commit 8a4ed58e39b287fd8667c62b45848487515bdc80)