From e6918187568dbd01842d8d1d2c808ce16a894239 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 21 Apr 2024 13:54:28 +0200 Subject: Adding upstream version 18.2.2. Signed-off-by: Daniel Baumann --- doc/changelog/v0.94.8.txt | 2059 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 2059 insertions(+) create mode 100644 doc/changelog/v0.94.8.txt (limited to 'doc/changelog/v0.94.8.txt') diff --git a/doc/changelog/v0.94.8.txt b/doc/changelog/v0.94.8.txt new file mode 100644 index 000000000..6191ef9f7 --- /dev/null +++ b/doc/changelog/v0.94.8.txt @@ -0,0 +1,2059 @@ +commit 838cd35201e4fe1339e16d987cc33e873524af90 (tag: refs/tags/v0.94.8, refs/remotes/gh/hammer) +Author: Jenkins Build Slave User +Date: Fri Aug 26 00:02:49 2016 +0000 + + 0.94.8 + +commit eb27865f268eaa4abc4e4b46354f1ea1556d1a5c +Merge: 08277b7 5248929 +Author: Loic Dachary +Date: Wed Aug 17 15:26:49 2016 +0200 + + Merge pull request #10750 from ceph/wip-14799-hammer + + hammer: rocksdb do not link against tcmalloc if it's disabled + + Reviewed-by: Loic Dachary + +commit 5248929c296d6130ee99fe94fbe69151d241efb8 +Author: Kefu Chai +Date: Tue Aug 16 23:45:18 2016 -0700 + + rocksdb: disable tcmalloc if disabled + + the rocksdb/configure.ac does not support --with-tcmalloc before, + and the updated rocksdb commit has the change for '--with-tcmalloc' + option, so let's pick it up. + + Fixes: http://tracker.ceph.com/issues/14799 + Signed-off-by: Kefu Chai + +commit fdfcd9b66cda1c637fbaad1c15d2ea04e426210d +Author: Sage Weil +Date: Sat Sep 12 14:12:20 2015 -0400 + + ceph.spec: respect CEPH_EXTRA_CONFIGURE_ARGS + + Signed-off-by: Sage Weil + (cherry picked from commit 51abff11688f0201b8f4076ac515e4515929d4cb) + Signed-off-by: Brad Hubbard + +commit 08277b7bc7c0e533c3fd56a0040dc0ddc74637d6 +Merge: bcab369 d5274a3 +Author: Orit Wasserman +Date: Sat Aug 13 19:19:37 2016 +0200 + + Merge pull request #10718 from oritwas/wip-14328-hammer + + hammer: rgw: the swift key remains after removing a subuser + +commit bcab36992580e5666afbf8e7bada4e850dfc84c6 +Merge: da2960f 699b7c8 +Author: Orit Wasserman +Date: Sat Aug 13 18:22:19 2016 +0200 + + Merge pull request #10509 from yehudasa/wip-15557-hammer + + rgw: Have a flavor of bucket deletion to bypass GC and to trigger + +commit d5274a3aeb7cc40f5ac04ac1ffcd6e3fc3019be3 +Author: Orit Wasserman +Date: Wed Jan 20 17:24:38 2016 +0100 + + rgw: fix subuser rm command failure + + Fixes: 14375 + Signed-off-by: Orit Wasserman + (cherry picked from commit bbc06e70b49b2917ee63985727cb92724fb99209) + +commit f9637743efc7ba3164e3bb9ee7a768801e1599da +Author: Sangdi Xu +Date: Wed Dec 16 09:09:16 2015 +0800 + + rgw: add a method to purge all associate keys when removing a subuser + + Fixes: #12890 + + When removing a subuser, make sure all of its keys, including the swift key and possible s3 keys, are also deleted. + + Signed-off-by: Sangdi Xu + (cherry picked from commit e7b7e1afc7a81c3f97976f7442fbdc5118b532b5) + +commit da2960f974b9a64a683ac8b77faf08fda3a5d0ba +Merge: 0f67539 3a30ffc +Author: Nathan Cutler +Date: Fri Aug 12 12:23:41 2016 +0200 + + Merge pull request #10291 from badone/wip-13829-hammer + + hammer: config set with negative value results in "error setting 'filestore_merge_threshold' to '-40': (22) Invalid argument" + + Reviewed-by: Samuel Just + Reviewed-by: Josh Durgin + Reviewed-by: Kefu Chai + Reviewed-by: Nathan Cutler + +commit 0f67539cf5efc46a92d7ea3ac031e0ce1c573a7a +Merge: 1e01986 0d4b601 +Author: Loic Dachary +Date: Fri Aug 12 09:46:30 2016 +0200 + + Merge pull request #10699 from ktdreyer/wip-15867-nroff + + jewel: doc: fix by-parttypeuuid in ceph-disk(8) nroff + + Reviewed-by: Loic Dachary + +commit 0d4b6013f0f130c93e2e488d1cd83527ad91274f +Author: Ken Dreyer +Date: Thu Aug 11 17:11:41 2016 -0600 + + doc: fix by-parttypeuuid in ceph-disk(8) nroff + + Commit 221efb0b893adbfd7a19df171cf967fee87afcc7 altered the rST source + for the ceph-disk man page. In Hammer, we also have to modify the nroff + sources, because static copies of the generated man pages are stored in + Git. + + Fixes: http://tracker.ceph.com/issues/15867 + Signed-off-by: Ken Dreyer + +commit 1e01986e9550700a11adfc1b175eca042c9cb188 +Merge: de28029 187d308 +Author: Nathan Cutler +Date: Thu Aug 11 22:58:33 2016 +0200 + + Merge pull request #9741 from SUSE/wip-16343-hammer + + hammer: boost uuid makes valgrind complain + + Reviewed-by: Samuel Just + Reviewed-by: Sage Weil + Reviewed-by: Ken Dreyer + Reviewed-by: Nathan Cutler + +commit de28029c25e4ff527c6021488381022538331473 +Merge: cb0488c 64211fa +Author: Orit Wasserman +Date: Thu Aug 11 15:58:51 2016 +0200 + + Merge pull request #10554 from Vicente-Cheng/wip-16815-hammer + + hammer: radosgw-admin region-map set is not reporting the bucket quota correctly + Reviewed-by: Orit Wasserman + +commit cb0488c181a122de13d63686b2a64e1aa00791ca +Merge: 0bc2d66 a3003f6 +Author: Orit Wasserman +Date: Thu Aug 11 15:56:39 2016 +0200 + + Merge pull request #10555 from Vicente-Cheng/wip-16317-hammer + + hammer: rgw: bucket listing following object delete is partial + Reviewed-by: Orit Wasserman + +commit 0bc2d66db5feba6cd887d7c297839b231012b880 +Merge: 5866fef 81aef60 +Author: Orit Wasserman +Date: Thu Aug 11 15:55:01 2016 +0200 + + Merge pull request #10530 from yehudasa/wip-16412-hammer + + rgw: remove bucket index objects when deleting the bucket + Reviewed-by: Orit Wasserman + +commit 5866fefb32cc443549891754a97eb8a6b8dd2af0 +Merge: da4f735 300c111 +Author: Orit Wasserman +Date: Thu Aug 11 11:14:53 2016 +0200 + + Merge pull request #8755 from kmroz/wip-hammer-convert-plain-object-to-versioned + + hammer: rgw: convert plain object to versioned (with null version) when removing + Reviewed-by: Orit Wasserman + +commit da4f735d7937aa623dfef41f921ad9381b1a07d7 +Merge: 4a12a88 d3eae0a +Author: Nathan Cutler +Date: Thu Aug 4 21:41:15 2016 +0200 + + Merge pull request #9271 from XinzeChi/wip-fix-digest-hammer + + osd: fix omap digest compare when scrub + + Reviewed-by: Samuel Just + Reviewed-by: David Zafman + Reviewed-by: Nathan Cutler + +commit 4a12a88d7098c1f67365a82f3cf9a174dd5ada32 +Merge: 6f107f1 ec02d8b +Author: Nathan Cutler +Date: Thu Aug 4 21:38:57 2016 +0200 + + Merge pull request #8805 from SUSE/wip-15482-hammer + + hammer: is_split crash in handle_pg_create + + Reviewed-by: Kefu Chai + +commit 6f107f1a7a42c070ef2da7f2b0b07d8bd2826429 +Merge: 3b9e73f 3cb72dd +Author: Nathan Cutler +Date: Thu Aug 4 21:37:24 2016 +0200 + + Merge pull request #8593 from renhwsky/wip-15478-hammer + + hammer: Pool quota alarm is not in effect + + Reviewed-by: Kefu Chai + Reviewed-by: Nathan Cutler + +commit 3b9e73f319b28c0403871c7d842304aca74f4c6a +Merge: d34ac2a b9a4ad9 +Author: John Spray +Date: Wed Aug 3 13:31:41 2016 +0100 + + Merge pull request #7542 from SUSE/wip-14668-hammer + + hammer: Wrong ceph get mdsmap assertion + + Reviewed-by: John Spray + +commit d34ac2a4d76eda4a371cc16dbc6bfdc0223c81d8 +Merge: 8f51f14 3ecdedd +Author: John Spray +Date: Wed Aug 3 13:31:30 2016 +0100 + + Merge pull request #8042 from ukernel/hammer-15050 + + hammer: mds: fix stray purging in 'stripe_count > 1' case + + Reviewed-by: John Spray + +commit 8f51f146c98e281f065debdfdc4399624e0cce97 +Merge: 4773e9c 049bc8a +Author: John Spray +Date: Wed Aug 3 13:31:22 2016 +0100 + + Merge pull request #8804 from SUSE/wip-15512-hammer + + hammer: Double decreased the count to trim caps which will cause failing to respond to cache pressure + + Reviewed-by: John Spray + +commit 4773e9c40849c2796aa16b7cacddbfe99536919c +Merge: 85a25e4 f6076dd +Author: John Spray +Date: Wed Aug 3 13:31:09 2016 +0100 + + Merge pull request #9404 from SUSE/wip-16082-hammer + + hammer: mds: wrongly treat symlink inode as normal file/dir when symlink inode is stale on kcephfs + + Reviewed-by: John Spray + +commit 85a25e43d4451b999ad517f089593d45895a7c59 +Merge: 3c4d14f 2633ec3 +Author: John Spray +Date: Wed Aug 3 13:30:58 2016 +0100 + + Merge pull request #10198 from SUSE/wip-16626-hammer + + hammer: Failing file operations on kernel based cephfs mount point leaves unaccessible file behind on hammer 0.94.7 + + Reviewed-by: John Spray + +commit a3003f6f4f02e37cf96b6e243203d86ad2e39549 +Author: Orit Wasserman +Date: Thu Feb 25 16:02:15 2016 +0100 + + rgw: reset return code in when iterating over the bucket the objects + + Fixes: #14826 + + Signed-off-by: Orit Wasserman + (cherry picked from commit e23fdcbbce47aaf041b9f8a0812c8a729aa5014b) + +commit 64211fa78f872648aad2b2cec2b4b3cb8f2b9953 +Author: Yehuda Sadeh +Date: Tue Oct 13 17:04:57 2015 -0700 + + rgw: fix compilation + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 9dfbae6d65bf6f8ab7cdf8597d556505b81cedd9) + +commit 3e45c6bb431f7763a12a48daac30fbe7aa3047cd +Author: Orit Wasserman +Date: Mon Oct 12 11:14:19 2015 +0200 + + rgw: add bucket_quota to RGWRegionMap::encode_json + + Signed-off-by: Orit Wasserman + (cherry picked from commit e18b72f7e97a65af681e368d3706a465603df89d) + +commit 699b7c8d5f51d895f5ff0578de5bf610436ee33b +Author: root +Date: Wed Apr 20 14:15:55 2016 +0530 + + rgw: Have a flavor of bucket deletion to bypass GC and to trigger + object deletions async. + + Fixes: http://tracker.ceph.com/issues/15557 + Signed-off-by: Pavan Rallabhandi + (cherry picked from commit b7a69fca248afeef1de1278890076693b16cf6d3) + + Conflicts: + src/rgw/rgw_admin.cc + src/rgw/rgw_bucket.cc + src/rgw/rgw_bucket.h + src/test/cli/radosgw-admin/help.t + +commit 81aef600671f0fe523206cea16000e79bc6bb75c +Author: Orit Wasserman +Date: Mon Jul 4 15:01:51 2016 +0200 + + rgw: remove bucket index objects when deleting the bucket + + Fixes: http://tracker.ceph.com/issues/16412 + Signed-off-by: Orit Wasserman + (cherry picked from commit 3ae276390641ad5fc4fef0c03971db95948880b4) + +commit 3c4d14fe73a97c52345369e732e445c78fb656c8 +Merge: 79753ed 8a39e5e +Author: Nathan Cutler +Date: Fri Jul 29 23:51:47 2016 +0200 + + Merge pull request #10182 from gaurav36/wip-configure-xfs-issue-hammer + + hammer: configure: Add -D_LARGEFILE64_SOURCE to Linux build. + + Reviewed-by: Samuel Just + Reviewed-by: Casey Bodley + Reviewed-by: Nathan Cutler + +commit 79753edf9c4763ae15d82502b53c6f3c9cd24349 +Merge: 75271a2 7dbace5 +Author: Nathan Cutler +Date: Fri Jul 29 09:40:46 2016 +0200 + + Merge pull request #7961 from dzafman/wip-15002 + + hammer: objects unfound after repair (fixed by repeering the pg) + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit 75271a2529b1504d249b528fe3fafd4c5e90a9bc +Merge: 76fa3b1 43d1b92 +Author: Nathan Cutler +Date: Fri Jul 29 09:38:15 2016 +0200 + + Merge pull request #9125 from dzafman/wip-15635 + + hammer: [MON] Fixed calculation of %USED + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit 76fa3b1097b3711ef75bd36aa2a4074e7a8fa9e6 +Merge: cf5f111 ca0beef +Author: Nathan Cutler +Date: Fri Jul 29 09:36:05 2016 +0200 + + Merge pull request #8464 from dzafman/wip-13039-15315 + + hammer: "FAILED assert(pg->info.history.same_interval_since == p.same_interval_since)" in upgrade:hammer-x-jewel-distro-basic-openstack + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit cf5f1117afe9e03c683fd40e5af964eaf5975e2b +Merge: 76ce775 488a787 +Author: Nathan Cutler +Date: Fri Jul 29 09:32:47 2016 +0200 + + Merge pull request #8573 from Vicente-Cheng/wip-15293-hammer + + hammer: ECBackend: send write and read sub ops on behalf of client ops at normal priority + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit 76ce775761f755bd3085ba22cf088c3a46b78d3a +Merge: 8629d37 e20df80 +Author: Nathan Cutler +Date: Fri Jul 29 09:31:16 2016 +0200 + + Merge pull request #8665 from Vicente-Cheng/wip-15525-hammer + + hammer: ReplicatedPG.cc: 430: FAILED assert(!actingbackfill.empty()): old watch timeout tries to queue repop on replica + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit 8629d378b05d4f0374436373a0c972360bae7273 +Merge: 79fc401 7b3f1da +Author: Nathan Cutler +Date: Fri Jul 29 09:29:58 2016 +0200 + + Merge pull request #8806 from SUSE/wip-15320-hammer + + hammer: LibRadosMiscConnectFailure.ConnectFailure (not so intermittent) failure in upgrade/hammer-x + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit 79fc401844c935283f43fbea83e113e298a830ba +Merge: f4d56b0 cbd5aaf +Author: Nathan Cutler +Date: Fri Jul 29 09:28:32 2016 +0200 + + Merge pull request #9001 from Vicente-Cheng/wip-15730-hammer + + hammer: osd: acting_primary not updated on split + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit f4d56b03b1decf83bebbf6996909ee89783068f0 +Merge: f71c9e6 410ff15 +Author: Nathan Cutler +Date: Fri Jul 29 09:26:55 2016 +0200 + + Merge pull request #9400 from Vicente-Cheng/wip-15796-hammer + + hammer: LibRadosWatchNotifyPPTests/LibRadosWatchNotifyPP.WatchNotify2Timeout/1 segv + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit f71c9e658d6f5af3cfa48a0dfb9a063f4965e7ce +Merge: fdb730e 23498a9 +Author: Nathan Cutler +Date: Fri Jul 29 09:24:42 2016 +0200 + + Merge pull request #9416 from chardan/wip-15770-hammer + + hammer: mon/OSDMonistor: improve reweight_by_utilization() logic + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit fdb730e169d8885ccd72e140c31797179c0a2c75 +Merge: f9e8dc8 2c18015 +Author: Nathan Cutler +Date: Fri Jul 29 09:21:25 2016 +0200 + + Merge pull request #10189 from dreamhost/wip-16618-hammer + + rgw: fix multi-delete query param parsing. + + Reviewed-by: Yehuda Sadeh + Reviewed-by: Nathan Cutler + +commit f9e8dc824a5aa89e24ef12fc8fcfdbdd4f926aef +Merge: f3cbf5f 24cc4f9 +Author: Nathan Cutler +Date: Fri Jul 29 09:17:57 2016 +0200 + + Merge pull request #8379 from Vicente-Cheng/wip-15283-hammer + + hammer: RGW shouldn't send Content-Type nor Content-Length for 304 responses + + Reviewed-by: Orit Wasserman + Reviewed-by: Nathan Cutler + +commit f3cbf5f891029975f4f5a915366fce28fcabd196 +Merge: ba8de3a f28477c +Author: Nathan Cutler +Date: Fri Jul 29 09:14:39 2016 +0200 + + Merge pull request #8313 from SUSE/wip-15257-hammer + + hammer: rgw: radosgw server abort when user passed bad parameters to set quota + + Reviewed-by: Orit Wasserman + +commit ba8de3ab31567c8179b72fb1dc8dbf7ccd1f5f38 +Merge: 9562198 ed4ca7c +Author: Nathan Cutler +Date: Fri Jul 29 09:13:09 2016 +0200 + + Merge pull request #8528 from wido/hammer-issue-15348 + + rgw: Set Access-Control-Allow-Origin to a Asterisk if allowed in a rule + + Reviewed-by: Orit Wasserman + Reviewed-by: Nathan Cutler + +commit 95621986d893029bc0a4a686c7da5cd6e0fa6f2b +Merge: 28107d3 1ac920b +Author: Nathan Cutler +Date: Fri Jul 29 09:10:57 2016 +0200 + + Merge pull request #9671 from ceph/hammer-rgw-copy-if-newer + + hammer: rgw: backport rgwx-copy-if-newer for radosgw-agent + + Reviewed-by: Orit Wasserman + Reviewed-by: Nathan Cutler + +commit 28107d3ebfded3cd9046e5a23ab83d4e0252cce2 +Merge: 5e1a57a 850881c +Author: Nathan Cutler +Date: Fri Jul 29 09:09:14 2016 +0200 + + Merge pull request #9961 from SUSE/wip-16190-hammer + + hammer: subuser rm fails with status 125 + + Reviewed-by: Orit Wasserman + +commit 5e1a57a6f9c2afbdfc6d3e73d438551202c68229 +Merge: 91889db ce313cd +Author: Nathan Cutler +Date: Fri Jul 29 09:07:10 2016 +0200 + + Merge pull request #9402 from SUSE/wip-15966-hammer + + hammer: No Last-Modified, Content-Size and X-Object-Manifest headers if no segments in DLO manifest + + Reviewed-by: Orit Wasserman + Reviewed-by: Nathan Cutler + +commit 23498a9620f792cd099dba028c5bdf96b1a625be +Author: xie xingguo +Date: Tue May 31 15:40:05 2016 -0700 + + mon/OSDMonitor: avoid potential expensive grace calculation + + The grace calculation during check_failure() is now very complicated + and time-consuming. Therefore we shall skip this when it is possible. + + Signed-off-by: xie xingguo + (cherry picked from commit 3557903d5d57642179b2ae137bedc389974b1956) + + Conflicts: + src/mon/OSDMonitor.cc + + Resolved by choosing the move-to-top implementation. Removed unused vars. + +commit 1b6f6f27b77803727a523b4337cbad411e8321ed +Author: xie xingguo +Date: Tue Apr 26 11:13:32 2016 +0800 + + mon/OSDMonitor: improve reweight_by_utilization() logic + + By calling reweight_by_utilization() method, we are aiming at an evener result + of utilization among all osds. To achieve this, we shall decrease weights of + osds which are currently overloaded, and try to increase weights of osds which + are currently underloaded when it is possible. + However, we can't do this all at a time in order to avoid a massive pg migrations + between osds. Thus we introduce a max_osds limit to smooth the progress. + + The problem here is that we have sorted the utilization of all osds in a descending + manner and we always try to decrease the weights of the most overloaded osds + since they are most likely to encounter a nearfull/full transition soon, but + we won't increase the weights from the most underloaded(least utilized by contrast) + at the same time, which I think is not quite reasonable. + + Actually, the best thing would probably be to iterate over teh low and high osds + in parallel, and do the ones that are furthest from the average first. + + Signed-off-by: xie xingguo + (cherry picked from commit e7a32534ebc9e27f955ff2d7a8d1db511383301e) + + Conflicts: + src/mon/OSDMonitor.cc + + Resolved by picking the lambda implemenation. + NOTE: Because hammer does not support C++11, the lambda functionality from the + current master has been moved into the "Sorter" function object. + +commit 91889db73ab097502615b208c6e9f3b40411e682 +Merge: f3c4f7b b78a1be +Author: Nathan Cutler +Date: Wed Jul 27 08:28:38 2016 +0200 + + Merge pull request #10038 from tchaikov/wip-16297-hammer + + mon: Monitor: validate prefix on handle_command() + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit f3c4f7b61ab519c532a2218a11c5472daaaf5fa9 +Merge: 2fe8edb b31ac2d +Author: Nathan Cutler +Date: Tue Jul 26 19:08:23 2016 +0200 + + Merge pull request #9090 from tchaikov/wip-13990-hammer + + hammer: osd: remove all stale osdmaps in handle_osd_map() + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit 2fe8edb87e7384f206414db8a49e909e51f48de3 +Merge: 67b7f11 0498969 +Author: Nathan Cutler +Date: Mon Jul 25 21:44:14 2016 +0200 + + Merge pull request #10227 from SUSE/wip-15081-hammer + + hammer: When logging to a file fails, ceph logs excessively to stderr + + Reviewed-by: Samuel Just + +commit 67b7f11c63313a5dcdf34b904137ef7a4673f4ec +Merge: bd59c96 474abb8 +Author: Nathan Cutler +Date: Mon Jul 25 21:43:49 2016 +0200 + + Merge pull request #9893 from Vicente-Cheng/wip-16430-hammer + + hammer: OSDMonitor: drop pg temps from not the current primary + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit bd59c9695fadedef89b77166f60f5a8cf85825ff +Merge: 3794e3a 055427c +Author: Nathan Cutler +Date: Mon Jul 25 21:42:54 2016 +0200 + + Merge pull request #9238 from SUSE/wip-15962-hammer + + hammer: ceph-osd valgrind invalid reads/writes + + Reviewed-by: Samuel Just + +commit 3794e3ad44d1e429f110abe71fb2d2319567bcd1 +Merge: 89233e3 d96086a +Author: Nathan Cutler +Date: Mon Jul 25 21:42:06 2016 +0200 + + Merge pull request #8849 from SUSE/wip-14326-hammer + + hammer: osd/PGLog.h: 88: FAILED assert(rollback_info_trimmed_to == head) + + Reviewed-by: Samuel Just + +commit 89233e32ffcdd7f795873771859caba1ce3ad23f +Merge: 253143b fb1b40f +Author: Nathan Cutler +Date: Mon Jul 25 21:40:57 2016 +0200 + + Merge pull request #8845 from SUSE/wip-15647-hammer + + hammer: osd: rados cppool omap to ec pool crashes osd + + Reviewed-by: Samuel Just + Reviewed-by: Nathan Cutler + +commit 253143b559001eadb73ed9945abe2d0b8d946b65 +Merge: 81133dd 365f21b +Author: Loic Dachary +Date: Mon Jul 25 15:05:54 2016 +0200 + + Merge pull request #8470 from dachary/wip-15403-api-test-timeout-hammer + + hammer: tests: be more generous with test timeout + + Reviewed-by: Loic Dachary + +commit 81133dd6e2724ee78cc69bda8e89ca35b20b6b23 +Merge: d71845c 3bb248b +Author: Nathan Cutler +Date: Mon Jul 25 15:05:31 2016 +0200 + + Merge pull request #9977 from shun-s/hammer + + replcatedBackend: delete one of the repeated op->mark_started in ReplicatedBackend::sub_op_modify_impl + + Reviewed-by: Kefu Chai + Reviewed-by: Nathan Cutler + +commit d71845cec169c660c180a4c0313e0cdbc25329dc +Merge: 387d5c1 5057c34 +Author: Nathan Cutler +Date: Mon Jul 25 12:51:45 2016 +0200 + + Merge pull request #8960 from badone/wip-hammer-rados-bench-units + + hammer: Add units to rados bench output and clean up formatting + + Reviewed-by: Nathan Cutler + +commit 474abb8275cd7507d7c7eae0d0e5647612fc177e +Author: Samuel Just +Date: Thu Jun 2 10:43:17 2016 -0700 + + OSDMonitor: drop pg temp from sources other than the current primary + + Fixes: http://tracker.ceph.com/issues/16127 + Signed-off-by: Samuel Just + (cherry picked from commit 1a07123c38e3fecb3fb2e43bbbae962d8411d287) + + change: + use NULL to replace the nullptr because we don't have C++11 + +commit b31ac2d37ecb68ed9661923fbaeaedeac241ba4a +Author: Kefu Chai +Date: Thu May 12 20:28:11 2016 +0800 + + osd: reset session->osdmap if session is not waiting for a map anymore + + we should release the osdmap reference once we are done with it, + otherwise we might need to wait very long to update that reference with + a newer osdmap ref. this appears to be an OSDMap leak: it is held by an + quiet OSD::Session forever. + + the osdmap is not reset in OSD::session_notify_pg_create(), because its + only caller is wake_pg_waiters(), which will call + dispatch_session_waiting() later. and dispatch_session_waiting() will + check the session->osdmap, and will also reset the osdmap if + session->waiting_for_pg.empty(). + + Fixes: http://tracker.ceph.com/issues/13990 + Signed-off-by: Kefu Chai + (cherry picked from commit 82b0af7cedc3071cd83ee53479f834c23c62b7d0) + +commit 3a30ffc21a5edd52726867302da6b358f93aa8dc +Author: Brad Hubbard +Date: Wed Jan 27 11:34:47 2016 +1000 + + qa: Add test for #13829 + + qa/workunits/cephtool/test.sh: add test for setting negative int options + src/test/daemon_config.cc: remove tests for failed negative values + + Fixes: #13829 + + Signed-off-by: Brad Hubbard + (cherry picked from commit 994ac2942d04584d1617e6d4bbd5b880b1ea0448) + +commit f70e4adf8682ed82b267e21e5e63039048893243 +Author: Brad Hubbard +Date: Wed Jan 27 11:18:16 2016 +1000 + + common: Allow config set with negative value + + A recent commit disabled negative values but they are required for variables + such as filestore_merge_threshold. + + Modified patch to remove C++11 specific elements so it will build for hammer + + Fixes: #13829 + + Signed-off-by: Kefu Chai + Signed-off-by: Brad Hubbard + (cherry picked from commit 8b777a0c346bc70fd10d07e89368b3785b58f10e) + +commit 04989695915fd7ee5ef85ae34ede1fd680514f9d +Author: Sage Weil +Date: Thu Mar 10 09:50:07 2016 -0500 + + log: do not repeat errors to stderr + + If we get an error writing to the log, log it only once to stderr. + This avoids generating, say, 72 GB of ENOSPC errors in + teuthology.log when /var/log fills up. + + Fixes: #14616 + Signed-off-by: Sage Weil + (cherry picked from commit d9ac0474b864afda58a44b9012cca4bbc6aaf509) + + Conflicts: + src/log/Log.cc (drop m_uid and m_gid which are not used in hammer; + order of do_stderr, do_syslog, do_fd conditional blocks is reversed in + hammer; drop irrelevant speed optimization code from + 5bfe05aebfefdff9022f0eb990805758e0edb1dc) + +commit 2633ec3934ad8f7629c55b4345f426cacfb7b140 +Author: Yan, Zheng +Date: Fri Apr 15 20:15:14 2016 +0800 + + mds: disallow 'open truncate' non-regular inode + + Signed-off-by: Yan, Zheng + (cherry picked from commit 0e4b6f2332bb4822cf324587a94144f1c98e4b97) + + Conflicts: + src/mds/Server.cc (hammer has cur->inode.inline_version - in master + this has been changed to cur->inode.inline_data.version) + +commit 3f0fb20ed08dfde614cff6c056d41b59af200c2c +Author: Yan, Zheng +Date: Fri Apr 15 19:45:23 2016 +0800 + + mds: only open non-regular inode with mode FILE_MODE_PIN + + ceph_atomic_open() in kernel client does lookup and open at the same + time. So it can open a symlink inode with mode CEPH_FILE_MODE_WR. + Open a symlink inode with mode CEPH_FILE_MODE_WR triggers assertion + in Locker::check_inode_max_size(); + + Signed-off-by: Yan, Zheng + (cherry picked from commit 4d15eb12298e007744486e28924a6f0ae071bd06) + +commit 2c180159c00aa184e1fe8b051b1aa1e9f0f332fc +Author: Robin H. Johnson +Date: Thu Jul 7 14:14:36 2016 -0700 + + rgw: fix multi-delete query param parsing. + + Multi-delete is triggered by a query parameter on POST, but there are + multiple valid ways of representing it, and Ceph should accept ANY way + that has the query parameter set, regardless of what value or absence of + value. + + This caused the RubyGem aws-sdk-v1 to break, and has been present since + multi-delete was first added in commit 0a1f4a97da, for the bobtail + release. + + Fixes: http://tracker.ceph.com/issues/16618 + Signed-off-by: Robin H. Johnson + (cherry picked from commit a7016e1b67e82641f0702fda4eae799e953063e6) + +commit 387d5c1ba836833a0cf11ddf9a4fb8690a532878 +Merge: 2fd75cc 4eea92b +Author: Yehuda Sadeh +Date: Thu Jul 7 10:16:31 2016 -0700 + + Merge pull request #9407 from SUSE/wip-15833-hammer + + hammer: RGW :: Subset of uploaded objects via radosgw are unretrievable when using erasure coded pool + +commit 8a39e5e67bc9a93cadb6c13f25c7ccd57421af6b +Author: Ira Cooper +Date: Thu Mar 31 12:30:45 2016 -0400 + + configure: Add -D_LARGEFILE64_SOURCE to Linux build. + + Fixes: http://tracker.ceph.com/issues/16612 + + Without -D_LARGEFILE64_SOURCE we can't build against libxfs, + because off64_t must be defined. + + Signed-off-by: Ira Cooper + (cherry picked from commit 602425a) + +commit 2fd75cced9dbcfdfdcba979eae90a6f4fb384758 +Merge: dac65d0 2c97cb3 +Author: Orit Wasserman +Date: Wed Jul 6 20:25:20 2016 +0200 + + Merge pull request #8475 from Vicente-Cheng/wip-15343-hammer + + hammer: Multipart ListPartsResult has missing quotes on ETag + Reviewed-bu: Orit Wasserman + +commit 3bb248b7d530403b347e3ff68a8996b624fc1c98 +Author: shun-s +Date: Tue Jun 28 15:30:16 2016 +0800 + + replcatedBackend: delete one useless op->mark_started as there are two in ReplicatedBackend::sub_op_modify_impl + delete one mark_start event as there are two same op->mark_started in ReplicatedBackend::sub_op_modify_impl + Fixes: http://tracker.ceph.com/issues/16572 + + Signed-off-by: shun-s + +commit ed4ca7c92cdf7404754dab6f9d58c64b647136c5 +Author: Wido den Hollander +Date: Tue Apr 5 11:14:16 2016 +0200 + + rgw: Set Access-Control-Allow-Origin to a Asterisk if allowed in a rule + + Before this patch the RGW would respond with the Origin send by the client in the request + if a wildcard/asterisk was specified as a valid Origin. + + This patch makes sure we respond with a header like this: + + Access-Control-Allow-Origin: * + + This way a resource can be used on different Origins by the same browser and that browser + will use the content as the asterisk. + + We also keep in mind that when Authorization is send by the client different rules apply. + In the case of Authorization we may not respond with an Asterisk, but we do have to + add the Vary header with 'Origin' as a value to let the browser know that for different + Origins it has to perform a new request. + + More information: https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS + + Fixes: #15348 + + Signed-off-by: Wido den Hollander + (cherry picked from commit 0021e224480c7164330eaa7cc1078bb8795169bf) + + Conflicts: + src/rgw/rgw_rest.cc + hammer still uses s->cio->print() where master uses STREAM_IO(s)->print() + +commit b78a1be835706e7dabc505be343945d0ac05697d +Author: Kefu Chai +Date: Thu Jun 30 13:24:22 2016 +0800 + + mon: Monitor: validate prefix on handle_command() + + Fixes: http://tracker.ceph.com/issues/16297 + + Signed-off-by: You Ji + (cherry picked from commit 7cb3434fed03a5497abfd00bcec7276b70df0654) + + Conflicts: + src/mon/Monitor.cc (the signature of Monitor::reply_command() + changed a little bit in master, so adapt the + commit to work with the old method) + +commit dac65d048919f701877de96d3271131853e532ed (refs/remotes/gh/wip-optracker-4354) +Merge: 2e156d7 a2e7ca1 +Author: Nathan Cutler +Date: Mon Jun 27 17:51:19 2016 +0200 + + Merge pull request #8538 from Vicente-Cheng/wip-15360-hammer + + hammer: Linking to -lrbd causes process startup times to balloon + + Reviewed-by: Josh Durgin + +commit 850881cf787ccb23eca989861a6688f3a4de1a7c +Author: Orit Wasserman +Date: Wed Jan 20 17:24:38 2016 +0100 + + rgw: fix subuser rm command failure + + Fixes: 14375 + Signed-off-by: Orit Wasserman + (cherry picked from commit bbc06e70b49b2917ee63985727cb92724fb99209) + + Conflicts: + src/rgw/rgw_user.cc The "if (op_state.will_purge_keys())" block was + later changed to "always purge all associated keys" by + e7b7e1afc7a81c3f97976f7442fbdc5118b532b5 - keep the hammer version + +commit 055427cf58857eeadda11ed1b3381e84e384bc85 +Author: Samuel Just +Date: Thu May 12 16:57:49 2016 -0700 + + Pipe: take a ref to existing while we are waiting + + Otherwise, if it is reaped while we are waiting, it'll be a + use-after-free. + + Fixes: http://tracker.ceph.com/issues/15870 + Signed-off-by: Samuel Just + (cherry picked from commit b224912d249453d754fc0478d3680f8cfa1a5c22) + + Conflicts: + src/msg/simple/Pipe.cc: nullptr changed to 0 because hammer is not compiled + with -std=c++11 + +commit 24cc4f9e67d9c61f68ccc8f7d80ac227d67aeda1 +Author: Nathan Cutler +Date: Wed Jun 15 16:53:16 2016 +0200 + + rgw: check for -ERR_NOT_MODIFIED in rgw_rest_s3.cc + + Fixes: http://tracker.ceph.com/issues/16327 + Signed-off-by: Nathan Cutler + (cherry picked from commit fc38346c596d8b0bc156183970d6a327943cb577) + + Conflicts: + src/rgw/rgw_rest_s3.cc + use ret instead of op_ret to check op result + +commit 7dbace59b83a059fcb364b78fc78d4e38164df6c +Author: Loic Dachary +Date: Thu May 28 22:35:08 2015 +0200 + + erasure-code: s/unreocvery/unfound/ + + Signed-off-by: Loic Dachary + (cherry picked from commit 28820d1cd630ec466ed1069a437d740a025fb9aa) + +commit e726f211107cd84cc722744c38213b96dc59cdc7 +Author: Jianpeng Ma +Date: Wed Apr 22 09:45:04 2015 +0800 + + test: add test-case for repair unrecovery-ec pg. + + Signed-off-by: Jianpeng Ma + (cherry picked from commit 8f30db85219a6c57cb2fc03f4049a3f57446ca55) + +commit 40b1c2b231b62471d4f3cfba3ba2c3d596c9e170 +Author: Jianpeng Ma +Date: Tue Apr 14 13:29:54 2015 +0800 + + osd: Remove the duplicated func MissingLoc::get_all_missing. + + It is the same as MissingLoc::get_needs_recovery. + + Signed-off-by: Jianpeng Ma + (cherry picked from commit bdd6205408cf20e039496728052a36c1a7d758c6) + +commit 47d5dfc0323e8d7614ad5793d85c1476b63c18e6 +Author: Jianpeng Ma +Date: Tue Apr 14 09:11:58 2015 +0800 + + osd: Fix ec pg repair endless when met unrecover object. + + In repair_object, if bad_peer is replica, it don't add soid in + MissingLoc for ec pool. If there are more bad replica for ec pool + which cause object can't recover, the later recoverying will endless. + + Signed-off-by: Jianpeng Ma + Signed-off-by: Kefu Chai + (cherry picked from commit d51806f5b330d5f112281fbb95ea6addf994324e) + +commit 187d308b5b0cb0512b442bbad1bddfda8ef9203f +Author: Sage Weil +Date: Mon Aug 24 14:51:47 2015 -0400 + + uuid: use boost::random:random_device + + The boost mt code uses uninitialized memory for extra randomness, + which is a bad idea in general but more importantly makes valgrind + unhappy. Use /dev/urandom instead. + + Unfortunately this introduces a link time dependency.. meh! + + Fixes: #12736 + Signed-off-by: Sage Weil + (cherry picked from commit dbcaa544856fcc99ab912a101c4a28e1eb3fb94e) + + Conflicts: + ceph.spec.in (trivial resolution) + +commit 174de7fce8080df6e02b363e7821e8cca6f8157f +Author: Rohan Mars +Date: Wed Aug 12 21:19:31 2015 -0700 + + moved to use boost uuid implementation, based on commit 4fe89a7b14c97b2ed7f357132901beb2bdcec551 + + Signed-off-by: Rohan Mars + Reviewed-by: Casey Bodley + (cherry picked from commit 62bfc7a1ab1587e81ed3bff0ddfbb1aa69d1c299) + + Conflicts: + debian/control (trivial resolution) + src/common/Makefile.am (trivial resolution) + src/common/blkdev.cc (no get_device_by_uuid() function in hammer) + +commit 2e156d7ad4b9f4ffd6028df3a460b50b30c8b0d3 +Merge: 054a90e 5cd922c +Author: Mykola Golub +Date: Thu Jun 16 08:26:00 2016 +0300 + + Merge pull request #9722 from trociny/wip-16289-hammer + + hammer: qa/workunits/rbd: respect RBD_CREATE_ARGS environment variable + + Reviewed-by: Jason Dillaman + +commit 5cd922ca31d2eb987992b2afcbd45d5d92aeac69 +Author: Mykola Golub +Date: Tue Jun 14 15:28:06 2016 +0300 + + qa/workunits/rbd: respect RBD_CREATE_ARGS environment variable + + Fixes: http://tracker.ceph.com/issues/16289 + Signed-off-by: Mykola Golub + (cherry picked from commit 3048d3c7ce800a6174c54946b838e4e4079ec609) + +commit 1ac920bf291a58cf680108f8dc738197e9bae44d +Author: Yehuda Sadeh +Date: Fri Sep 18 17:34:51 2015 -0700 + + rgw: fix identification of canceled operation + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 9f63b15b3a7c4cc633ff90f529934f071aea7c62) + +commit a38f157a09097d1eaef64813fc947aac19e3844a +Author: Yehuda Sadeh +Date: Wed Mar 25 17:35:40 2015 -0700 + + rgw: identify racing writes when using copy-if-newer + + When copying an object from a different zone, and copy-if-newer is + specified, if the final meta write is canceled check whether the + destinatioin that was created is actually newer than our mtime, + otherwise retry. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit fe9c64b75caf3f53ce2dfdea5e39d794528dfc33) + +commit 02f6d8aaa86f4fdb9912763883d079d02589e5be +Author: Yehuda Sadeh +Date: Tue Mar 24 22:48:03 2015 -0700 + + rgw: translate http error 304 to appropriate status + + So that we can return the appropriate response on a conditioinal multi + zone copy operation. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 20d24e965884af440f94c7e3093587c7b8643cb9) + +commit 7319d76b269d541249124f46890f1b04279ba2ea +Author: Yehuda Sadeh +Date: Tue Mar 24 20:24:55 2015 -0700 + + rgw: fix if-modified-since boundary + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 27946e8ba4bc5dbfec2da319fa23266d5885d655) + +commit 5e4de5ad66dc24b059ef19664d1eef22be6890f7 +Author: Yehuda Sadeh +Date: Tue Mar 24 20:16:02 2015 -0700 + + rgw: add rgwx-copy-if-newer http header + + Similar to IF_MOD_SINCE, but does not take a time argument, and should + protected against races (not there yet). + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 8813a4401198636e0f4d3a220a0f726625a5c5d4) + +commit 054a90edb2812f78426b8cb1dac2e768b2e7fc51 +Merge: 785ffd1 c722d00 +Author: Orit Wasserman +Date: Tue Jun 7 15:48:00 2016 +0200 + + Merge pull request #8113 from Vicente-Cheng/wip-15023-hammer + + hammer: rgw: user quota may not adjust on bucket removal + Reviewed-by: Orit Wasserman + +commit 785ffd1f616864909b24314c803d12566c885d14 +Merge: e0a3589 139691c +Author: Samuel Just +Date: Mon Jun 6 12:42:14 2016 -0700 + + Merge pull request #9277 from ceph/wip-split-lfn-hammer + + Hammer LFN collection split fix: backport of http://tracker.ceph.com/issues/14766 + + Reviewed-by: Sage Weil + +commit e0a358972644d3718c80970fd7236a4df8e61afe +Merge: 735c524 006ea56 +Author: Josh Durgin +Date: Mon Jun 6 08:19:23 2016 -0700 + + Merge pull request #9521 from ceph/revert-9496-wip-16149-hammer + + Revert "hammer: Scrub error: 0/1 pinned" + + Reviewed-by: Josh Durgin + +commit 006ea56f603e160c83c8b1fe35ee8022321bf3b2 +Author: Sage Weil +Date: Mon Jun 6 11:15:54 2016 -0400 + + Revert "hammer: Scrub error: 0/1 pinned" + +commit 735c52423305d4ad548464e986ff88e57333b8ca +Merge: a1a5f57 c294bd3 +Author: Sage Weil +Date: Mon Jun 6 08:46:45 2016 -0400 + + Merge pull request #9496 from Vicente-Cheng/wip-16149-hammer + + hammer: Scrub error: 0/1 pinned + +commit a1a5f57558e30fc0fd581756a75da5abee3e897b +Merge: a336291 d1ab71f +Author: Orit Wasserman +Date: Mon Jun 6 11:39:34 2016 +0200 + + Merge pull request #8987 from dreamhost/hammer-wip-pr7712 + + hammer: rgw: S3: set EncodingType in ListBucketResult + Reviewed-by: Orit Wasserman + +commit c294bd34e7e29f2c96e3277491c02ea26bf6da5c +Author: Samuel Just +Date: Fri May 20 13:59:10 2016 -0700 + + ReplicatedPG: adjust num_pinned in _delete_oid + + Fixes: http://tracker.ceph.com/issues/15952 + Signed-off-by: Samuel Just + (cherry picked from commit 907d4e25c676fd3e1c2be90ce8ab5b64b362b0bc) + +commit 43d1b92b97e0bb1c419341ba3c740fa632cafef0 +Author: David Zafman +Date: Tue May 17 17:14:07 2016 -0700 + + test: Fix grouping of mon_cephdf_commands by moving to MON_TESTS + + Signed-off-by: David Zafman + (cherry picked from commit 2fb0530a5650bcdb9c89d8bdd2504a7dd1642678) + + Conflicts: + qa/workunits/cephtool/test.sh (trivial) + +commit 300c11179290d9b119ff6f310efd1cf5b559b3e1 +Author: Yehuda Sadeh +Date: Tue Mar 22 18:14:57 2016 -0700 + + rgw: convert plain object to versioned (with null version) when removing + + Fixes #15243 + + When removing a plain null versioned object (was created prior to bucket versioning + enabled), need to convert the bucket index representation to a versioned one. This + is needed so that all the versioning mechanics play together. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit c6334d430b17739fed2df2b4481ae395ef6568d9) + + Conflicts: + src/rgw/rgw_rados.cc + - hammer is missing get_zone() API from which log_data can be + obtained. Needed to fall back to zone_public_config + structure in bucket_index_unlink_instance() definition. + - olh_tag string parameter added to + bucket_index_unlink_instance() definition. + src/rgw/rgw_rados.h + - olh_tag string parameter added to + bucket_index_unlink_instance() declaration. + +commit 4eea92b4a50e06d850c39009d122f8bbbd48c857 +Author: Yehuda Sadeh +Date: Thu May 5 14:02:25 2016 -0700 + + rgw: handle stripe transition when flushing final pending_data_bl + + Fixes: http://tracker.ceph.com/issues/15745 + + When complete_writing_data() is called, if pending_data_bl is not empty + we still need to handle stripe transition correctly. If pending_data_bl + has more data that we can allow in current stripe, move to the next one. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit b7a7d41839558b1a8786a66e27d9d80e606f61c7) + + Conflicts: + src/rgw/rgw_rados.cc (hammer write_data() takes rgw_obj reference as + 4th argument, hammer throttle_data() takes rgw_obj as 2nd argument) + +commit f6076dd0416dd4464955f208d8964ef136b6142b +Author: Zhi Zhang +Date: Tue May 3 17:12:26 2016 +0800 + + mds: wrongly treat symlink inode as normal file/dir when symlink inode is stale on kcephfs + + Signed-off-by: Zhi Zhang + (cherry picked from commit 88b6d669e37924536152a552db46ef43a7353562) + + Conflicts: + src/mds/Server.cc (hammer has req->head.args.open.flags instead of just flags) + +commit ce313cd89e29c0cfc6b7c600a82bdea7b351cdbd +Author: Radoslaw Zarzynski +Date: Tue May 10 17:45:20 2016 +0200 + + rgw: handle errors properly during GET on Swift's DLO. + + Backport: Jewel, Hammer + Fixes: http://tracker.ceph.com/issues/15812 + Signed-off-by: Radoslaw Zarzynski + (cherry picked from commit 5ef0202a86a1e4cb56bd29d926555f114a1acdd8) + + Conflicts: + src/rgw/rgw_op.cc (hammer uses ret instead of op_ret; enclosing if + block in hammer does not check skip_manifest) + +commit 410ff1528caafaec0cfd9ea6ee4b86ed6788b09d +Author: Sage Weil +Date: Fri May 6 09:09:43 2016 -0400 + + osdc/Objecter: upper bound watch_check result + + This way we always return a safe upper bound on the amount of time + since we did a check. Among other things, this prevents us from + returning a value of 0, which is confusing. + + Fixes: http://tracker.ceph.com/issues/15760 + Signed-off-by: Sage Weil + (cherry picked from commit 2e2ce365866a7569b55aff338a82c132aa927089) + + Conflicts: + src/osdc/Objecter.cc + By https://github.com/ceph/ceph/pull/8967, simply add 1 to return vaule. + +commit d3eae0a01ae8d33988ffccee1f0af145aa10fa33 +Author: Xinze Chi +Date: Mon May 23 21:38:39 2016 +0800 + + osd: fix omap digest compare when scrub + + Introduce by fe1c28dea4e5607a0c72eab1f046074616cd55a7. + + Fixes: http://tracker.ceph.com/issues/16000 + Signed-off-by: Xinze Chi + +commit a33629106ec64acdaba45bf9db18d2402a926b8e +Merge: b9b5f96 dd29310 +Author: Sage Weil +Date: Sat May 21 14:18:25 2016 -0400 + + Merge pull request #9240 from yehudasa/wip-15886-hammer + + rgw: keep track of written_objs correctly + +commit dd29310bd6273ec3643bf90e51f7cae4801629c7 +Author: Yehuda Sadeh +Date: Mon May 16 14:35:12 2016 -0700 + + rgw: keep track of written_objs correctly + + Fixes: http://tracker.ceph.com/issues/15886 + + Only add a rados object to the written_objs list if the write + was successful. Otherwise if the write will be canceled for some + reason, we'd remove an object that we didn't write to. This was + a problem in a case where there's multiple writes that went to + the same part. The second writer should fail the write, since + we do an exclusive write. However, we added the object's name + to the written_objs list anyway, which was a real problem when + the old processor was disposed (as it was clearing the objects). + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 8fd74d11682f9d0c9085d2dc445fc3eb5631f6e0) + +commit c2ea6dbd652782bb227b7787c486660871b2d950 +Author: Kefu Chai +Date: Mon May 9 15:01:46 2016 +0800 + + osd: remove all stale osdmaps in handle_osd_map() + + in a large cluster, there are better chances that the OSD fails to trim + the cached osdmap in a timely manner. and sometimes, it is just unable + to keep up with the incoming osdmap if skip_maps, so the osdmap cache + can keep building up to over 250GB in size. in this change + + * publish_superblock() before trimming the osdmaps, so other osdmap + consumers of OSDService.superblock won't access the osdmaps being + removed. + * trim all stale osdmaps in batch of conf->osd_target_transaction_size + if skip_maps is true. in my test, it happens when the osd only + receives the osdmap from monitor occasionally because the osd happens + to be chosen when monitor wants to share a new osdmap with a random + osd. + * always use dedicated transaction(s) for trimming osdmaps. so even in + the normal case where we are able to trim all stale osdmaps in a + single batch, a separated transaction is used. we can piggy back + the commits for removing maps, but we keep it this way for simplicity. + * use std::min() instead MIN() for type safety + + Fixes: http://tracker.ceph.com/issues/13990 + Signed-off-by: Kefu Chai + (cherry picked from commit 369db9930887d75b498927da9c97733bff4472b6) + + Conflicts: + remove the C++11ism + +commit ac0340ad30329df7919ce82938ad49d0a2e2d160 +Author: Kefu Chai +Date: Wed Mar 16 21:15:35 2016 +0800 + + osd: populate the trim_thru epoch using MOSDMap.oldest_map + + instead of filling MOSDMap with the local oldest_map, we share + the maximum MOSDMap.oldest_map received so far with peers. That + way one OSD's failure to trim won't prevent it from sharing with + others that they are allowed to trim. + + Fixes: #13990 + Signed-off-by: Kefu Chai + (cherry picked from commit 9789c29fe0f82b236703f7ae4d356251fde3a46f) + + Conflict: use atomic_t instead of std::atomic<> + +commit b9b5f966ddfe7e706c038db204271ee662e0d825 +Merge: b90c097 bb5e015 +Author: Sage Weil +Date: Wed May 18 17:02:26 2016 -0400 + + Merge pull request #9164 from liewegas/wip-osdmapcrc-hammer + + osd: dump full map bl at 20 when crc doesn't match + +commit bb5e015d50cb50361dd6ce258c720fe798b3835a +Author: Sage Weil +Date: Sun Sep 6 13:56:38 2015 -0400 + + osd: dump full map bl at 20 when crc doesn't match + + This will help us debug cases where the encoding doesn't match due + to a bug. + + Signed-off-by: Sage Weil + (cherry picked from commit bfe359af0b80f44ca04847f74d5a2d81097ce4e6) + +commit 5057c34ebe4f93792f058ea5f2e3c7e0a29b3d3d +Author: Dmitry Yatsushkevich +Date: Mon Mar 23 11:05:44 2015 -0700 + + obj_bencher: cosmetic display fixes + + fix indents in output + change `snprintf' to `setprecision' + + Signed-off-by: Dmitry Yatsushkevich + (cherry picked from commit ddb422f40394ec2f4fc4a6a6cff49e43538121a9) + Signed-off-by: Brad Hubbard + +commit 6d8ad0edf6bae57a6e8ca5cc1a7add1659a92691 +Author: Brad Hubbard +Date: Fri May 6 15:05:42 2016 +1000 + + common: Add space between timestamp and "min lat:" in bench output + + This change is taken from 069d95eaf49cadaa9a8fa1fa186455944a50ec7d + but I did not want to cherry-pick that patch since the rest of it + is purely cosmetic and would be unlikely to apply cleanly. + + Signed-off-by: Brad Hubbard + +commit b90c097ddd3e172df4534509309a554cb3bc3917 +Merge: aefe2cb aab3a40 +Author: Loic Dachary +Date: Mon May 16 13:02:44 2016 +0200 + + Merge pull request #8535 from asheplyakov/bug-14512-hammer + + hammer: rbd snap rollback: restore the link to parent + + Reviewed-by: Jason Dillaman + +commit 31849986896ba6b5fd2b0b13023b50f67842fd28 +Author: Adam Kupczyk +Date: Wed Mar 2 12:31:01 2016 +0100 + + [MON] Fixed calculation of %USED. Now it is shows (space used by all replicas)/(raw space available on OSDs). Before it was (size of pool)/(raw space available on OSDs). + + Signed-off-by: Adam Kupczyk akupczyk@mirantis.com + (cherry picked from commit 71c4e525f27b8efd2aa4f3b5e95f4a13f123d41a) + +commit fed256e40f5465959384735be957dec88733aeb7 +Author: Ruifeng Yang +Date: Tue Jan 12 22:08:41 2016 +0800 + + mon: add a column 'RAW USED' for ceph df detail + + Signed-off-by: Ruifeng Yang + (cherry picked from commit 2b597ae6d4d53974f28a2da090232577daf09979) + + Conflicts: + qa/workunits/cephtool/test.sh (trivial) + src/mon/PGMonitor.cc (trivial) + src/mon/PGMonitor.h (trivial) + +commit aefe2cb4f262112f0a028797733f868b83da7bd2 +Merge: d56bdf9 221efb0 +Author: Loic Dachary +Date: Thu May 12 23:17:51 2016 +0200 + + Merge pull request #9107 from SUSE/wip-15867-hammer + + hammer: ceph-disk s/by-parttype-uuid/by-parttypeuuid/ + + Reviewed-by: Loic Dachary + +commit 139691c646809f6c25d72c8de064f26b3c036197 +Author: Samuel Just +Date: Thu May 12 13:50:58 2016 -0700 + + src/test/objectstore/store_test.cc: fix shards for new tests + + This didn't matter on master/jewel, but in hammer, keyvaluestore + asserts that gen != NO_GEN => shard != NO_SHARD. + + Signed-off-by: Samuel Just + +commit 221efb0b893adbfd7a19df171cf967fee87afcc7 +Author: Nathan Cutler +Date: Thu May 12 20:06:06 2016 +0200 + + doc: s/by-parttype-uuid/by-parttypeuuid/ in ceph-disk + + Fixes: http://tracker.ceph.com/issues/15867 + Signed-off-by: Nathan Cutler + +commit 62f4fbe66f8af79fb874125743df0433aa92b731 +Author: Samuel Just +Date: Fri Mar 11 17:02:15 2016 -0800 + + store_test: improve synthetic coverage of the ec stash case + + Signed-off-by: Samuel Just + (cherry picked from commit f3a78e046d54260de01a4d1db8e104130e35cf42) + + Conflicts: + src/test/objectstore/store_test.cc + +commit b6bc9cbaef99670bc0fc55936ab02a3656ec8bfd +Author: Samuel Just +Date: Fri Mar 11 14:05:37 2016 -0800 + + store_test: improve synthetic test coverage of long object names + + 1/2 of objects will now have long names, and we'll shift the region + of the hash space where new objects are created every 1024 objects + created. + + Signed-off-by: Samuel Just + (cherry picked from commit 4b44720f752ebac63454ecd338e2b0c77c8fe501) + + Conflicts: + src/test/objectstore/store_test.cc + +commit ec74c1281e641a45de039f2c168b50902e514729 +Author: Samuel Just +Date: Thu Mar 10 15:38:26 2016 -0800 + + TestRados: make half the objects have long names + + Signed-off-by: Samuel Just + (cherry picked from commit 8b64432d07a14df9dfd2ed1314783de16530b1d1) + +commit 9d1ee7cf390154c5939a01ff439e33d303a952c2 +Author: Samuel Just +Date: Thu Mar 10 15:19:15 2016 -0800 + + LFNIndex::lfn_translate: consider alt attr as well + + If the file has an alt attr, there are two possible matching + ghobjects. We want to make sure we choose the right one for + the short name we have. If we don't, a split while there are + two objects linking to the same inode will result in one of + the links being orphaned in the source directory, resulting + in #14766. + + Signed-off-by: Samuel Just + (cherry picked from commit 850ce11ea3c4dacc6ff1a3ce7ff37000818267c2) + +commit 6b821cc8f394e59760e3d58d27f382976bb69e13 +Author: Samuel Just +Date: Thu Mar 10 11:06:06 2016 -0800 + + LFNIndex::created: fix return value with failure injection + + See comment for explanation. + + Signed-off-by: Samuel Just + (cherry picked from commit aec5560887a1c1dbbb5aba822280e2c1e05d5d8f) + +commit f500435da3ddf750cf0770c0f63e9cff0cebd7a7 +Author: Samuel Just +Date: Thu Mar 10 11:03:13 2016 -0800 + + store_test: add reproducer for #14766 + + Signed-off-by: Samuel Just + (cherry picked from commit 0fb67c772561aaca9261ac9094b74d7524498f6f) + + Conflicts: + src/test/objectstore/store_test.cc + +commit cbd5aafe93a5c85392a460a183862f62af2836b8 +Author: Sage Weil +Date: Fri Apr 29 15:24:09 2016 -0400 + + osd/PG: update info.stats.* mappings on split + + These are updated in the init and start_peering_interval paths, but not + on split. + + Fixes: http://tracker.ceph.com/issues/15523 + Signed-off-by: Sage Weil + (cherry picked from commit 8b42294d98dd70715184991da5ba495fbe93d009) + +commit d1ab71ff6084719e86e07a447f3054af73e40868 +Author: Vitja Makarov +Date: Wed Feb 17 13:46:18 2016 +0300 + + hammer: rgw: S3: set EncodingType in ListBucketResult + + Signed-off-by: Victor Makarov + (cherry picked from commit d2e281d2beb0a49aae0fd939f9387cb2af2692c8) + X-Github-PR: 7712 + Backport: hammer + Signed-off-by: Robin H. Johnson + +commit df4eadc2376bb4a53210e2fe176520887b840f2f +Author: Gu Zhongyan +Date: Wed Dec 30 16:42:07 2015 +0800 + + rados: Add units to rados bench output + + Fixes: #12248 + Signed-off-by: Gu Zhongyan + Reviewed-by: Sage Weil + (cherry picked from commit 669b932934d60bbfa751cebd9340f11bd95e2853) + Signed-off-by: Brad Hubbard + +commit d96086af5d54a7450f3823210323b9fe08fc075a +Author: Samuel Just +Date: Wed Dec 2 17:20:19 2015 -0800 + + PGLog::rewind_divergent_log: fix rollback_info_trimmed_to before index() + + Fixes: #13965 + Signed-off-by: Samuel Just + (cherry picked from commit 053ee919059b2671d40110e8dff8615dc13d34e0) + +commit e79162de4cb418576ca633d5c7ea6fb766706962 +Author: Samuel Just +Date: Wed Dec 2 17:17:57 2015 -0800 + + TestPGLog: add test for 13965 + + Signed-off-by: Samuel Just + (cherry picked from commit 66c7246491f4b6e5b95d80cc93c9157725a1a778) + +commit fb1b40f5e2da1b70d9ff026a75196c79d09cf0c6 +Author: Jianpeng Ma +Date: Sun Mar 22 22:07:24 2015 +0800 + + osd/Replicated: For CEPH_OSD_OP_WRITE, set data digest. + + Add two cases which can add data digest for OP_WRITE: + a: offset = 0, and length > original size + b: offset = original size, and original has data_digest. + + Signed-off-by: Jianpeng Ma + (cherry picked from commit c7702bf85d3617b3e1c6619b8ebeff34932fc3e4) + +commit f0242598ea7c990aef2d00f3dc6a0cd65656332c +Author: Jianpeng Ma +Date: Mon Mar 23 09:54:52 2015 +0800 + + osd/ReplicatedPG: For obj has omap, it mean have omap data or omap header or have both. + + Signed-off-by: Jianpeng Ma + (cherry picked from commit fc51ce2a837e8e878d46d8ca54531aa7bd5d01b2) + +commit 7b3f1da0ab7f60705b6bc802ddb1bfbce10c8738 +Author: Sage Weil +Date: Mon Mar 28 10:33:53 2016 -0400 + + mon/MonClient: fix shutdown race + + While we are shutting down, we should drop all subsequent mon + messages. Currently it is possible to finish the authentication + sequence *while* we are shutting down, such that a subsequent + attempt to authenticate succeeds. + + Fix this by resetting cur_con early in the sequence, as this + makes us drop all incoming messages. + + Fixes: http://tracker.ceph.com/issues/13992 + Signed-off-by: Sage Weil + (cherry picked from commit 5b44a348bfe4978446bbc7acf58eb8f60a47c965) + +commit ec02d8b7b1610bd7fd00c201fb01ef80d3b9f05b +Author: Kefu Chai +Date: Tue Apr 12 17:31:27 2016 +0800 + + PG: set epoch_created and parent_split_bits for child pg + + if we have a wrong "created", OSD receiving an osd_pg_create message + could fail to project its history and crash. a bad split_bits could + mislead the monitor and osd, and hence cause problems. + * set child.info.history.epoch_created to osdmap.get_epoch() instead of + using the parent's epoch_created + * set child.info.stats.parent_split_bits to the calculated split_bits + instead using the parent's split_bits + + Fixes: http://tracker.ceph.com/issues/15426 + Signed-off-by: Kefu Chai + (cherry picked from commit 8b985561ba08d4ed2d7751a8e09f9d9067c5fbd3) + +commit 049bc8a498d4ab516c2daded8ac44699aa72c982 +Author: Zhi Zhang +Date: Thu Jan 14 11:04:42 2016 +0800 + + ceph-fuse: double decreased the count to trim caps + + Signed-off-by: Zhi Zhang zhangz.david@outlook.com + (cherry picked from commit d8a3f6d839649243b12cd6f73e6cb8aec1f955c1) + +commit e20df8020458a7b7679d0105183f870220ed0ce7 +Author: Sage Weil +Date: Fri Apr 8 10:35:29 2016 -0400 + + osd/ReplicatedPG: make handle_watch_timeout no-op if !active + + During on_change, we clean up old events on the obcs. This can + include a queued watch timeout: + + 3: (ReplicatedPG::handle_watch_timeout(std::shared_ptr)+0x125) [0x7f1fc21fe375] + 4: (HandleDelayedWatchTimeout::finish(int)+0xd3) [0x7f1fc213e2e3] + 5: (Context::complete(int)+0x9) [0x7f1fc20ead29] + 6: (ReplicatedPG::finish_degraded_object(hobject_t const&)+0x354) [0x7f1fc22429e4] + 7: (ReplicatedPG::on_change(ObjectStore::Transaction*)+0x2ba) [0x7f1fc224353a] + 8: (PG::start_peering_interval(std::shared_ptr, std::vector > const&, int, std::vector > const&, int, ObjectStore::Transaction*)+0x7bd) [0x7f1fc219a0bd] + + In this case, handle_watch_timeout should not assume that we are + active and primary. + + Fixes: http://tracker.ceph.com/issues/15391 + Signed-off-by: Sage Weil + (cherry picked from commit 4b0e39ee11e7bd5079ff6704bc74627d3ba8ba44) + +commit 3cb72dd57f901f400d19022269fb098c06318d6b +Author: Danny Al-Gaaf +Date: Tue Jun 9 14:57:54 2015 +0200 + + mon/OSDMonitor.cc: fix UNINTENDED_INTEGER_DIVISION + + Fix for: + + CID 1297885 (#1 of 2): Result is not floating-point (UNINTENDED_INTEGER_DIVISION) + integer_division: Dividing integer expressions g_conf->mon_pool_quota_warn_threshold + and 100, and then converting the integer quotient to type float. Any remainder, + or fractional part of the quotient, is ignored. + + CID 1297885 (#2 of 2): Result is not floating-point (UNINTENDED_INTEGER_DIVISION) + integer_division: Dividing integer expressions g_conf->mon_pool_quota_crit_threshold + and 100, and then converting the integer quotient to type float. Any remainder, + or fractional part of the quotient, is ignored. + + Signed-off-by: Danny Al-Gaaf + (cherry picked from commit be7e07a52871e16e8a46accde6171077cca8db5a) + +commit aab3a40f95dafab34a7eadc2159d142a5f0f88f1 +Author: Alexey Sheplyakov +Date: Mon Apr 11 14:16:48 2016 +0300 + + hammer: rbd snap rollback: restore the link to parent + + So snapshot, flatten, rollback of a cloned image does not loose any data + + Fixes: #14512 + Signed-off-by: Alexey Sheplyakov + +commit 488a78794d800312f79f7a8cd75dfda3bf3d6ed0 +Author: Samuel Just +Date: Fri Jan 8 13:26:39 2016 -0800 + + ECBackend: send subop writes and reads at normal priority + + We want these to be processed ahead of new client ops since + there are resources being held. + + Fixes: 14313 + Backport: hammer + Signed-off-by: Samuel Just + (cherry picked from commit b1151c4b8b7f22c7ac067da059d087007b0bc8ea) + +commit a2e7ca15d6fd0326526b77f443c15067eb1840ac +Author: Richard W.M. Jones +Date: Mon Mar 21 14:24:35 2016 +0000 + + common/Cycles: Do not initialize Cycles globally. + + Move initialization to the few tests that actually use it. + + Fixes: http://tracker.ceph.com/issues/15225 + Signed-off-by: Richard W.M. Jones + (cherry picked from commit 1c2831a2c1277c69f9649200d74a75c04a4b0296) + + Conflicts: + src/test/msgr/perf_msgr_client.cc + src/test/msgr/perf_msgr_server.cc + src/test/perf_local.cc + These three files were not introduced on hammer, just remove + +commit ca0beef84812b09f1ab224e4796fd44c8fe37989 +Author: David Zafman +Date: Fri Mar 18 10:42:40 2016 -0700 + + osd/OSD: fix build_past_intervals_parallel + + We may be only calculating older past intervals and have a valid + history.same_interval_since value, in which case the local + same_interval_since value will end at the newest old interval we had to + generate. + + Same as 0830275b39afc408573c2c468fa3b0e7b1d5cc4e change in generate_past_intervals() + This was introduced by 70316541bbb115d9a35954bfba373cf1dc084b7e. + + Signed-off-by: David Zafman + (cherry picked from commit 0fd674bbf0c17a673be40123645adee3d64375a0) + +commit fce79027034bef0cfedbecd9d2601589495f86e6 +Author: David Zafman +Date: Mon Jul 20 17:48:15 2015 -0700 + + osd: When generating past intervals due to an import end at pg epoch + + Add assert() to make sure same_interval_since isn't too far forward + + Fixes: #12387 + + Signed-off-by: David Zafman + (cherry picked from commit 65dcc2da76750d0b6dd2cf0031c44f32749f33e5) + +commit 2c97cb33c8aa3f53af8a331075a3f79e70113cea +Author: xie xingguo +Date: Thu Mar 31 19:48:38 2016 +0800 + + rgw: fix compiling error + + Signed-off-by: xie xingguo + (cherry picked from commit 535eb0e608f3bf6b7c561f277e9977b91ab97b48) + +commit 2aa1ea6b505c768323abb99dcc8c8f24e594a898 +Author: Robin H. Johnson +Date: Thu Mar 31 06:24:40 2016 +0000 + + rgw: Multipart ListPartsResult ETag quotes + + ListPartsResult output has always missed quotes on the ETag since it was + first committed. + + Fixes: #15334 + Backports: hammer, infernalis + Signed-off-by: Robin H. Johnson + (cherry picked from commit a58b774e72cc1613d62e10b25322d6d15e9d2899) + +commit 365f21b1181b08e0bb89b916833301228e7c9efc +Author: Loic Dachary +Date: Wed Apr 6 15:39:23 2016 +0200 + + tests: be more generous with test timeout + + When the thrasher is in action together with a validater (lockdep or + valgrind), a single test may hang for more than 360 seconds. Increase to + 1200: it does not matter if the value is large, only that it prevents + the test from hanging forever. + + Fixes: http://tracker.ceph.com/issues/15403 + + Signed-off-by: Loic Dachary + (cherry picked from commit af89474b3fb2c4aa63680aa6b30d71fad2fdd373) + +commit c722d00af5286785ad23c574359220e47fd15076 +Author: Vicente Cheng +Date: Tue Feb 9 12:03:24 2016 -0800 + + rgw: user quota may not adjust on bucket removal + + Description: + If the user/admin removes a bucket using --force/--purge-objects options with s3cmd/radosgw-admin respectively, the user stats will continue to reflect the deleted objects for quota purposes, and there seems to be no way to reset them. User stats need to be sync'ed prior to bucket removal. + + Solution: + Sync user stats before removing a bucket. + + Fixes: #14507 + Signed-off-by: Edward Yang + (cherry picked from commit 06507992e3fad837c4667f467d59fc026a2ca0e8) + + Conflicts: + + src/rgw/rgw_op.cc + reordering the check seqence and replace some op_ret to ret + + Backport Change: + We remove the `tenant` parameter because this feature is not introduced on hammer version. + The rgw multi-tenant feature is introduced on pr#6784 (https://github.com/ceph/ceph/pull/6784) + This feature is supported from v10.0.2 and later version. + +commit 20f300e2900ff123974312143c10dca59ee1a64a +Author: Wido den Hollander +Date: Tue Mar 22 11:35:05 2016 +0100 + + rgw: Do not send a Content-Length header on a 304 response + + We tell the client that the content has not changed. If we + send a Content-Length header RFC2616 describes that the client + MUST use that new value: + + "If a cache uses a received 304 response to update a cache entry, + the cache MUST update the entry to reflect any new field values + given in the response." + + Therefor we should not send a Content-Length header + + Fixes: #15119 + + Signed-off-by: Wido den Hollander + (cherry picked from commit fb4e5cc5d6adc82423d294496855f56e43e8c11d) + +commit e53751d0e52f6fb611d9bd81fe2115cd7ce533b3 +Author: Wido den Hollander +Date: Mon Mar 21 16:50:49 2016 +0100 + + rgw: Do not send a Content-Type on a '304 Not Modified' response + + When we say the Content has not changed we should not respond + with a content type which defaults to binary/octet stream. + + Fixes: #15119 + + Signed-off-by: Wido den Hollander + (cherry picked from commit 471fa29e643fcfd5e1383fb987f99b5b21038ed7) + +commit 19dbc2598d15d0676017abe4fb75f7ddc3248119 +Author: Yehuda Sadeh +Date: Fri Dec 18 10:18:22 2015 -0800 + + rgw: dump_status() uses integer + + so that we can avoid atoi() later + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 744a29a34b72d2a709a58a5ea5fb6223a39c676a) + + Conflicts: + src/rgw/rgw_rest.cc + rename the input parameter from `err` to `http_ret` + +commit c79b481311b3cd992794abc6e2f194f350d43531 +Author: Yehuda Sadeh +Date: Fri Dec 18 10:07:27 2015 -0800 + + rgw: move status_num initialization into constructor + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 2a12ffc3d7f98504ece8906a6fcb5dac8fd81aba) + +commit ceb8e19096f7d4ef35ed3ad8fad508aecbfa78ef +Author: Wido den Hollander +Date: Wed Nov 11 19:01:15 2015 +0100 + + rgw: Do not send a Content-Length header on status 204 + + RFC7230 says: + A server MUST NOT send a Content-Length header field in any response with a + status code of 1xx (Informational) or 204 (No Content). + + Fixes: #13582 + Signed-off-by: Wido den Hollander + (cherry picked from commit 4e5921dbc7d1c51feb4cc5c03aa59a432742765e) + +commit 3ecdedd5cfe67d85530123ed6684688b43910aa6 +Author: Yan, Zheng +Date: Fri Mar 11 11:13:43 2016 +0800 + + mds: fix stray purging in 'stripe_count > 1' case + + Fixes: #15050 + Signed-off-by: Yan, Zheng + (cherry picked from commit 99ec183973e0f4686673d93df02e5381543be51f) + +commit f28477c9cf904e9b27e6ad6bb38fbeeb80db5017 +Author: Dunrong Huang +Date: Mon Dec 28 18:55:37 2015 +0800 + + rgw: do not abort when user passed bad parameters to set quota + + when user passes bad parameter(e.g. pass "null" to bool parameter), the ceph_json.cc::decode_json_obj() + will raise a exception with type of JSONDecoder::err(). If we do not catch this exception, the radosgw + server will abort. + + Fixes: #14191 + + $ curl -X PUT http://ceph1:9090/admin/user?quota&uid=test5"a-type=user -d '{"enabled": "null"}' + + 0> 2015-12-28 11:25:20.864091 7f0d46fb5700 -1 *** Caught signal (Aborted) ** + in thread 7f0d46fb5700 + + ceph version 10.0.1-787-gc485d29 (c485d29a53f6a2c1a3b561c54632dbac1c4e9473) + 1: (ceph::BackTrace::BackTrace(int)+0x2d) [0x7f0e13ef88c5] + 2: (()+0x8fbfb7) [0x7f0e13ef7fb7] + 3: (()+0xf100) [0x7f0e082c3100] + 4: (gsignal()+0x37) [0x7f0e072fd5f7] + 5: (abort()+0x148) [0x7f0e072fece8] + 6: (__gnu_cxx::__verbose_terminate_handler()+0x165) [0x7f0e07c019b5] + 7: (()+0x5e926) [0x7f0e07bff926] + 8: (()+0x5e953) [0x7f0e07bff953] + 9: (()+0x5eb73) [0x7f0e07bffb73] + 10: (bool JSONDecoder::decode_json(char const*, bool&, JSONObj*, bool)+0x288) [0x7f0e13d74c2c] + 11: (RGWQuotaInfo::decode_json(JSONObj*)+0x6c) [0x7f0e13d71128] + 12: (void decode_json_obj(RGWQuotaInfo&, JSONObj*)+0x23) [0x7f0e13d21f16] + 13: (int rgw_rest_get_json_input(CephContext*, req_state*, RGWQuotaInfo&, int, bool*)+0x11e) [0x7f0e13d21e48] + 14: (RGWOp_Quota_Set::execute()+0x8c9) [0x7f0e13d1ed6d] + 15: (()+0x7532d2) [0x7f0e13d4f2d2 + + Reported-by: Coffee Chou + Signed-off-by: Dunrong Huang + (cherry picked from commit 59f9058467480d21bd98e0e90aa97313a92478a1) + + Conflicts: + src/rgw/rgw_rest.h + hammer version lacks rgw_rest_get_json_input_keep_data() + template + +commit 9786394b2f75d883505125bc45c95fb685b96531 +Author: Dunrong Huang +Date: Mon Dec 28 18:14:22 2015 +0800 + + rgw: do not abort when user passed bad parameters to set metadata + + Fixes: #14190 + + when user passes bad parameter(e.g. pass "null" to bool parameter), the ceph_json.cc::decode_json_obj() + will raise a exception with type of JSONDecoder::err(). If we do not catch this exception, the radosgw + server will abort. + + $ curl -X PUT http://ceph1:9090/admin/metadata?user&format=json -d 'data = { "mtime": "null"}' + + terminate called after throwing an instance of 'JSONDecoder::err' + *** Caught signal (Aborted) ** + in thread 7ff982f55700 + ceph version 10.0.1-787-gc485d29 (c485d29a53f6a2c1a3b561c54632dbac1c4e9473) + 1: (ceph::BackTrace::BackTrace(int)+0x2d) [0x7ffa814db8c5] + 2: (()+0x8fbfb7) [0x7ffa814dafb7] + 3: (()+0xf100) [0x7ffa758a6100] + 4: (gsignal()+0x37) [0x7ffa748e05f7] + 5: (abort()+0x148) [0x7ffa748e1ce8] + 6: (__gnu_cxx::__verbose_terminate_handler()+0x165) [0x7ffa751e49b5] + 7: (()+0x5e926) [0x7ffa751e2926] + 8: (()+0x5e953) [0x7ffa751e2953] + 9: (()+0x5eb73) [0x7ffa751e2b73] + 10: (bool JSONDecoder::decode_json(char const*, long&, JSONObj*, bool)+0x28c) [0x7ffa8135920a] + 11: (RGWMetadataManager::put(std::string&, ceph::buffer::list&, RGWMetadataHandler::sync_type_t, obj_version*)+0x173) [0x7ffa81468029] + 12: (RGWOp_Metadata_Put::execute()+0x172) [0x7ffa81308dcc] + 13: (()+0x7532d2) [0x7ffa813322d2] + 14: (RGWFCGXProcess::handle_request(RGWRequest*)+0x90) [0x7ffa813328a4] + + Reported-by: Coffee Chou + Signed-off-by: Dunrong Huang + (cherry picked from commit 83503239c81573232429a5fe98381f1a8f1357e9) + + Conflicts: + src/rgw/rgw_user.cc + hammer version uses RGWUserInfo instead of RGWUserCompleteInfo + +commit b9a4ad9da99d82bd247e5d39108840f19535fa5e +Author: Vicente Cheng +Date: Fri Mar 27 18:49:28 2015 +0800 + + Fixed the ceph get mdsmap assertion. + + When we want to get mdsmap, we try to get_version() + and the return value err = 0 means success. + + The assert verified r == 0. r would not change in this flow. + It always meet assert and lead mon failure. + + I think this verify should be: + assert(err == 0) + It will help to check return value of get_version(). + + If you have any questions, feel free to let me know. + Thanks! + + Signed-off-by: Vicente Cheng + (cherry picked from commit f4398d2e6c245e3f81a6038425e1b8372b265b8c) -- cgit v1.2.3