From: Sage Weil Date: Tue, 10 Mar 2015 19:32:47 +0000 (-0700) Subject: doc/release-notes: v0.80.8 and .9 changelogs X-Git-Tag: v9.0.0~189 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5d5b510810e96503b9323b010149f7bd5b45db7c;p=ceph.git doc/release-notes: v0.80.8 and .9 changelogs Signed-off-by: Sage Weil --- diff --git a/doc/changelog/v0.80.8.txt b/doc/changelog/v0.80.8.txt new file mode 100644 index 00000000000..849e933b1f7 --- /dev/null +++ b/doc/changelog/v0.80.8.txt @@ -0,0 +1,2547 @@ +commit 69eaad7f8308f21573c604f121956e64679a52a7 (tag: refs/tags/v0.80.8) +Author: Jenkins +Date: Tue Jan 13 06:28:08 2015 -0800 + + 0.80.8 + +commit 3c7cacf00b66a0e17272cf67fe0823ee863dfa7c +Author: Sage Weil +Date: Tue Aug 19 16:43:02 2014 -0700 + + mon/OSDMonitor: fix double-free on old MOSDBoot + + send_latest() does an m->put(). + + Backport: firefly, dumpling + Signed-off-by: Sage Weil + (cherry picked from commit 97f9b6df668315fba6a5924b79024c7a986f4110) + +commit 852d7b5b3c019c02c042b767fc88916088e1a94d +Author: Sage Weil +Date: Thu Jan 8 11:17:03 2015 -0800 + + osd: requeue PG when we skip handling a peering event + + If we don't handle the event, we need to put the PG back into the peering + queue or else the event won't get processed until the next event is + queued, at which point we'll be processing events with a delay. + + The queue_null is not necessary (and is a waste of effort) because the + event is still in pg->peering_queue and the PG is queued. + + This is a firefly-specific patch; a (very) similar one will appear in master + in 492ccc900c3358f36b6b14a207beec071eb06707. + + Backport: giant, firefly + Signed-off-by: Sage Weil + +commit c26ebd38335bb361aade5aacd05ba3217e602b9c +Merge: b67b7e7 96ba529 +Author: Sage Weil +Date: Thu Jan 8 18:31:26 2015 -0800 + + Merge pull request #3217 from boydc2014/firefly + + clear data and payload after removed from ops_in_flight + + Reviewed-by: Sage Weil + +commit b67b7e7ad72a1af96f9fb26ade815e65f72b4cb0 +Merge: db92718 7faae89 +Author: Loic Dachary +Date: Fri Jan 9 01:32:17 2015 +0100 + + Merge pull request #3127 from ktdreyer/firefly-no-epoch + + Revert "ceph.spec.: add epoch" + + Reviewed-by: Ken Dreyer + Reviewed-by: Sage Weil + Reviewed-by: Samuel Just + Reviewed-by: Loic Dachary + +commit db927186288cd4c63a3483b42e9eb9e016c96156 +Merge: 0d4abda 820dbfd +Author: Loic Dachary +Date: Fri Jan 9 01:31:29 2015 +0100 + + Merge pull request #3128 from dachary/wip-10281-make-check-fedora-20 + + tests: fixes to run make check on fedora 20 + + + Reviewed-by: Sage Weil + Reviewed-by: Samuel Just + Reviewed-by: Loic Dachary + +commit 0d4abdaf80f1fedff7975d595abaac0a620c8035 +Merge: 1fdcb52 11995b3 +Author: Loic Dachary +Date: Fri Jan 9 01:30:59 2015 +0100 + + Merge pull request #3169 from ceph/wip-8797-firefly + + Wip 8797 firefly + + Reviewed-by: Sage Weil + Reviewed-by: Samuel Just + Reviewed-by: Loic Dachary + +commit 1fdcb524411a02b5627be66d9fd821a473223e9d +Merge: 4b7b1b0 465eede +Author: Loic Dachary +Date: Fri Jan 9 01:28:49 2015 +0100 + + Merge pull request #3179 from dachary/wip-9998-crush-underfloat-firefly + + crush: fix weight underfloat issue (firefly) + + + Reviewed-by: Sage Weil + Reviewed-by: Samuel Just + Reviewed-by: Loic Dachary + +commit 4b7b1b03bfcb7cb056783555884f211009ea5d46 +Merge: 4897ba4 f55b097 +Author: Loic Dachary +Date: Fri Jan 9 01:28:11 2015 +0100 + + Merge pull request #3220 from ceph/wip-mon-backports.firefly + + mon: backports for #9987 against firefly + + Reviewed-by: Joao Eduardo Luis + Reviewed-by: Sage Weil + Reviewed-by: Samuel Just + Reviewed-by: Loic Dachary + +commit 4897ba4a304bcac548b2121312cd7235c34dd5aa +Merge: efe801f f20225c +Author: Loic Dachary +Date: Fri Jan 9 01:26:30 2015 +0100 + + Merge pull request #3258 from ceph/wip-10372-firefly + + osd: fix librados pool deletion race on firefly + + Reviewed-by: Sage Weil + Reviewed-by: Samuel Just + Reviewed-by: Loic Dachary + +commit efe801ff3a0d25243da18937c07b89227edbaac4 +Author: Warren Usui +Date: Thu Dec 18 20:00:28 2014 -0800 + + If trusty, use older version of qemu + + Fixes #10319 + Signed-off-by: Warren Usui + (cherry-picked from 46a1a4cb670d30397979cd89808a2e420cef2c11) + +commit 96ba529ef8ce76e07b8444c94883afb3468d6762 +Author: Lei Dong +Date: Tue Dec 30 21:02:45 2014 +0800 + + clear data and payload inside ops_in_flight_lock + + http://tracker.ceph.com/issues/9916 Fixes: #9916 + Signed-off-by: Dong Lei + +commit e0648e3d30de504b096c4ae3bbe7d9c17652bdb5 +Merge: 455f940 3624006 +Author: Sage Weil +Date: Mon Dec 29 14:31:23 2014 -0800 + + Merge pull request #3264 from dachary/wip-jerasure-firefly + + erasure-code: update links to jerasure upstream + +commit 455f940908f242b1e34983af61351fd3045ce8ab +Merge: b1ab685 aa95a2d +Author: Sage Weil +Date: Mon Dec 29 10:55:39 2014 -0800 + + Merge pull request #3268 from ceph/firefly-10415 + + libcephfs/test.cc: close fd before umount + +commit 362400667aad0b5098fbe8dbec1b0bde059f84a6 +Author: Loic Dachary +Date: Sun Dec 28 10:29:54 2014 +0100 + + erasure-code: update links to jerasure upstream + + It moved from bitbucket to jerasure.org + + Signed-off-by: Loic Dachary + (cherry picked from commit 8e86f901939f16cc9c8ad7a4108ac4bcf3916d2c) + +commit aa95a2d20dbba2f3a775f709493c987d0d001e9c +Author: Yan, Zheng +Date: Tue Dec 23 10:22:00 2014 +0800 + + libcephfs/test.cc: close fd before umount + + Fixes: #10415 + Signed-off-by: Yan, Zheng + (cherry picked from commit d3fb563cee4c4cf08ff4ee01782e52a100462429) + +commit f20225cb99a0d2d08fccfdf88dc89d758ecba077 (refs/remotes/gh/wip-10372-firefly) +Author: Sage Weil +Date: Tue Dec 23 15:49:26 2014 -0800 + + osdc/Objecter: handle reply race with pool deletion + + We need to handle this scenario: + + - send request in epoch X + - osd replies + - pool is deleted in epoch X+1 + - client gets map X+1, sends a map check + - client handles reply + -> asserts that no map checks are in flight + + This isn't the best solution. We could infer that a map check isn't needed + since the pool existed earlier and doesn't now. But this is firefly and + the fix is no more expensive than the old assert. + + Fixes: #10372 + Signed-off-by: Sage Weil + +commit 820dbfd9947455d07426981b7152861c3c216080 +Author: Sage Weil +Date: Tue Aug 5 15:11:18 2014 -0700 + + test/ceph-disk.sh: mkdir -p + + Signed-off-by: Sage Weil + (cherry picked from commit c2f58e6694a2457200ab3d59e037ad17b9c82028) + +commit 77d393024f9d867b574b8ec8e15ec48a1a291511 +Author: Danny Al-Gaaf +Date: Thu Sep 4 12:23:27 2014 +0200 + + test/ceph-disk.sh: resolve symlinks before check + + Make sure symlinks are resolved in command_fixture() + before compare result of which command and the current + path. + + Signed-off-by: Danny Al-Gaaf + (cherry picked from commit 8ea86dfa7c4a3d7e089cf9d4e49586657875f851) + +commit ed6ec2936513d7dd6c45bccd8edf69a12c71dc7b +Author: Danny Al-Gaaf +Date: Tue Jun 24 19:54:17 2014 +0200 + + test/ceph-disk.sh: fix for SUSE + + On SUSE 'which' returns always the full path of (shell) commands and + not e.g. './ceph-conf' as on Debian. Add check also for full + path returned by which. + + Signed-off-by: Danny Al-Gaaf + (cherry picked from commit 39530536ff923b91899f6303507c283b78040a20) + +commit 754363f4563e7dbda1ef23fadc8d6ef1a3fdd0af +Author: Loic Dachary +Date: Fri Jun 13 14:41:39 2014 +0200 + + tests: prevent kill race condition + + When trying to kill a daemon, keep its pid in a variable instead of + retrieving it from the pidfile multiple times. It prevents the following + race condition: + + * try to kill ceph-mon + * ceph-mon is in the process of dying and removed its pidfile + * try to kill ceph-mon fails because the pidfile is not found + * another ceph-mon is spawned and fails to bind the port + because the previous ceph-mon is still holding it + + Signed-off-by: Loic Dachary + (cherry picked from commit a1c13c57ba20fc329d943ea57523913e11067dc7) + +commit 5be6f2f60e3225bf3d214432044721fe474d55d7 +Author: Danny Al-Gaaf +Date: Wed Jun 25 00:31:48 2014 +0200 + + osd/OSD.cc: parse lsb release data via lsb_release + + Use lsb_release tool to be portable since parsing /etc/lsb-release + is not the same between different distributions. The old code failed + e.g. for SUSE products to parse LSB information. + + Fixes: #8654 + + Signed-off-by: Danny Al-Gaaf + (cherry picked from commit 0b3a3987d382ff33fdf892f189b30df22be80e59) + +commit b62187c52324a4489c2fc1385b1d6574a058f7e8 +Author: Loic Dachary +Date: Tue Aug 26 21:59:39 2014 +0200 + + tests: histogram prevent re-use of local variables + + By moving the tests to separate functions. + + http://tracker.ceph.com/issues/9235 Fixes: #9235 + + Signed-off-by: Loic Dachary + (cherry picked from commit 4b8b25ecd128c34a386ad7c4cc89f323c4d384e1) + +commit e2741c8f1d42cfe91b18201a6a49005d90d85d98 +Author: Loic Dachary +Date: Tue Aug 26 21:59:39 2014 +0200 + + tests: histogram prevent re-use of local variables + + By moving the test to a separate function. + + http://tracker.ceph.com/issues/9235 Fixes: #9235 + + Signed-off-by: Loic Dachary + (cherry picked from commit ee02293ad2ef050672fa8c164ba17b10e8d4ceeb) + +commit cf102df7a3f3b38824c26b9e44a21664fcf979a7 +Author: Loic Dachary +Date: Wed Dec 10 00:08:57 2014 +0100 + + tests: avoid tab interpretation problem on fedora 20 + + Use . instead of tab in echo to avoid variations in how escape sequences + are interpreted by the shell. + + http://tracker.ceph.com/issues/10281 Fixes: #10281 + + Signed-off-by: Loic Dachary + +commit f55b097764beb973c12866f2d7161c6bd870aa07 (refs/remotes/gh/wip-mon-backports.firefly) +Author: Sage Weil +Date: Sun Nov 2 08:50:59 2014 -0800 + + mon/PGMap and PGMonitor: update last_epoch_clean cache from new osd keys + + We were only invalidating the cached value from apply_incremental, which + is no longer called on modern clusters. + + Fix this by storing the update epoch in the key as well (it is not part + of osd_stat_t). + + Backport: giant, firefly, dumpling(?) + Fixes: #9987 + Signed-off-by: Sage Weil + (cherry picked from commit 093c5f0cabeb552b90d944da2c50de48fcf6f564) + +commit 1d314e7a9ab7af5b693583cf2faa5db54f6beb69 +Author: Sage Weil +Date: Sun Nov 2 08:49:48 2014 -0800 + + mon/PGMap: invalidate cached min_last_epoch_clean from new-style pg keys + + We were only invalidating the cache from the legacy apply_incremental(), + which is no longer called on modern clusters. + + Fixes: #9987 + Signed-off-by: Sage Weil + (cherry picked from commit 3fb731b722c50672a5a9de0c86a621f5f50f2d06) + +commit 465eedea9f7411b1e352dc3ccee60a3f1221541d +Author: Sage Weil +Date: Sun Nov 23 18:50:51 2014 -0800 + + crush/CrushWrapper: fix create_or_move_item when name exists but item does not + + We were using item_exists(), which simply checks if we have a name defined + for the item. Instead, use _search_item_exists(), which looks for an + instance of the item somewhere in the hierarchy. This matches what + get_item_weightf() is doing, which ensures we get a non-negative weight + that converts properly to floating point. + + Backport: giant, firefly + Fixes: #9998 + Reported-by: Pawel Sadowski + Signed-off-by: Sage Weil + (cherry picked from commit 9902383c690dca9ed5ba667800413daa8332157e) + +commit cee51af9c1dbde550177c95caf6c93f612442300 +Author: Sage Weil +Date: Fri Nov 21 17:47:56 2014 -0800 + + crush/builder: prevent bucket weight underflow on item removal + + It is possible to set a bucket weight that is not the sum of the item + weights if you manually modify/build the CRUSH map. Protect against any + underflow on the bucket weight when removing items. + + Signed-off-by: Sage Weil + (cherry picked from commit 8c87e9502142d5b4a282b94f929ae776a49be1dc) + +commit 7ccd5eec11e8cd945d24bf9f6390d6c3fa4a06de +Author: Sage Weil +Date: Fri Nov 21 17:37:03 2014 -0800 + + crush/CrushWrapper: fix _search_item_exists + + Reported-by: Pawel Sadowski + Signed-off-by: Sage Weil + (cherry picked from commit eeadd60714d908a3a033aeb7fd542c511e63122b) + +commit b1ab685e00034751a161a3d5e0325c6581999c75 +Merge: dd7c8c2 ef3773a +Author: Sage Weil +Date: Fri Dec 12 06:19:50 2014 -0800 + + Merge pull request #3124 from ceph/wip-10194-firefly + + rgw: optionally call FCGX_Free() on the fcgi connection + + Reviewed-by: Sage Weil + +commit 11995b329045341c17553269267cfd3688a51b0f +Author: Dan Mick +Date: Wed Dec 10 13:19:53 2014 -0800 + + Call Rados.shutdown() explicitly before exit + + This is mostly a demonstration of good behavior, as the resources will + be reclaimed on exit anyway. + + Signed-off-by: Dan Mick + (cherry picked from commit b038e8fbf9103cc42a4cde734b3ee601af6019ea) + +commit e00270b51896f168d5013b7dc92ec7f8b9e19da3 +Author: Dan Mick +Date: Wed Dec 10 13:19:16 2014 -0800 + + rados.py: remove Rados.__del__(); it just causes problems + + Recent versions of Python contain a change to thread shutdown that + causes ceph to hang on exit; see http://bugs.python.org/issue21963. + As it turns out, this is relatively easy to avoid by not spawning + threads on exit, as Rados.__del__() will certainly do by calling + shutdown(); I suspect, but haven't proven, that the problem is + that shutdown() tries to start() a threading.Thread() that never + makes it all the way back to signal start(). + + Also add a PendingReleaseNote and extra doc comments to clarify. + + Fixes: #8797 + Signed-off-by: Dan Mick + (cherry picked from commit 5ba9b8f21f8010c59dd84a0ef2acfec99e4b048f) + + Conflicts: + PendingReleaseNotes + +commit 7faae891aefa4c21c50430fa03d9204a86d082f8 +Author: Ken Dreyer +Date: Tue Dec 9 14:52:19 2014 -0700 + + Revert "ceph.spec.: add epoch" + + If ICE ships 0.80.8, then it will be newer than what RHCEPH ships + (0.80.7), and users won't be able to seamlessly upgrade via Yum. + + We have three options: + A) Revert the "Epoch: 1" change on the Firefly branch. + B) Revert the "Epoch: 1" change in the ICE packages. + C) Bump the Epoch to "2" in Red Hat's packages. + + This commit does Option A. + + Option B may or may not be feasible - it would require a "downstream" + change in ICE, and we haven't done that sort of thing before. + + Due to the RHEL release schedule, Option C is not available to us at + this point. + + This reverts commit b890c1e4706d7cfef7ed24c9df65b439b4f7ff1d. + +commit ef3773ac93413c644e056babce1971f846bbc276 +Author: Yehuda Sadeh +Date: Wed Nov 26 15:18:07 2014 -0800 + + rgw: optionally call FCGX_Free() on the fcgi connection + + Fixes: #10194 + + A new configurable controls this behavior. This forces disconnection of + the fcgi connection when done with the request. + + Signed-off-by: Yehuda Sadeh + +commit dd7c8c2bc6b2810ff7f483af940fa09dbe74e83a +Merge: d759467 a597096 +Author: Gregory Farnum +Date: Mon Dec 8 15:02:52 2014 -0800 + + Merge pull request #3109 from ceph/firefly-10263 + + mds: store backtrace for straydir + + Reviewed-by: Greg Farnum + +commit d7594672b673796901961cc684c9e7de8dc2c95d +Merge: adf9a75 73b47db +Author: Samuel Just +Date: Mon Dec 8 13:19:44 2014 -0800 + + Merge pull request #3009 from dachary/wip-10018-primary-erasure-code-hinfo-firefly + + osd: deep scrub must not abort if hinfo is missing (firefly) + + Reviewed-by: Samuel Just + +commit a5970963a2148697fc6da64facfbf6ab6686b9cd +Author: Yan, Zheng +Date: Fri Nov 7 11:38:37 2014 +0800 + + mds: store backtrace for straydir + + Backport: giant, firefly, emperor, dumpling + Signed-off-by: Yan, Zheng + (cherry picked from commit 0d89db5d3e5ae5d552d4058a88a4e186748ab1d2) + +commit adf9a758000182d27a6582d516356730d02e4099 +Merge: dea38a7 b4a4b75 +Author: Sage Weil +Date: Sat Dec 6 11:06:02 2014 -0800 + + Merge pull request #3089 from dachary/wip-10063-hobject-shard-firefly + + common: do not omit shard when ghobject NO_GEN is set (firefly) + +commit dea38a7af638c833304272c324ed2bc386a40f8f +Merge: ccc8b46 5138091 +Author: Sage Weil +Date: Sat Dec 6 10:59:44 2014 -0800 + + Merge pull request #2480 from dachary/wip-9420-erasure-code-non-regression-firefly + + erasure-code: store and compare encoded contents (firefly) + +commit ccc8b46b2cdc55c1a861f092259ef36a1296f073 +Merge: bef363c cd3447d +Author: Sage Weil +Date: Fri Dec 5 17:33:05 2014 -0800 + + Merge pull request #3096 from dachary/wip-9785-dmcrypt-keys-permissions-firefly + + ceph-disk: dmcrypt file permissions (firefly) + +commit cd3447d04cabf6745001afeef69f25a92400cd0e +Author: Loic Dachary +Date: Thu Dec 4 22:21:32 2014 +0100 + + ceph-disk: dmcrypt file permissions + + The directory in which key files are stored for dmcrypt must be 700 and + the file 600. + + http://tracker.ceph.com/issues/9785 Fixes: #9785 + + Signed-off-by: Loic Dachary + (cherry picked from commit 58682d1776ab1fd4daddd887d921ca9cc312bf50) + +commit bef363c1d1fc06fbb315024145a97a809a2471cd +Merge: cb2c83b 9f3b21d +Author: Sage Weil +Date: Fri Dec 5 09:04:00 2014 -0800 + + Merge pull request #3086 from dachary/wip-10125-radosgw-init-firefly + + rgw: run radosgw as apache with systemd (firefly) + +commit b4a4b75e6d4deb6818681902f85baa9f63acdb4f +Author: Loic Dachary +Date: Fri Nov 14 01:16:10 2014 +0100 + + common: do not omit shard when ghobject NO_GEN is set + + Do not silence the display of shard_id when generation is NO_GEN. + Erasure coded objects JSON representation used by ceph_objectstore_tool + need the shard_id to find the file containing the chunk. + + Minimal testing is added to ceph_objectstore_tool.py + + http://tracker.ceph.com/issues/10063 Fixes: #10063 + + Signed-off-by: Loic Dachary + (cherry picked from commit dcf09aed121f566221f539106d10283a09f15cf5) + + Conflicts: + src/test/ceph_objectstore_tool.py + +commit 9f3b21d1b70be591d68bfa57c3393e8f9af8e7df +Author: Loic Dachary +Date: Tue Dec 2 18:10:48 2014 +0100 + + rgw: run radosgw as apache with systemd + + Same as sysv. + + http://tracker.ceph.com/issues/10125 Fixes: #10125 + + Signed-off-by: Loic Dachary + (cherry picked from commit 7b621f4abf63456272dec3449aa108c89504a7a5) + + Conflicts: + src/init-radosgw.sysv + +commit cb2c83b2f216e503f7a52115f775bda1dbfe0c6a +Merge: e2ec37b 02d4685 +Author: Josh Durgin +Date: Thu Dec 4 11:32:18 2014 -0800 + + Merge pull request #3078 from ceph/wip-10030-firefly + + librbd: don't close an already closed parent image upon failure + + Reviewed-by: Josh Durgin + +commit e2ec37bf45fa5e7f5e787db9b67dbb2a98f2fbb7 +Merge: c4c63e8 af12194 +Author: Sage Weil +Date: Wed Dec 3 23:01:44 2014 -0800 + + Merge pull request #3063 from ceph/wip-10123-firefly + + librbd: protect list_children from invalid child pool IoCtxs + + Reviewed-by: Sage Weil + +commit c4c63e82cd7e4716315ca81208293a2567026c72 +Author: Samuel Just +Date: Tue Sep 23 15:52:08 2014 -0700 + + ReplicatedPG: don't move on to the next snap immediately + + If we have a bunch of trimmed snaps for which we have no + objects, we'll spin for a long time. Instead, requeue. + + Fixes: #9487 + Backport: dumpling, firefly, giant + Reviewed-by: Sage Weil + Signed-off-by: Samuel Just + (cherry picked from commit c17ac03a50da523f250eb6394c89cc7e93cb4659) + +commit 1b656450ca75b12fb98dee82bace914ef5f45c44 +Author: Sage Weil +Date: Tue Sep 23 16:21:33 2014 -0700 + + osd: initialize purged_snap on backfill start; restart backfill if change + + If we backfill a PG to a new OSD, we currently neglect to initialize + purged_snaps. As a result, the first time the snaptrimmer runs it has to + churn through every deleted snap for all time, and to make matters worse + does so in one go with the PG lock held. This leads to badness on any + cluster with a significant number of removed snaps that experiences + backfill. + + Resolve this by initializing purged_snaps when we finish backfill. The + backfill itself will clear out any stray snaps and ensure the object set + is in sync with purged_snaps. Note that purged_snaps on the primary + that is driving backfill will not change during this period as the + snaptrimmer is not scheduled unless the PG is clean (which it won't be + during backfill). + + If we by chance to interrupt backfill, go clean with other OSDs, + purge snaps, and then let this OSD rejoin, we will either restart + backfill (non-contiguous log) or the log will include the result of + the snap trim (the events that remove the trimmed snap). + + Fixes: #9487 + Backfill: firefly, dumpling + Signed-off-by: Sage Weil + (cherry picked from commit 255b430a87201c7d0cf8f10a3c1e62cbe8dd2d93) + +commit 02d4685c56e129cb179a5ddfb8e87aefc2fce0b5 +Author: Jason Dillaman +Date: Thu Nov 6 05:01:38 2014 -0500 + + librbd: don't close an already closed parent image upon failure + + If librbd is not able to open a child's parent image, it will + incorrectly close the parent image twice, resulting in a crash. + + Fixes: #10030 + Backport: firefly, giant + Signed-off-by: Jason Dillaman + (cherry picked from commit 61ebfebd59b61ffdc203dfeca01ee1a02315133e) + +commit af121942d7bdfc59fcfae0429ffb12993e7e019d +Author: Jason Dillaman +Date: Mon Nov 17 21:49:26 2014 -0500 + + librbd: protect list_children from invalid child pool IoCtxs + + While listing child images, don't ignore error codes returned + from librados when creating an IoCtx. This will prevent seg + faults from occurring when an invalid IoCtx is used. + + Fixes: #10123 + Backport: giant, firefly, dumpling + Signed-off-by: Jason Dillaman + (cherry picked from commit 0d350b6817d7905908a4e432cd359ca1d36bab50) + +commit c982da44e0e9e0be3c3d4e8f5e0a186fb2fcebb3 +Merge: 4a148df c4e4a31 +Author: Sage Weil +Date: Sun Nov 30 10:12:04 2014 -0800 + + Merge pull request #3014 from dachary/wip-9665-ceph-disk-partprobe-firefly + + ceph disk zap must call partprobe + +commit c4e4a310f14ca3049ac90422aea95051fe0d4b15 +Author: Loic Dachary +Date: Fri Oct 10 10:26:31 2014 +0200 + + ceph-disk: use update_partition in prepare_dev and main_prepare + + In the case of prepare_dev the partx alternative was missing and is not + added because update_partition does it. + + http://tracker.ceph.com/issues/9721 Fixes: #9721 + + Signed-off-by: Loic Dachary + (cherry picked from commit 23e71b1ee816c0ec8bd65891998657c46e364fbe) + + Conflicts: + src/ceph-disk + +commit e70a81464b906b9a304c29f474e6726762b63a7c +Author: Loic Dachary +Date: Thu Oct 9 18:52:17 2014 +0200 + + ceph-disk: run partprobe after zap + + Not running partprobe after zapping a device can lead to the following: + + * ceph-disk prepare /dev/loop2 + * links are created in /dev/disk/by-partuuid + * ceph-disk zap /dev/loop2 + * links are not removed from /dev/disk/by-partuuid + * ceph-disk prepare /dev/loop2 + * some links are not created in /dev/disk/by-partuuid + + This is assuming there is a bug in the way udev events are handled by + the operating system. + + http://tracker.ceph.com/issues/9665 Fixes: #9665 + + Signed-off-by: Loic Dachary + (cherry picked from commit fed3b06c47a5ef22cb3514c7647544120086d1e7) + +commit 5a5f427bc09076ef3fb13a710dede1b47bb232e0 +Author: Loic Dachary +Date: Fri Oct 10 10:23:34 2014 +0200 + + ceph-disk: encapsulate partprobe / partx calls + + Add the update_partition function to reduce code duplication. + The action is made an argument although it always is -a because it will + be -d when deleting a partition. + + Use the update_partition function in prepare_journal_dev + + Signed-off-by: Loic Dachary + (cherry picked from commit 922a15ea6865ef915bbdec2597433da6792c1cb2) + + Conflicts: + src/ceph-disk + +commit 73b47dbee8858f182fd2b4fd8eb5f3c786877bf4 +Author: Loic Dachary +Date: Thu Nov 6 17:11:20 2014 +0100 + + osd: deep scrub must not abort if hinfo is missing + + Instead it should set read_error. + + http://tracker.ceph.com/issues/10018 Fixes: #10018 + + Signed-off-by: Loic Dachary + (cherry picked from commit 9d84d2e8309d26e39ca849a75166d2d7f2dec9ea) + +commit 5138091a4073d966a65f537280f89372e801d019 +Author: Loic Dachary +Date: Tue Sep 23 11:38:09 2014 +0200 + + erasure-code: add corpus verification to make check + + Signed-off-by: Loic Dachary + +commit 8d3d6bf59aec3877c0231e637270e371d9ed3b8c +Author: Loic Dachary +Date: Sat Sep 13 13:36:09 2014 +0200 + + erasure-code: workunit to check for encoding regression + + Clone the archive of encoded objects and decode all archived objects, up + to and including the current ceph version. + + http://tracker.ceph.com/issues/9420 Refs: #9420 + + Signed-off-by: Loic Dachary + +commit 4f4358708ed3c261ca4027cc9c3dc3f952a99470 +Author: Loic Dachary +Date: Sat Sep 13 10:16:31 2014 +0200 + + erasure-code: store and compare encoded contents + + Introduce ceph_erasure_code_non_regression to check and compare how an + erasure code plugin encodes and decodes content with a given set of + parameters. For instance: + + ./ceph_erasure_code_non_regression \ + --plugin jerasure \ + --parameter technique=reed_sol_van \ + --parameter k=2 \ + --parameter m=2 \ + --stripe-width 3181 \ + --create \ + --check + + Will create an encoded object (--create) and store it into a directory + along with the chunks, one chunk per file. The directory name is derived + from the parameters. The content of the object is a random pattern of 31 + bytes repeated to fill the object size specified with --stripe-width. + + The check function (--check) reads the object back from the file, + encodes it and compares the result with the content of the chunks read + from the files. It also attempts recover from one or two erasures. + + Chunks encoded by a given version of Ceph are expected to be encoded + exactly in the same way by all Ceph versions going forward. + + http://tracker.ceph.com/issues/9420 Refs: #9420 + + Signed-off-by: Loic Dachary + +commit 4a148df544978383c1ed7cd8b90f590adb563f3d +Merge: c069bce 01faf13 +Author: Loic Dachary +Date: Wed Nov 19 02:45:26 2014 +0100 + + Merge pull request #2961 from ceph/wip-10114-firefly + + Add annotation to all assembly files to turn off stack-execute bit + + Reviewed-by: Loic Dachary + +commit 01faf1356f648ded9acda02e7cc67c1adb9e9ee3 +Author: Dan Mick +Date: Fri Nov 14 17:59:57 2014 -0800 + + Add annotation to all assembly files to turn off stack-execute bit + + See discussion in http://tracker.ceph.com/issues/10114 + + Building with these changes allows output from readelf like this: + + $ readelf -lW src/.libs/librados.so.2 | grep GNU_STACK + GNU_STACK 0x000000 0x0000000000000000 0x0000000000000000 0x000000 + 0x000000 RW 0x8 + + (note the absence of 'X' in 'RW') + + Fixes: #10114 + Signed-off-by: Dan Mick + (cherry picked from commit 06a245a9845c0c126fb3106b41b2fd2bc4bc4df3) + (not-yet-present-in-firefly files in isa-l manually removed) + +commit c069bce4e8180da3c0ca4951365032a45df76468 +Merge: 0d8ad6a fac1654 +Author: Samuel Just +Date: Thu Nov 13 10:36:12 2014 -0800 + + Merge pull request #2760 from ceph/wip-9835-firefly + + osd: fix erasure hung op bug (9835) + + Reviewed-by: Samuel Just + +commit fac165475031efdebbb88898ca5c12cd307a5bc3 +Author: Samuel Just +Date: Wed Nov 5 12:12:14 2014 -0800 + + osd: use OSDMap helper to tell if ops are misdirected + + calc_pg_role doesn't actually take into account primary affinity. + + Fixes: #9835 + Signed-off-by: Samuel Just + +commit 588602bf0095de5b59064123ca01345f1364bdde +Author: Sage Weil +Date: Mon Oct 20 13:55:33 2014 -0700 + + osd: discard rank > 0 ops on erasure pools + + Erasure pools do not support read from replica, so we should drop + any rank > 0 requests. + + This fixes a bug where an erasure pool maps to [1,2,3], temporarily maps + to [-1,2,3], sends a request to osd.2, and then remaps back to [1,2,3]. + Because the 0 shard never appears on osd.2, the request sits in the + waiting_for_pg map indefinitely and cases slow request warnings. + This problem does not come up on replicated pools because all instances of + the PG are created equal. + + Fix by only considering role == 0 for erasure pools as a correct mapping. + + Fixes: #9835 + Signed-off-by: Sage Weil + +commit 0c1c4152e6f402af7612c8c8d4719ab0f4cc6ad9 +Author: Sage Weil +Date: Wed Nov 12 17:04:35 2014 -0800 + + osd/OSDMap: add osd_is_valid_op_target() + + Helper to check whether an osd is a given op target for a pg. This + assumes that for EC we always send ops to the primary, while for + replicated we may target any replica. + + Signed-off-by: Sage Weil + (cherry picked from commit 89c02637914ac7332e9dbdbfefc2049b2b6c127d) + +commit 0d8ad6ad3c376bcab981bea9a49e1924d7eddb68 +Author: Josh Durgin +Date: Tue Nov 11 18:16:02 2014 -0800 + + qa: allow small allocation diffs for exported rbds + + The local filesytem may behave slightly differently. This isn't + foolproof, but seems to be reliable enough on rhel7 rootfs, where + exact comparison was failing. + + Fixes: #10002 + Signed-off-by: Josh Durgin + (cherry picked from commit e94d3c11edb9c9cbcf108463fdff8404df79be33) + +commit 0804deeab293e09123d1b58825051ccc4dddbc0e +Author: Sage Weil +Date: Sun May 25 08:38:38 2014 -0700 + + osd: fix map advance limit to handle map gaps + + The recent change in cf25bdf6b0090379903981fe8cee5ea75efd7ba0 would stop + advancing after some number of epochs, but did not take into consideration + the possibilty that there are missing maps. In that case, it is impossible + to advance past the gap. + + Fix this by increasing the max epoch as we go so that we can always get + beyond the gap. + + Signed-off-by: Sage Weil + (cherry picked from commit 1e0a82fd55dede473c0af32924f4bcb5bb697a2b) + +commit d30d6b986433eaef920b3703cf5af3c030f8dcf4 +Merge: d241aa7 d548431 +Author: Gregory Farnum +Date: Fri Nov 7 14:10:18 2014 -0800 + + Merge pull request #2880 from ceph/wip-10025-firefly + + #10025/firefly -- tools: fix MDS journal import + + Reviewed-by: Greg Farnum + +commit d548431a388da1130564d710e1f006772934224b +Author: John Spray +Date: Fri Nov 7 11:34:43 2014 +0000 + + tools: fix MDS journal import + + Previously it only worked on fresh filesystems which + hadn't been trimmed yet, and resulted in an invalid + trimmed_pos when expire_pos wasn't on an object + boundary. + + Fixes: #10025 + + Signed-off-by: John Spray + (cherry picked from commit fb29e71f9a97c12354045ad2e128156e503be696) + +commit d241aa7a347655242cc71b8fa3d778df6948c494 +Merge: 2c85b5d 4afb542 +Author: Samuel Just +Date: Thu Nov 6 10:37:42 2014 -0800 + + Merge remote-tracking branch 'origin/wip-sam-firefly-backports' into firefly + +commit 2c85b5d72953d01296213185382707122e06415c +Merge: 23cbffa 1228658 +Author: Samuel Just +Date: Thu Nov 6 10:30:20 2014 -0800 + + Merge pull request #2737 from ceph/wip-9629-firefly + + osd: do not clone/preserve snapdir on cache-evict (firefly backport) + + Reviewed-by: Samuel Just + +commit 23cbffaa2936dc2707b5b42f8c0e7ce804324ae2 +Merge: 3bba938 e296685 +Author: Samuel Just +Date: Thu Nov 6 10:26:21 2014 -0800 + + Merge pull request #2657 from ceph/wip-9053-9301-firefly + + mon: backport two paxos fixes to firefly + + Reviewed-by: Joao Luis + +commit 3bba9387eb123c6cf055e874db2925b998dc406c +Merge: 3f9bf73 835f8c6 +Author: Samuel Just +Date: Thu Nov 6 10:21:12 2014 -0800 + + Merge pull request #2656 from ceph/wip-9502-firefly + + mon: backport mon disk full check to firefly + + Reviewed-by: Samuel Just + +commit 3f9bf738daf47ff4ff56c9f76d1487a5afc5e30a +Merge: a340e6d 3e17a08 +Author: Samuel Just +Date: Thu Nov 6 10:18:27 2014 -0800 + + Merge pull request #2764 from ceph/wip-9851 + + osd: bring FileJournal in sync with giant + + Reviewed-by: Samuel Just + +commit a340e6d0b166019f58dca0703faf30dd3178c14f +Merge: b7d5f99 b9450b5 +Author: Samuel Just +Date: Thu Nov 6 10:12:17 2014 -0800 + + Merge pull request #2776 from ceph/wip-9675.firefly + + CrushWrapper: pick a ruleset same as rule_id + + Reviewed-by: Samuel Just + +commit b7d5f99c8f4d751e83dc29305649d7a465c657b1 +Author: Sage Weil +Date: Mon Sep 15 15:29:08 2014 -0700 + + ceph-disk: mount xfs with inode64 by default + + We did this forever ago with mkcephfs, but ceph-disk didn't. Note that for + modern XFS this option is obsolete, but for older kernels it was not the + default. + + Backport: firefly + Signed-off-by: Sage Weil + (cherry picked from commit 11496399ef318498c11e551f139d96db52d3309c) + +commit 1a9d000bb679a7392b9dd115373c3827c9626694 +Author: Yehuda Sadeh +Date: Thu Oct 9 10:20:27 2014 -0700 + + rgw: set length for keystone token validation request + + Fixes: #7796 + Backport: giany, firefly + Need to set content length to this request, as the server might not + handle a chunked request (even though we don't send anything). + + Tested-by: Mark Kirkwood + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 3dd4ccad7fe97fc16a3ee4130549b48600bc485c) + +commit 49d27efde2ce5d282c9ee6ca9c8ea9db8f609392 +Author: Yehuda Sadeh +Date: Tue Aug 19 13:15:46 2014 -0700 + + rgw: subuser creation fixes + + Fixes: #8587 + There were a couple of issues, one when trying to identify whether swift + user exists, we weren't using the correct swift id. The second problem + is that we relied on the gen_access flag in the swift case, where it + doesn't really need to apply. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 1441ffe8103f03c6b2f625f37adbb2e1cfec66bb) + +commit 8db2f0969e1715f57088c311a33e7e3499933afb +Merge: 9a15592 2a5d7f0 +Author: Sage Weil +Date: Fri Oct 31 08:35:50 2014 -0700 + + Merge pull request #2847 from dachary/wip-9752-past-intervals-firefly + + osd: past_interval display bug on acting + +commit 2a5d7f08303eb8b1687c5b58426443b3d40e415c +Author: Loic Dachary +Date: Fri Oct 31 00:49:21 2014 +0100 + + osd: past_interval display bug on acting + + The acting array was incorrectly including the primary and up_primary. + + http://tracker.ceph.com/issues/9752 Fixes: #9752 + + Signed-off-by: Loic Dachary + (cherry picked from commit c5f8d6eded52da451fdd1d807bd4700221e4c41c) + +commit 9a15592eae6739183049f8376392c5577145871e +Merge: 6fd8879 c20a242 +Author: Yan, Zheng +Date: Thu Oct 30 17:01:24 2014 -0700 + + Merge pull request #2840 from ceph/firefly-9869 + + Backport "client: cast m->get_client_tid() to compare to 16-bit Inode::flushing_cap_tid" + +commit c20a2421f4a5b33407d7f31806dd4587b4e9077c +Author: Greg Farnum +Date: Wed Oct 22 17:16:31 2014 -0700 + + client: cast m->get_client_tid() to compare to 16-bit Inode::flushing_cap_tid + + m->get_client_tid() is 64 bits (as it should be), but Inode::flushing_cap_tid + is only 16 bits. 16 bits should be plenty to let the cap flush updates + pipeline appropriately, but we need to cast in the proper direction when + comparing these differently-sized versions. So downcast the 64-bit one + to 16 bits. + + Fixes: #9869 + Backport: giant, firefly, dumpling + + Signed-off-by: Greg Farnum + (cherry picked from commit a5184cf46a6e867287e24aeb731634828467cd98) + +commit 4afb54274bb2087da348103d0a7641b3a018d777 +Author: Samuel Just +Date: Thu Sep 11 13:46:51 2014 -0700 + + ReplicatedPG: cancel cb on blacklisted watcher + + Fixes: #8315 + Backport: firefly + Signed-off-by: Samuel Just + (cherry picked from commit 16bd45777166c29c433af3b59254a7169e512d98) + +commit 037aa342fa277351fc605da41489a6ceba81ab05 +Author: Samuel Just +Date: Sun Sep 21 10:19:43 2014 -0700 + + ReplicatedPG::on_removal: clear rollback info + + Fixes: #9293 + Backport: firefly + Signed-off-by: Samuel Just + (cherry picked from commit 544b8c7ffb4af01765b87239f2d7ab88479ee779) + +commit 8978c8dc1f153a9052b5d967ceff11d4f08d51ea +Merge: 8401e7f 4be53d5 +Author: Samuel Just +Date: Thu Oct 30 13:48:18 2014 -0700 + + Merge remote-tracking branch 'origin/wip-9574' into wip-sam-firefly-backports + +commit 8401e7ffa1768770f451143b3c110d1deae1bd40 +Author: Samuel Just +Date: Mon Sep 29 15:01:25 2014 -0700 + + PG: release backfill reservations if a backfill peer rejects + + Also, the full peer will wait until the rejection from the primary + to do a state transition. + + Fixes: #9626 + Backport: giant, firefly, dumpling + Signed-off-by: Samuel Just + (cherry picked from commit 624aaf2a4ea9950153a89ff921e2adce683a6f51) + +commit 5df09fa1b5a42992f9e41aca09e86db0d03d9fbd +Merge: a0937ef a1aa06b +Author: Samuel Just +Date: Thu Oct 30 13:47:22 2014 -0700 + + Merge remote-tracking branch 'origin/wip-9113' into wip-sam-firefly-backports + +commit a0937ef214b9221e7a5e69e7b0f0697471d56293 +Author: Sage Weil +Date: Sun Oct 12 10:05:51 2014 -0700 + + osd/osd_types: consider CRUSH_ITEM_NONE in check_new_interval() min_size check + + Fixes: #9718 + Backport: firefly + Signed-off-by: Sage Weil + (cherry picked from commit d947050c82a511f91c98e1c76e48ffa9e187eee7) + + Conflicts: + src/osd/osd_types.cc + +commit 35e8e6b2c1733cd421bf6c3916553eea3786e76e +Author: Samuel Just +Date: Mon Oct 20 14:10:58 2014 -0700 + + PG:: reset_interval_flush and in set_last_peering_reset + + If we have a change in the prior set, but not in the up/acting set, we go back + through Reset in order to reset peering state. Previously, we would reset + last_peering_reset in the Reset constructor. This did not, however, reset the + flush_interval, which caused the eventual flush event to be ignored and the + peering messages to not be sent. + + Instead, we will always reset_interval_flush if we are actually changing the + last_peering_reset value. + + Fixes: #9821 + Backport: firefly + Signed-off-by: Samuel Just + (cherry picked from commit d9ff3a6b789c5b9c77aefa3751bd808f5d7b8ca7) + +commit 3f35db42977704a12ac4b5bcad6261aaf6b6a88d +Author: Samuel Just +Date: Thu Oct 23 09:11:28 2014 -0700 + + ReplicatedPG: writeout hit_set object with correct prior_version + + Fixes: #9875 + Backport: giant, firefly + Signed-off-by: Samuel Just + (cherry picked from commit 1a3ad307f1a4c0a956d6fd31d13f01ffe411a09d) + +commit 6fd88792e77cdc7ad33ff0acf9b3189a7c525430 +Merge: 0975ec9 afe6bd8 +Author: Sage Weil +Date: Sun Oct 26 20:37:52 2014 -0700 + + Merge pull request #2717 from dachary/wip-9747-ceph-spec-firefly + + rpm: 95-ceph-osd-alt.rules is not needed for centos7 / rhel7 (firefly) + +commit b9450b532ab7ad23ec6e2c22ed7cf55e6e1cc4c0 +Author: Xiaoxi Chen +Date: Wed Aug 20 15:35:44 2014 +0800 + + CrushWrapper: pick a ruleset same as rule_id + + Originally in the add_simple_ruleset funtion, the ruleset_id + is not reused but rule_id is reused. So after some add/remove + against rules, the newly created rule likely to have + ruleset!=rule_id. + + We dont want this happen because we are trying to hold the constraint + that ruleset == rule_id. + + Signed-off-by: Xiaoxi Chen + (cherry picked from commit 78e84f34da83abf5a62ae97bb84ab70774b164a6) + + Conflicts: + src/test/erasure-code/TestErasureCodeIsa.cc + + Fixes: #9675 + +commit 3e17a0872a3864cb6aee46959afd955ef0cbafeb +Author: Ma Jianpeng +Date: Mon Jul 21 15:08:55 2014 +0800 + + os/FileJournal: When dump journal, using correctly seq avoid misjudging joural corrupt. + + In func FileJournal::dump, it always using seq=0 as last-seq and it can + misjudge the journal corrupt. + + Signed-off-by: Ma Jianpeng + (cherry picked from commit 5f65b4db6d1dad7c2c5a09eab42af63a82ea9e9b) + +commit 350da8c98bc1e90cd392992aba290c7478280d88 +Author: Loic Dachary +Date: Fri Sep 26 01:15:53 2014 +0200 + + os: io_event.res is the size written + + And not an error code to be converted with cpp_strerror() + + Signed-off-by: Loic Dachary + (cherry picked from commit 7827e0035e3350ad2d9230f27a1629545f53af5c) + +commit ecff3761f3d15061a2cbf0a595ca249a4c424f4c +Author: Ma Jianpeng +Date: Thu Aug 21 15:10:46 2014 +0800 + + os/FileJournal: For journal-aio-mode, don't use aio when closing journal. + + For jouranl-aio-mode when closing journal, the write_finish_thread_entry may exit before + write_thread_entry. This cause no one wait last aios to complete. + On some platform, after that the journal-header on journal corrupted. + To avoid this, when closing jouranl we don't use aio. + + Fixes: 9073 + Reported-by: Mark Kirkwood + Tested-by: Mark Kirkwood + Signed-off-by: Ma Jianpeng + (cherry picked from commit e870fd09ce846e5642db268c33bbe8e2e17ffef2) + +commit dbc33fbab4b35e2ce1e46a881f6714262502c243 +Author: Ma Jianpeng +Date: Thu Aug 21 21:07:51 2014 +0800 + + os/FileJournal: Only using aio then alloc the related resources. + + If define HAVE_LIBAIO, it alloc related resouces. But itt don't check whether + using aio mode. Only using aio it alloc the related resources. + + Signed-off-by: Ma Jianpeng + (cherry picked from commit a66a4931d5be9ee26c0983b3154fdbe37261a51c) + +commit 3312c6eeca21dcd566df9bdd8de7b3fe33356b57 +Author: Ma Jianpeng +Date: Thu Aug 21 15:49:44 2014 +0800 + + os/FileJournal: Tune the judge logic for read_header. + + When reading journal-header, it should firstly check the result of + pread and then do decoce operation. + + Signed-off-by: Ma Jianpeng + (cherry picked from commit c8e2b89cf6bc36a0ff29887b9e76cbbeceef9f8f) + +commit b42107584449e1f85cbee97bfa486ebeb310e6a1 +Author: Sage Weil +Date: Tue Aug 19 20:50:13 2014 -0700 + + os/FileJournal: signal aio_cond even if seq is 0 + + This can happen if we write a journal but no events. + + Reported-by: Somnath Roy + Reported-by: Ma, Jianpeng + Signed-off-by: Sage Weil + (cherry picked from commit 57778e2c577c1e1bbf9525232720a2994fa36abc) + +commit 4a43ea171d84a9f3a13064030eb386fcfbe3bbb8 +Author: Ma Jianpeng +Date: Wed Jul 23 10:10:38 2014 -0700 + + os/FileJournal: Update the journal header when closing journal + + When closing journal, it should check must_write_header and update + journal header if must_write_header alreay set. + It can reduce the nosense journal-replay after restarting osd. + + Signed-off-by: Ma Jianpeng + Reviewed-by: Sage Weil + (cherry picked from commit 5bf472aefb7360a1fe17601b42e551df120badfb) + +commit 0975ec9cec1c466f7b15f5173541a7eab02dae18 +Author: Sage Weil +Date: Tue Oct 21 06:53:36 2014 -0700 + + Revert "os/FileJournal: stop aio completion thread *after* writer thread" + + This reverts commit 334631ae4641824b3df49245f36a8fd4b143bf3f. + +commit 5a10b95f7968ecac1f2af4abf9fb91347a290544 +Merge: cc69c16 d5bac46 +Author: Samuel Just +Date: Fri Oct 17 10:47:22 2014 -0700 + + Merge pull request #2716 from ceph/wip-firefly-9419 + + Backport fix for bug #9419 + +commit cc69c16c2108cb231b2434a53e3eef51b597756b +Merge: f9cdaab 334631a +Author: Samuel Just +Date: Fri Oct 17 10:44:30 2014 -0700 + + Merge pull request #2724 from dachary/wip-9073-journal-aio-mode-firefly + + os/FileJournal: stop aio completion thread *after* writer thread + +commit f9cdaabe078415d7927e2618030996f2f24be2f1 +Merge: 0b4b34a 412c277 +Author: Sage Weil +Date: Fri Oct 17 08:20:53 2014 -0700 + + Merge pull request #2742 from ceph/firefly-unknown-locktype + + mds: reply -EOPNOTSUPP for unknown lock type + +commit 412c2770c74abea73a94e10df7b83ebe11ac82ee +Author: Yan, Zheng +Date: Tue Oct 14 22:02:41 2014 +0800 + + mds: reply -EOPNOTSUPP for unknown lock type + + Signed-off-by: Yan, Zheng + (cherry picked from commit 675392335c53ff7879031fb9184e4f35bcc90fe2) + +commit 1228658871e53e350bdab3e72cdefd1caf33c291 +Author: Sage Weil +Date: Sun Sep 21 15:56:18 2014 -0700 + + osd/ReplicatedPG: do not clone or preserve snapdir on cache_evict + + If we cache_evict a head in a cache pool, we need to prevent + make_writeable() from cloning the head and finish_ctx() from + preserving the snapdir object. + + Fixes: #8629 + Backport: firefly + Signed-off-by: Sage Weil + (cherry picked from commit ce8eefca13008a9cce3aedd67b11537145e1fd77) + +commit 88e6014463e86e48d78ac419226644209f83f2a0 +Author: Sage Weil +Date: Sun Sep 21 15:54:15 2014 -0700 + + ceph_test_rados_api_tier: add EvictSnap2 test case + + Verify an evict doesn't create a snapdir object. Reproduces #8629 + + Signed-off-by: Sage Weil + (cherry picked from commit 398c74eacb1ce4e573aef0d24718a5925d90272b) + +commit 0b4b34aac497d17a6474c35891aab2bde962524b +Merge: 322958a 0a72235 +Author: Sage Weil +Date: Thu Oct 16 06:09:51 2014 -0700 + + Merge pull request #2734 from ceph/wip-firefly-undump + + mds: fix --undump-journal + + Reviewed-by: Sage Weil + +commit 0a72235b0556752fadebc3e155ad41b13a0a15e9 +Author: John Spray +Date: Thu Oct 16 11:17:40 2014 +0100 + + mds: fix --undump-journal + + This hadn't worked for a long time. This is a fix + for firefly only, as this code was refactored in giant. + + Signed-off-by: John Spray + +commit 835f8c6f6121f3ebdec3a0d2d5cb1376301dc03a +Author: Joao Eduardo Luis +Date: Tue Sep 23 14:02:55 2014 +0100 + + ceph-mon: check fs stats just before preforking + + Otherwise statfs may fail if mkfs hasn't been run yet or if the monitor + data directory does not exist. There are checks to account for the mon + data dir not existing and we should wait for them to clear before we go + ahead and check the fs stats. + + Signed-off-by: Joao Eduardo Luis + (cherry picked from commit 7f71c11666b25e91dd612c58b4eda9ac0d4752f8) + + Conflicts: + src/ceph_mon.cc + +commit 1ddf435464562f70f63cdb0032da3187f34ce853 +Author: Joao Eduardo Luis +Date: Thu Sep 18 16:53:43 2014 +0100 + + ceph_mon: check available storage space for mon data dir on start + + error out if available storage space is below 'mon data avail crit' + + Fixes: #9502 + + Signed-off-by: Joao Eduardo Luis + (cherry picked from commit 2da1a2914ac7df18ce842b0aac728fffb5bed2b6) + + Conflicts: + src/ceph_mon.cc + +commit 112317791b744d9890a65adcc13554c85e90f3af +Author: Joao Eduardo Luis +Date: Thu Sep 18 16:52:34 2014 +0100 + + mon: DataHealthService: use get_fs_stats() instead + + and relieve the DataStats struct from clutter by using + ceph_data_stats_t instead of multiple fields. + + Signed-off-by: Joao Eduardo Luis + (cherry picked from commit 9996d446988768658db751a7843b13cf3d194213) + + Conflicts: + src/mon/DataHealthService.cc + +commit f0a92d72fd44542619338db7d6da98e147b6a9fc +Author: Joao Eduardo Luis +Date: Thu Sep 18 16:32:20 2014 +0100 + + common: util: add get_fs_stats() function + + simplifies the task of obtaining available/used disk space, as well as + used available percentage. + + Signed-off-by: Joao Eduardo Luis + (cherry picked from commit 3d74230d1c0fbfa15487e2a90ac60b883476e840) + +commit a8fa009fbe5d5d4d9cfa134d5ecd05c92290a8eb +Author: Joao Eduardo Luis +Date: Thu Sep 18 16:25:44 2014 +0100 + + include/util.h: prevent multiple inclusion of header + + Signed-off-by: Joao Eduardo Luis + (cherry picked from commit 76eff9503493312cb97e4a2f9236f4dbcbf931df) + +commit e296685e8f3f5158238216eefb76482bd6d55134 +Author: Sage Weil +Date: Thu Sep 18 14:23:36 2014 -0700 + + mon: re-bootstrap if we get probed by a mon that is way ahead + + During bootstrap we verify that our paxos commits overlap with the other + mons we will form a quorum with. If they do not, we do a sync. + + However, it is possible we pass those checks, then fail to join a quorum + before the quorum moves ahead in time such that we no longer overlap. + Currently nothing kicks up back into a probing state to discover we need + to sync... we will just keep trying to call or join an election instead. + + Fix this by jumping back to bootstrap if we get a probe that is ahead of + us. Only do this from non probe or sync states as these will be common; + it is only the active and electing states that matter (and probably just + electing!). + + Fixes: #9301 + Backport: giant, firefly + Signed-off-by: Sage Weil + (cherry picked from commit c421b55e8e15ef04ca8aeb47f7d090375eaa8573) + +commit 0e57767d5fc524939e8968b506ce2fb3f4f80656 +Author: Sage Weil +Date: Thu Sep 18 14:11:24 2014 -0700 + + mon/Paxos: fix off-by-one in last_ vs first_committed check + + peon last_committed + 1 == leader first_committed is okay. Note that the + other check (where I clean up whitespace) gets this correct. + + Fixes: #9301 (partly) + Signed-off-by: Sage Weil + (cherry picked from commit d81cd7f86695185dce31df76c33c9a02123f0e4a) + +commit 1f4aaf648f4aa6f6056d0e8ce629eeea05c5424d +Author: Sage Weil +Date: Wed Aug 13 16:17:02 2014 -0700 + + mon/Paxos: share state and verify contiguity early in collect phase + + We verify peons are contiguous and share new paxos states to catch peons + up at the end of the round. Do this each time we (potentially) get new + states via a collect message. This will allow peons to be pulled forward + and remain contiguous when they otherwise would not have been able to. + For example, if + + mon.0 (leader) 20..30 + mon.1 (peon) 15..25 + mon.2 (peon) 28..40 + + If we got mon.1 first and then mon.2 second, we would store the new txns + and then boot mon.1 out at the end because 15..25 is not contiguous with + 28..40. However, with this change, we share 26..30 to mon.1 when we get + the collect, and then 31..40 when we get mon.2's collect, pulling them + both into the final quorum. + + It also breaks the 'catch-up' work into smaller pieces, which ought to + smooth out latency a bit. + + Signed-off-by: Sage Weil + (cherry picked from commit c54f1e4d66b22bad715ac17e9baa72ab93e48c46) + +commit 6c5b9a666fcd94e175a8b9771368b55246957efe +Author: Sage Weil +Date: Thu Aug 14 16:55:58 2014 -0700 + + mon/Paxos: verify all new peons are still contiguous at end of round + + During the collect phase we verify that each peon has overlapping or + contiguous versions as us (and can therefore be caught up with some + series of transactions). However, we *also* assimilate any new states we + get from those peers, and that may move our own first_committed forward + in time. This means that an early responder might have originally been + contiguous, but a later one moved us forward, and when the round finished + they were not contiguous any more. This leads to a crash on the peon + when they get our first begin message. + + For example: + + - we have 10..20 + - first peon has 5..15 + - ok! + - second peon has 18..30 + - we apply this state + - we are now 18..30 + - we finish the round + - send commit to first peon (empty.. we aren't contiguous) + - send no commit to second peon (we match) + - we send a begin for state 31 + - first peon crashes (it's lc is still 15) + + Prevent this by checking at the end of the round if we are still + contiguous. If not, bootstrap. This is similar to the check we do above, + but reverse to make sure *we* aren't too far ahead of *them*. + + Fixes: #9053 + Signed-off-by: Sage Weil + (cherry picked from commit 3e5ce5f0dcec9bbe9ed4a6b41758ab7802614810) + +commit 11d2c9dd4aeb835ca73bfb41fb15b1038547adf6 +Author: Sage Weil +Date: Wed Aug 13 16:01:01 2014 -0700 + + mon/Paxos: put source mon id in a temp variable + + Signed-off-by: Sage Weil + (cherry picked from commit bb046ed01ecf58b8c87eeeee2e00a476e6fba467) + +commit 322958a5aad82c031b54592b372aa053e8993be4 +Author: Sage Weil +Date: Wed Oct 15 12:26:00 2014 -0700 + + qa/workunits/rbd/import_export.sh: be case insensitive + + Stop tripping over this change (from dumpling). + + Signed-off-by: Sage Weil + (cherry picked from commit 5558afa03dbd1b20766b76e9410ef5bc3e73784f) + +commit 334631ae4641824b3df49245f36a8fd4b143bf3f +Author: Sage Weil +Date: Fri Aug 29 19:40:29 2014 -0700 + + os/FileJournal: stop aio completion thread *after* writer thread + + The writer thread may submit a new aio to update the header in its + final moments before shutting down. Do not stop the aio thread until after + that has happened or else we may not wait for those aio completions. + + Signed-off-by: Sage Weil + (cherry picked from commit c776a89880fdac270e6334ad8e49fa616d05d0d4) + + Conflicts: + src/os/FileJournal.cc + +commit 111eec9ff6325a12fcbf066ae08f27919aeae5d8 +Merge: cf4e300 6c0127f +Author: Sage Weil +Date: Tue Oct 14 14:57:42 2014 -0700 + + Merge remote-tracking branch 'gh/firefly' into firefly-next + +commit cf4e30095e8149d1df0f2c9b4c93c9df0779ec84 +Author: Xiaoxi Chen +Date: Tue Aug 5 16:12:22 2014 +0800 + + mon/OSDMonitor : Use user provided ruleset for replicated pool + + When creating a replicated pool, currently ceph ignore the ruleset + name provided by user but use a global default ruleset. + + This patch fix this bug, so the rulset specified by + ceph osd pool create replicated + can be properly set. + + Signed-off-by: Xiaoxi Chen + (cherry picked from commit bf9726a294abd32b429170284ac328a592802648) + +commit bfd7da10e708a6eefc6d992b2b6337b7f06fd5ed +Author: Loic Dachary +Date: Tue Jun 3 13:05:19 2014 +0200 + + documentation: update osd pool create erasure + + The properties are replaced with erasure code profiles. Remove the + reference to properties and the documentation of each erasure-code + related property. + + Signed-off-by: Loic Dachary + (cherry picked from commit 8ff4edda73abb920c91e1226a330e3659def1fbe) + +commit afe6bd89f8a1588fb67063d1a08a4be8c1ab2ce6 +Author: Loic Dachary +Date: Sat Oct 11 18:20:36 2014 +0200 + + rpm: 95-ceph-osd-alt.rules is not needed for centos7 / rhel7 + + The || instead of && had it always installed. That was fixed in EPEL + already. + + http://tracker.ceph.com/issues/9747 Fixes: #9747 + + Signed-off-by: Loic Dachary + (cherry picked from commit 5ff4a850a0d809b3f25988c6cceb82c35095ef84) + +commit d5bac46e06c5420f29a021b294e391b2c6694cbd +Author: David Zafman +Date: Wed Sep 24 16:02:21 2014 -0700 + + osd: Return EOPNOTSUPP if a set-alloc-hint occurs with OSDs that don't support + + Add CEPH_FEATURE_OSD_SET_ALLOC_HINT feature bit + Collect the intersection of all peer feature bits during peering + When handling CEPH_OSD_OP_SETALLOCHINT check that all OSDs support it + by checking for CEPH_FEATURE_OSD_SET_ALLOC_HINT feature bit. + + Fixes: #9419 + Backport: firefly + + Signed-off-by: David Zafman + (cherry picked from commit 9b39033f2b2bcdd2be0f6da4dff06023d0f77499) + + Conflicts: + + src/include/ceph_features.h + src/osd/PG.cc + src/osd/PG.h + src/osd/ReplicatedPG.cc + +commit de08802dcf35aea516d013d3d6116aaa7707b923 +Author: David Zafman +Date: Fri Sep 19 15:12:55 2014 -0700 + + osd: Remove unused PG functions queue_notify(), queue_info(), queue_log() + + Signed-off-by: David Zafman + (cherry picked from commit 70ef4c11cbae669799c30c7592073ad7aa11dcd6) + +commit 5b5aba73031e901457ca27cf15600ce1ca90e258 +Merge: 345714b a1ae7f4 +Author: Gregory Farnum +Date: Fri Oct 10 06:57:06 2014 -0700 + + Merge pull request #2691 from ceph/firefly-unused-variable + + Firefly unused variable + +commit a1ae7f471c809e69d363b9145e70160533bfa48c +Author: Yan, Zheng +Date: Fri Oct 10 21:36:39 2014 +0800 + + mds: Locker: remove unused variable + + Signed-off-by: Yan, Zheng + +commit 345714b6b4d004ad03cc7952dc56c6db87664ee4 +Merge: fd20a1d 2afb6fe +Author: Yan, Zheng +Date: Fri Oct 10 09:37:53 2014 +0800 + + Merge pull request #2681 from ceph/firefly-locker-null + + mds: Locker: fix a NULL deref in _update_cap_fields + +commit 2afb6febdd8482b8fec5890d79944d656faf1382 +Author: Greg Farnum +Date: Thu Oct 9 15:12:19 2014 -0700 + + mds: Locker: fix a NULL deref in _update_cap_fields + + The MClientCaps* is allowed to be NULL, so we can't deref it unless + the dirty param is non-zero. So don't do the ahead-of-time lookup; + just call it explicitly in the if block. + + Signed-off-by: Greg Farnum + (cherry picked from commit 3cd8a7fb9683577a7d6e934f18c29b7e84415be6) + +commit fd20a1d01bde67fb1edc6058e38435af9d5d6abc +Merge: e1bd1b2 86926c6 +Author: Loic Dachary +Date: Wed Oct 8 08:44:46 2014 +0200 + + Merge pull request #2662 from dachary/wip-9677-ioprio-class-firefly + + common: ceph_ioprio_string_to_class always returns -EINVAL + +commit 86926c6089d63014dd770b4bb61fc7aca3998542 +Author: Loic Dachary +Date: Tue Oct 7 14:06:38 2014 +0200 + + common: ceph_ioprio_string_to_class always returns -EINVAL + + The l string is always empty because std::transform needs a + pre-allocated string. Replace with the in-place version. Add unit tests. + + http://tracker.ceph.com/issues/9677 Fixes: #9677 + + Signed-off-by: Loic Dachary + (cherry picked from commit 3535b7aba3df8b54fa5117b8a9c2f52b8f0f118b) + + Conflicts: + src/test/Makefile.am + +commit 5f2eec5036a2910aca1e8ce2d94444d3ed0477df +Author: Loic Dachary +Date: Tue Oct 7 14:05:08 2014 +0200 + + osd: log error if set_ioprio fails to parse class + + Signed-off-by: Loic Dachary + (cherry picked from commit 5088e0d49332d579ba7e33c2c9baee3d5f701a3e) + +commit 2796d5151df4dcde324a4d09a83c9a779cece00e +Author: Loic Dachary +Date: Tue Oct 7 14:03:39 2014 +0200 + + common: set_ioprio debug message including pid + + Signed-off-by: Loic Dachary + (cherry picked from commit 33339c7754875eb7e513345ee6b26a9b2b4d2707) + +commit d5ed6b0587b9999b2fd41377b0426e3b09ef8ab9 +Author: Loic Dachary +Date: Tue Oct 7 14:02:09 2014 +0200 + + common: do not set ioprio if pid is not set + + Signed-off-by: Loic Dachary + (cherry picked from commit c7e4c0bfe70bf29d3b8fe4df4e4b934853e33d26) + +commit e1bd1b2774f4eae5444b5f7b984193cb91a2dd98 +Merge: 726c6a1 459dca1 +Author: Sage Weil +Date: Tue Oct 7 09:58:03 2014 -0700 + + Merge pull request #2632 from ceph/wip-9039-firefly + + rgw: copy object data if target bucket is in a different pool + +commit 726c6a147a14c00cf12eb6c6561655475282419f +Author: Sage Weil +Date: Mon Oct 6 15:50:51 2014 -0700 + + debian/control: fix python-ceph -> ceph file move to allow upgrades + + This is a backport of 5c6c366d2abe771c581690270c2d176ebb30c571 with the + version numbers changed, to compensate for the change in + fe3434f41cd09433975d7d0f9dbb2fae662e4a1b (backported in + bf1933e5c184476a354664c42fec834e9f59067c). + + Tested-by: Tamil Muthamizhan + Signed-off-by: Sage Weil + +commit 884f7c40c4a28d519847d3995c8d98e5837ceaf0 +Merge: 31d57c9 c8a8e47 +Author: Sage Weil +Date: Mon Oct 6 07:01:50 2014 -0700 + + Merge remote-tracking branch 'gh/wip-rpm-epoch-firefly' into firefly + + Reviewed-by: Boris Ranto + +commit 31d57c9a28502a4a72f8aa141f7ed63ffe1e0192 +Merge: 9a3bac0 548be0b +Author: Loic Dachary +Date: Mon Oct 6 09:50:33 2014 +0200 + + Merge pull request #2643 from johnugeorge/wip-9492-crush-firefly + + Crush: Backporting fixes for #9492 to firefly + + Reviewed-by: Loic Dachary + +commit 548be0b2aea18ed3196ef8f0ab5f58a66e3a9af4 +Author: Johnu George +Date: Mon Sep 29 10:07:44 2014 -0700 + + Crush: Ensuring at most num-rep osds are selected + + Crush temporary buffers are allocated as per replica size configured + by the user.When there are more final osds (to be selected as per + rule) than the replicas, buffer overlaps and it causes crash.Now, it + ensures that at most num-rep osds are selected even if more number of + osds are allowed by indep rule. The fix for firstn rules is already + merged as part of bug #9492. Required test files are added. + + Fixes: #9492 + + Signed-off-by: Johnu George johnugeo@cisco.com + (cherry picked from commit 234b066ba04976783d15ff2abc3e81b6cc06fb10) + +commit e30c570ce691a994898b4a933c57e7ae014cdc30 +Author: Johnu George +Date: Wed Sep 24 09:32:50 2014 -0700 + + Crush: Ensuring at most num-rep osds are selected + + Crush temporary buffers are allocated as per replica size configured + by the user.When there are more final osds (to be selected as per + rule) than the replicas, buffer overlaps and it causes crash.Now, it + ensures that at most num-rep osds are selected even if more number of + osds are allowed by the rule. + + Fixes: #9492 + + Signed-off-by: Johnu George + (cherry picked from commit 6b4d1aa99718e3b367496326c1e64551330fabc0) + +commit 9a3bac0c1a7a42cdf7ba846c9ad0a3ae0f15b4bb +Merge: 0b978fb 5a5e7e7 +Author: Sage Weil +Date: Fri Oct 3 11:58:41 2014 -0700 + + Merge pull request #2634 from dachary/wip-9653-ceph-disk-bootstrap-osd-firefly + + ceph-disk: bootstrap-osd keyring ignores --statedir (firefly) + +commit c8a8e4763a55dec44836bc679254ee7dcc448567 +Author: Sage Weil +Date: Wed Oct 1 12:33:38 2014 -0700 + + ceph.spec: fix typo + + Signed-off-by: Sage Weil + (cherry picked from commit da9ae5c92ecb4059e0ec6be5ce03af46430e76a5) + +commit b890c1e4706d7cfef7ed24c9df65b439b4f7ff1d +Author: Sage Weil +Date: Wed Oct 1 06:02:02 2014 -0700 + + ceph.spec.: add epoch + + This is done in fedora packaging. Do it here too so that you can move + between upstream packages (from ceph.com) and fedora and other derivatives + will builds. + + Backport: firefly, dumpling + Signed-off-by: Sage Weil + (cherry picked from commit 83888362089346e473d6fd6e1d366b826d7bd739) + + Conflicts: + + ceph.spec.in + +commit d01db8080d97bfae34dcee3d153bf10e6f5327dd +Author: Sage Weil +Date: Tue May 20 13:41:35 2014 -0700 + + ceph.spec.in: remove BuildRoot + + Deprecated + + Fixes: #8143 + Signed-off-by: Sage Weil + (cherry picked from commit 401319a1527dd9cb5398916105d31e7ec065763d) + +commit 3c2b5c440863df548afc2bd8aa5440f15a44ac02 +Author: Dan Mick +Date: Tue Aug 12 16:31:22 2014 -0700 + + ceph.spec.in: tests for rhel or centos need to not include _version + + rhel_version and centos_version are apparently the OpenSUSE Build + names; the native macros are just "rhel" and "centos" (and contain + a version number, should it be necessary). + + Signed-off-by: Dan Mick + (cherry picked from commit 7474f720c2418cf3d52b755f2b60c524e413570a) + +commit c82c29d6174022be45929fe9ba8a84993eef974a +Author: Dan Mick +Date: Tue Aug 12 14:46:52 2014 -0700 + + ceph.spec.in: Add a small comment on the empty %files section + + as suggested by Dan Mick. + + Signed-off-by: Erik Logtenberg + (cherry picked from commit e37b262c7928934530c5bb09fe56f83eb61f4244) + +commit a4f748aa906fc65b14f65515721bc3a815c18fb8 +Author: Dan Mick +Date: Tue Aug 12 14:39:18 2014 -0700 + + ceph.spec.in: Obsolete all older versions. + + Now this changeset can be used on all current ceph releases that already + have the package split. + + Signed-off-by: Erik Logtenberg + (cherry picked from commit 875a99e25f0ad2cb47149a3b5a28b4771a09125c) + +commit 74c7f3caec1cc7a5da89ef33de36a8b59249cfcd +Author: Dan Mick +Date: Tue Aug 12 14:09:43 2014 -0700 + + ceph.spec.in: No version on ceph-libs Obsoletes. + + If we are installing with the new package structure we don't ever want the + new package to co-exist with the old one; this includes the mistakenly- + released v0.81 on Fedora, which should be removed in favor of this + version. + + Signed-off-by: Sandon Van Ness + Reviewed-by: Dan Mick + (cherry picked from commit 8f95daf66b5fdb2a8141988480f984c1249599c5) + +commit 561261b6efb7ea442686bb8fce387c4de2482067 +Author: Sandon Van Ness +Date: Fri Aug 8 18:01:30 2014 -0700 + + ceph.spec.in: Obselete ceph-libcephfs (not libcephfs) + + I am guessing that because it was a sub-package libcephfs was mistakenly + used instead of ceph-libcephfs. + + Signed-off-by: Sandon Van Ness + (cherry picked from commit 75985024bd30ca6fbe4c61aa7f7cbe5306c9a988) + +commit 107bfd9ee7dbf360561187b9e0946964d40b9b1c +Author: Erik Logtenberg +Date: Fri Aug 1 14:20:18 2014 +0200 + + ceph.spec.in: We need those nice recent changes for rhel7 in Fedora too. + + Signed-off-by: Erik Logtenberg + (cherry picked from commit 00877ae502ac52613bcd5c5c834d72787d668dca) + +commit 7946c5e5de8d6cd25d20beee15f3489113e51539 +Author: Dan Mick +Date: Wed Aug 27 12:56:43 2014 -0700 + + Move fedora patch file (used by ceph.spec.in) to rpm/ subdir + + Signed-off-by: Dan Mick + (cherry picked from commit 06b92cee621cbe33a6f17e8c64169db4453a5160) + +commit cb2ae9afa611175226efb5544f7d2aa705d55ece +Author: Erik Logtenberg +Date: Fri Aug 1 00:13:50 2014 +0200 + + ceph.spec.in, init-ceph.in: Don't autostart ceph service on Fedora. + + This patch is taken from the current Fedora package and makes the upstream + ceph.spec compliant with Fedora policy. The goal is to be fully compliant + upstream so that we can replace current Fedora package with upstream + package to fix many bugs in Fedora. + + Addition from Dan Mick : + Do this for RHEL and Centos as well, since they surely will benefit + from the same policy. Note: this requires changes to + autobuild-ceph and ceph-build scripts, which currently copy + only the dist tarball to the rpmbuild/SOURCES dir. + + Signed-off-by: Erik Logtenberg + Signed-off-by: Dan Mick : + (cherry picked from commit 461523b06cdf93e32f1d8b354ac3799e73162d33) + +commit 2b11376f1ee8925ab16065ebda912b11d3d7be59 +Author: Erik Logtenberg +Date: Thu Jul 31 23:54:03 2014 +0200 + + ceph.spec.in: Add obsoletes for libcephfs + + This fixes a bug for Fedora: + https://bugzilla.redhat.com/show_bug.cgi?id=1116614 + + Signed-off-by: Erik Logtenberg + (cherry picked from commit e9da2d8f2142771f206ef67f19e7f194855275d0) + +commit eefc62e3b85f402a7e1ae31c272c8a432d979379 +Author: Erik Logtenberg +Date: Thu Jul 31 23:49:56 2014 +0200 + + ceph.spec.in: add ceph-libs-compat + + Added a ceph-libs-compat package in accordance with Fedora packaging + guidelines [1], to handle the recent package split more gracefully. + In Fedora this is necessary because there are already other packages + depending on ceph-libs, that need to be adjusted to depend on the new + split packages instead. In the mean time, ceph-libs-compat prevents + breakage. + + [1] http://fedoraproject.org/wiki/Upgrade_paths_%E2%80%94_renaming_or_splitting_packages + + Signed-off-by: Erik Logtenberg + (cherry picked from commit 6c264f2204cbd54d90b02101e40ac9aa5aa72d7c) + + Conflicts: + + ceph.spec.in + +commit 0b978fb15a1307644aba3119419bb7386f98ee04 +Author: Sage Weil +Date: Sun Aug 10 14:41:19 2014 -0700 + + mon/Paxos: add perfcounters for most paxos operations + + I'm focusing primarily on the ones that result in IO here. + + Signed-off-by: Sage Weil + (cherry picked from commit b09b8563d35dda23faed43afef2a983e93a879c5) + +commit 74aa7afc719e517dbed300f802c1bc2dafe43ee0 +Author: Sage Weil +Date: Sun Aug 10 14:00:11 2014 -0700 + + mon/MonitorDBStore: add get_{keys,bytes}() accounting to Transaction + + Signed-off-by: Sage Weil + (cherry picked from commit fd421b26748e872ddf8e0f068dda2106853edff1) + +commit 5a5e7e7bcedbccbe4ae8aab159af6d8615eb3887 +Author: Loic Dachary +Date: Fri Oct 3 14:08:57 2014 +0200 + + ceph-disk: bootstrap-osd keyring ignores --statedir + + The STATEDIR variable is used to initialize the bootstrap-osd keyring + before it gets a chance to be overriden by --statedir. Replace it with + {statedir} so that it can be substituted after all options have been + parsed. + + http://tracker.ceph.com/issues/9653 Fixes: #9653 + + Signed-off-by: Loic Dachary + (cherry picked from commit fa0bd06b4657e5b84e237b76033ac3d3478b6a1f) + +commit 459dca1613a14cfad8d3afd7e3c783d825573a42 +Author: Yehuda Sadeh +Date: Tue Aug 12 13:36:11 2014 -0700 + + rgw: copy object data if target bucket is in a different pool + + Fixes: #9039 + Backport: firefly + + The new manifest does not provide a way to put the head and the tail in + separate pools. In any case, if an object is copied between buckets in + different pools, we may really just want the object to be copied, rather + than reference counted. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 5d3a7e595f47455896304bf358e5251915d0f16f) + +commit 711a7e6f81983ff2091caa0f232af914a04a041c +Author: Jason Dillaman +Date: Mon Sep 15 00:53:50 2014 -0400 + + rbd: ObjectCacher reads can hang when reading sparse files + + The pending read list was not properly flushed when empty objects + were read from a space file. + + Signed-off-by: Jason Dillaman + (cherry picked from commit cdb7675a21c9107e3596c90c2b1598def3c6899f) + +commit b7784dc1baa47560a733fe9dcd2acec51bc93165 +Author: Jason Dillaman +Date: Sat Sep 6 22:59:40 2014 -0400 + + Enforce cache size on read requests + + In-flight cache reads were not previously counted against + new cache read requests, which could result in very large + cache usage. This effect is most noticeable when writing + small chunks to a cloned image since each write requires + a full object read from the parent. + + Signed-off-by: Jason Dillaman + (cherry picked from commit 4fc9fffc494abedac0a9b1ce44706343f18466f1) + +commit ac4fca065a12f3b00a47bf5ec37983696255174b +Author: Alexandre Marangone +Date: Fri Sep 5 10:36:24 2014 -0700 + + rgw: add .log to default log path + + Fixes: #9353 + Signed-off-by: Alexandre Marangone + (cherry picked from commit 46732420897a2619059050044f4980a4737df43e) + +commit f03ae7b00e5694f1670493396a1cee195fcc6b35 +Merge: 78c3ef9 ee02cfd +Author: Yehuda Sadeh +Date: Thu Oct 2 15:28:40 2014 -0700 + + Merge pull request #2565 from ceph/wip-rgw-firefly-backports + + Wip rgw firefly backports + +commit 78c3ef90604ca117255cefe232771a7564fed8b1 +Author: Sage Weil +Date: Thu Sep 25 13:16:52 2014 -0700 + + osdc/Objecter: only post_rx_buffer if no op timeout + + If we post an rx buffer and there is a timeout, the revocation can happen + while the reader has consumed the buffers but before it has decoded and + constructed the message. In particular, we calculate a crc32c over the + data portion of the message after we've taken the buffers and dropped the + lock. + + Instead of fixing this race (for example, by reverifying rx_buffers under + the lock while calculating the crc.. bleh), just skip the rx buffer + optimization entirely when a timeout is present. + + Note that this doesn't cover the op_cancel() paths, but none of those users + provide static buffers to read into. + + Fixes: #9582 + Backport: firefly, dumpling + Signed-off-by: Sage Weil + + backport of 126d0b30e990519b8f845f99ba893fdcd56de447 + +commit a261b4952056aab7b067453930342960bbe55089 +Author: Sage Weil +Date: Mon Sep 29 14:28:32 2014 -0700 + + debian: move ceph_rest_api.py into ceph + + Signed-off-by: Sage Weil + (cherry picked from commit fe3434f41cd09433975d7d0f9dbb2fae662e4a1b) + +commit eb0f6e347969b40c0655d3165a6c4531c6b595a3 +Author: Sage Weil +Date: Mon Sep 29 14:24:01 2014 -0700 + + ceph.spec.in: move ceph_rest_api.py into ceph + + Signed-off-by: Sage Weil + (cherry picked from commit 8cda623e0ba34a48a70e9ea988d619b15605c4fd) + +commit c4188e31f7bc8f3c337e637cd99c41d5ee4b6787 +Author: Sage Weil +Date: Mon Sep 29 13:44:03 2014 -0700 + + ceph.spec: fix python-flask dependency + + This is needed by ceph-rest-api, which is in ceph.rpm; it's not related to + python-ceph (except that ceph-rest-api happens to require that too). + + Backport: firefly + Signed-off-by: Sage Weil + (cherry picked from commit b2416240b88b2e067dfc79a2723335f1584562d0) + +commit bf1933e5c184476a354664c42fec834e9f59067c +Author: Sage Weil +Date: Mon Sep 29 13:40:18 2014 -0700 + + debian: python-flask is needed by ceph, not python-ceph + + It's used by ceph-rest-api which is in the 'ceph' (server) package. + + Backport: firefly + Signed-off-by: Sage Weil + (cherry picked from commit e42424e777e4f7d8b03650482253734c1fa8709d) + + Conflicts: + + debian/control + +commit 94a7fbaa11c51db294dce0dc1df728f69aef5bf8 +Author: Danny Al-Gaaf +Date: Fri Sep 19 12:25:07 2014 +0200 + + rgw_main.cc: add missing virtual destructor for RGWRequest + + CID 1160858 (#1 of 1): Non-virtual destructor (VIRTUAL_DTOR) + nonvirtual_dtor: Class RGWLoadGenRequest has a destructor + and a pointer to it is upcast to class RGWRequest which doesn't + have a virtual destructor. + + Signed-off-by: Danny Al-Gaaf + (cherry picked from commit b82ceda7775ff85943d9143b73789eb37b09bfa9) + +commit 9fee8de25ab5c155cd6a3d32a71e45630a5ded15 +Author: Greg Farnum +Date: Mon Sep 29 16:10:36 2014 -0700 + + Locker: accept ctime updates from clients without dirty write caps + + The ctime changes any time the inode does. That can happen even without + the file itself having changed, so we'd better accept the update whenever + the auth caps have dirtied, without worrying about the file caps! + + Fixes: #9514 + Backport: firefly + + Signed-off-by: Greg Farnum + Reviewed-by: Sage Weil + Reviewed-by: John Spray + (cherry picked from commit 0ea20a668cf859881c49b33d1b6db4e636eda18a) + +commit 461ece5e9fb1d4994a6214a3b6bdae136773629d +Author: Sage Weil +Date: Wed Oct 1 18:01:51 2014 -0700 + + doc/release-notes: fix attributions for 8702 fix + + Oops! + + Signed-off-by: Sage Weil + (cherry picked from commit 188370a94353e29fcb8981699022803e23f3fedd) + +commit 917529a78e5046f621df5c48fe5d50d2f7e56560 +Author: Sage Weil +Date: Wed Oct 1 17:48:12 2014 -0700 + + doc/release-notes: v0.80.6 + + Signed-off-by: Sage Weil + (cherry picked from commit c0dc3a56974a469b61523b67cc032cc5726a3a5f) + + Conflicts: + + doc/release-notes.rst + +commit 060a5b1422fcdfb8e84636579a2f0c2f1ec14300 +Author: Adam Crume +Date: Thu Sep 18 16:57:27 2014 -0700 + + common: Add cctid meta variable + + Fixes: #6228 + Signed-off-by: Adam Crume + (cherry picked from commit bb45621cb117131707a85154292a3b3cdd1c662a) + +commit a1aa06b7fb30e509193e1b1bb7355b5f21aedc82 +Author: Samuel Just +Date: Wed Oct 1 14:30:59 2014 -0700 + + ReplicatedPG: dump snap_trimq on pg query + + Signed-off-by: Samuel Just + +commit 34f38b68d89baf1dcbb4571d4f4d3076dc354538 +Author: Samuel Just +Date: Mon Sep 29 16:26:54 2014 -0700 + + ReplicatedPG: do not queue the snap trimmer constantly + + Previously, we continuously requeued the snap trimmer while in + TrimmingObjects. This is not a good idea now that we try to + limit the number of snap trimming repops in flight and requeue + the snap trimmer directly as those repops complete. + + Fixes: #9113 + Backport: giant, dumpling, firefly + Signed-off-by: Samuel Just + +commit b29bf00f68cf133151c98db06e9498b3e8be22ed +Author: Samuel Just +Date: Wed Sep 24 13:55:47 2014 -0700 + + ReplicatedPG: clean out completed trimmed objects as we go + + Also, explicitely maintain a max number of concurrently trimming + objects. + + Fixes: 9113 + Backport: dumpling, firefly, giant + Signed-off-by: Samuel Just + +commit ee02cfd23facb3404fc377f643b213c2f498474d +Author: Yehuda Sadeh +Date: Thu Sep 18 20:53:10 2014 -0700 + + rgw: calculate hash after writing data + + Since data is written asynchronously, we should do the hash calculation + while it's pending. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 5bb94ede19a50543a02a8019ed6c9680b3852d4e) + +commit 216730221575d88a72b06ed3d71c9a54cffc5719 +Author: Yehuda Sadeh +Date: Thu Sep 18 20:51:02 2014 -0700 + + crypto: don't hash zero sized buffer + + libnss returns an error and we assert in that case. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 7b137246b49a9f0b4d8b8d5cebfa78cc1ebd14e7) + +commit dab7a4f6ad054b53cedca76ee329a6395918b1ab +Author: Yehuda Sadeh +Date: Fri Sep 12 14:07:44 2014 -0700 + + rgw: push hash calculater deeper + + This might have been the culprit for #9307. Before we were calculating + the hash after the call to processor->handle_data(), however, that + method might have spliced the bufferlist, so we can't be sure that the + pointer that we were holding originally is still invalid. Instead, push + the hash calculation down. Added a new explicit complete_hash() call to + the processor, since when we're at complete() it's too late (we need to + have the hash at that point already). + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit d41c3e858c6f215792c67b8c2a42312cae07ece9) + + Conflicts: + src/rgw/rgw_rados.h + +commit bd0a91343ce70d71acced753688a502b7e8b552e +Author: Yehuda Sadeh +Date: Thu Aug 21 16:30:10 2014 -0700 + + rgw: separate civetweb log from rgw log + + The civetweb log now is independent from the rgw log. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 850242cad749e33e1e6bc008baa75c8ea7eda0c1) + + Conflicts: + src/civetweb + src/rgw/rgw_main.cc + +commit a777562b780e7ab312f881c38b1db26983a1ac47 +Author: Yehuda Sadeh +Date: Tue Sep 23 13:40:39 2014 -0700 + + civetweb: update submodule + + Update submodule to include multiple fixes. + + Signed-off-by: Yehuda Sadeh + +commit 1bdcc079d79d8211b44e2a46511cd2240f71744b +Author: Yehuda Sadeh +Date: Fri Aug 22 15:12:16 2014 -0700 + + rgw: convert header field underscores into dashes + + Fixes: 9206 + Backport: firefly + + Certain web servers filter out underscores in the header field name. + Convert them into dashes. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 11acb7097ce21c6218dd48d0c21e0e04a361eb9a) + +commit b8fa2ed60b6cce51701df972dbb6f5e02e0d84ba +Author: Yehuda Sadeh +Date: Mon Aug 25 10:38:42 2014 -0700 + + rgw: fix test to identify whether object has tail + + Fixes: #9226 + Reported-by: Sylvain Munaut + Backport: firefly + + We need to identify whether an object is just composed of a head, or + also has a tail. Test for pre-firefly objects ("explicit objs") was + broken as it was just looking at the number of explicit objs in the + manifest. However, this is insufficient, as we might have empty head, + and in this case it wouldn't appear, so we need to check whether the + sole object is actually pointing at the head. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 751b3e26532932a42ca34f9c062a0a3e29a58cff) + +commit 6fee71154d838868807fd9824d829c8250d9d2eb +Author: Yehuda Sadeh +Date: Wed Aug 27 17:44:18 2014 -0700 + + rgw: don't try to authenticate a CORS preflight request + + Fixes: #8718 + Backport: firefly + + CORS preflight requests don't need to be authenticated. Treat them as + coming from anonymous user. + + Reported-by: Robert Hubbard + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 848fcf7871e07fc689bdcd18943ace36b2f4906e) + +commit c75a79cbac30cd14d37d89217113824d98693572 +Author: Yehuda Sadeh +Date: Thu Aug 14 13:35:12 2014 -0700 + + rgw: fix compilation + + RGWRadosPutObj couldn't refer to the ceph context. + + Reviewed-by: Sage Weil + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 6a555434ee3edaf742ee7e5910bcba8dd0de46dd) + +commit b0d08aab837808f18708a4f8ced0503c0fce2fec +Author: Yehuda Sadeh +Date: Tue Aug 12 11:17:47 2014 -0700 + + rgw: call throttle_data() even if renew_state() failed + + Otherwise we're going to leak the aio callback handle. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 7998c322179dd69a1250937321c3c2bb023e0e57) + +commit a953b313f1e2f884be6ee2ce356780f4f70849dd +Author: Yehuda Sadeh +Date: Wed Jul 30 21:32:48 2014 -0700 + + rgw: disable civetweb url decoding + + Fixes: #8621 + + We want to have the raw request uri, as we do the decoding ourselves. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit ffac52b316e7022796d44ae58804d9c20b9c3df9) + +commit ba5357714a19b8af989fef1c75ef775837c6a9d6 +Author: Yehuda Sadeh +Date: Tue Aug 12 14:23:46 2014 -0700 + + rgw: copy_obj_data() uses atomic processor + + Fixes: #9089 + + copy_obj_data was not using the current object write infrastructure, + which means that the end objects weren't striped. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 800eff24824c0083b8e2441fc34e0bdca5da36dc) + +commit d73dbc3a39117eddaaabb2c25d9238cd7c51711b +Author: Yehuda Sadeh +Date: Thu Aug 21 21:53:38 2014 -0700 + + rgw: clear bufferlist if write_data() successful + + Fixes: #9201 + Backport: firefly + + We sometimes need to call RGWPutObjProcessor::handle_data() again, + so that we send the pending data. However, we failed to clear the buffer + that was already sent, thus it was resent. This triggers when using non + default pool alignments. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 9181114d6f6062c55ee4b351fc3495345e545c36) + +commit 4be53d5eebbc294878ba38050d841359b6c8e19e +Author: Samuel Just +Date: Tue Sep 23 12:16:55 2014 -0700 + + PG: check full ratio again post-reservation + + Otherwise, we might queue 30 pgs for backfill at 0.80 fullness + and then never check again filling the osd after pg 11. + + Fixes: #9574 + Backport: dumpling, firefly, giant + Signed-off-by: Samuel Just diff --git a/doc/changelog/v0.80.9.txt b/doc/changelog/v0.80.9.txt new file mode 100644 index 00000000000..aa274d13780 --- /dev/null +++ b/doc/changelog/v0.80.9.txt @@ -0,0 +1,1148 @@ +commit b5a67f0e1d15385bc0d60a6da6e7fc810bde6047 (tag: refs/tags/v0.80.9, refs/remotes/gh/firefly) +Author: Jenkins +Date: Mon Mar 9 10:42:08 2015 -0700 + + 0.80.9 + +commit 37901afd1556257151c029395caa1143e84860f2 +Merge: 00e5947 3dac68a +Author: Loic Dachary +Date: Tue Mar 3 15:58:53 2015 +0100 + + Merge pull request #3852 from dachary/wip-10965-rgw-firefly + + rgw: enable ipv6 in civetweb + + Reviewed-by: Loic Dachary + +commit 00e5947a28f7810a28329d2f4901aed09a289421 +Merge: 293222a b13f483 +Author: Loic Dachary +Date: Tue Mar 3 15:58:39 2015 +0100 + + Merge pull request #3853 from dachary/wip-10907-rgw-firefly + + rgw: pass civetweb configurables to civetweb + + Reviewed-by: Loic Dachary + +commit 293222a284c072a13950831205c106fec7a400df +Merge: 6512b06 d57b38f +Author: Loic Dachary +Date: Tue Mar 3 15:58:25 2015 +0100 + + Merge pull request #3851 from dachary/wip-10978-rgw-firefly + + rgw: don't overwrite bucket / object owner when setting acls + + Reviewed-by: Loic Dachary + +commit d57b38f85b683dfb365c3cb98362d486594f9eb3 +Author: Yehuda Sadeh +Date: Fri Feb 27 15:32:50 2015 -0800 + + rgw: don't overwrite bucket / object owner when setting acls + + Fixes: #10978 + Backport: hammer, firefly + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit eb13f2d4b60c031f16139f7cc4237c012644dd78) + + Conflicts: + src/rgw/rgw_op.cc : trivial s/.empty()/== NULL/ + +commit b13f483e51b37a768c7f4313b6933bf648950c7d +Author: Yehuda Sadeh +Date: Tue Feb 17 15:05:40 2015 -0800 + + rgw: pass civetweb configurables to civetweb + + Fixes: #10907 + Backport: firefly + + Pass any configurables in the rgw frontends config line to civetweb. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 986d7554426764a149621ba733c5c075b94e0431) + +commit 3dac68a17a909b212a36b0a3c0ae2c47d323deee +Author: Yehuda Sadeh +Date: Fri Feb 27 08:14:27 2015 -0800 + + civetweb: update submodule + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit f28fe744285117a1715eac0d08911cdb37285103) + +commit 14aca3af18119a76c1cdfa6d71e6085d360e45e2 +Author: Yehuda Sadeh +Date: Fri Feb 27 08:14:41 2015 -0800 + + rgw: update makefile to enable civetweb config + + Fixes: #10965 + Backport: hammer, firefly + + Civetweb compilation now includes conf header to enable ipv6. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit caa90225bad9fe5e9c275e6189b3396b4d396e3f) + + Conflicts: + src/rgw/Makefile.am + radosgw_CFLAGS = -Icivetweb/include + was not yet changed into + radosgw_CFLAGS = -I$(srcdir)/civetweb/include + in firefly + +commit 6512b06fc8a80e3befbe15b543f8850991f74e8a +Merge: 7b748c6 555cc42 +Author: Loic Dachary +Date: Sat Feb 28 16:47:55 2015 +0100 + + Merge pull request #3820 from tchaikov/firefly-pg-leak-10421 + + osd: fix PG leak in SnapTrimWQ._clear() + + Reviewed-by: Loic Dachary + +commit 7b748c62764311572342593820ce3f28f74fe9ca +Merge: d971c95 da95149 +Author: Loic Dachary +Date: Sat Feb 28 16:46:42 2015 +0100 + + Merge pull request #3772 from ceph/wip-10883-firefly + + osd: Fix FileJournal wrap to get header out first + + Reviewed-by: Loic Dachary + +commit d971c95c3d8b48494d05b68f40c4c9a4cc6f87a8 +Merge: 0820041 e539971 +Author: Loic Dachary +Date: Sat Feb 28 16:45:48 2015 +0100 + + Merge pull request #3521 from dzafman/wip-10676 + + Backport doc fixes that appear to apply to firefly + + Reviewed-by: Loic Dachary + +commit 555cc42fc826fd801f0d45187429079d4072d129 +Author: Kefu Chai +Date: Tue Feb 10 16:29:45 2015 +0800 + + osd: fix PG leak in SnapTrimWQ._clear() + + Fixes: #10421 + Signed-off-by: Kefu Chai + (cherry picked from commit 01e154d592d6cdbf3f859cf1b4357e803536a6b4) + +commit 0820041e6515c82c41b81b9e6825e2dd5fcb8165 +Merge: 6565774 702dbc0 +Author: Gregory Farnum +Date: Thu Feb 26 15:59:24 2015 -0800 + + Merge pull request #3730 from ceph/wip-firefly-flock + + backport ceph-fuse file locking patches to Firefly + + Reviewed-by: Yan, Zheng + +commit 6565774d0356efc6225ad561bb13e7cf11da7b1e +Merge: 7ab02ee 08c2fda +Author: Josh Durgin +Date: Thu Feb 26 14:18:10 2015 -0800 + + Merge pull request #3406 from ceph/wip-10299-firefly + + librbd: complete all pending aio ops prior to closing image + + Reviewed-by: Josh Durgin + +commit 08c2fda12cf46937a09a59bb032379c3c5321292 +Author: Jason Dillaman +Date: Mon Dec 15 10:53:53 2014 -0500 + + librbd: complete all pending aio ops prior to closing image + + It was possible for an image to be closed while aio operations + were still outstanding. Now all aio operations are tracked and + completed before the image is closed. + + Fixes: #10299 + Backport: giant, firefly, dumpling + Signed-off-by: Jason Dillaman + +commit 7ab02ee5afb3d017b94d58c3dfc7731f7a3866d9 +Merge: 0c0a552 c23e42e +Author: Josh Durgin +Date: Thu Feb 26 14:12:29 2015 -0800 + + Merge pull request #3404 from ceph/wip-10270-firefly + + librbd: gracefully handle deleted/renamed pools + + Reviewed-by: Josh Durgin + +commit 0c0a5520b1b883bcdd5b865b217ba61e471e3ca2 +Merge: 9ef7743 836ab86 +Author: Josh Durgin +Date: Thu Feb 26 13:31:37 2015 -0800 + + Merge pull request #3410 from ceph/wip-9854-firefly + + osdc: Constrain max number of in-flight read requests + + Reviewed-by: Josh Durgin + +commit da951497b7e5ec227aa6a5e459b0d04d8b88ef13 (refs/remotes/gh/wip-10883-firefly) +Author: David Zafman +Date: Wed Feb 18 16:21:12 2015 -0800 + + osd: Fix FileJournal wrap to get header out first + + Correct and restore assert that was removed + + Cause by f46b1b473fce0322a672b16c7739e569a45054b6 + Fixes: #10883 + Backport: dumpling, firefly, giant + + Signed-off-by: David Zafman + (cherry picked from commit 970bb4901f93575709421b5b25c3eff213de61b8) + +commit 702dbc0a247c149d53b52d1929f9880bc99d0522 +Author: Yan, Zheng +Date: Wed Oct 15 12:00:58 2014 +0800 + + qa/workunits/fs/misc: Add a workunit for file lock interruption + + Signed-off-by: Yan, Zheng + (cherry picked from commit ac92c455a9aa19e4288acdf0c9a746e03a640efb) + +commit d2523b82c5c7b29293d70a66ba95493a1564a840 +Author: Yan, Zheng +Date: Wed Oct 15 12:03:46 2014 +0800 + + mds: fix neighbor lock check + + Signed-off-by: Yan, Zheng + (cherry picked from commit b0e6e85aa08ea74cd209aad04f3f0bf991761e12) + +commit f9b6b66b05ddadef043d81676728bf40730ea16c +Author: Yan, Zheng +Date: Mon Oct 13 11:34:18 2014 +0800 + + client: use finisher to abort MDS request + + When a request is interrupted, libfuse first locks an internal mutex, + then calls the interrupt callback. libfuse need to lock the same mutex + when unregistering interrupt callback. We unregister interrupt callback + while client_lock is locked, so we can't acquiring the client_lock in + the interrupt callback. + + Signed-off-by: Yan, Zheng + (cherry picked from commit 09699454e729592d426aeff5b578697e850af12e) + + Conflicts: + src/client/Client.cc + src/client/Client.h + + Signed-off-by: Greg Farnum + +commit ea355e9ca5203b77e6f74ca4a3e39ce23cc86f67 +Author: Yan, Zheng +Date: Thu Oct 9 13:16:18 2014 +0800 + + client: use atomic variable to track reference of MetaRequeset + + this allow us to increase reference count of MetaRequest while not holding + the client_lock + + Signed-off-by: Yan, Zheng + (cherry picked from commit e464a7765230c504b3e3b88bcb1106f67b7c3eb9) + +commit ccbdf514717cb0e48d67b57197d6e538faeea415 +Author: Yan, Zheng +Date: Mon Oct 13 10:44:46 2014 +0800 + + client: allow interrupting blocked file lock operation + + This commit introduce two new types of setfilelock request. Unlike + setfilelock (UNLOCK) request, these two new types of setfilelock request + do not drop locks that have alread been acquired, they only interrupt + blocked setfilelock request. + + Signed-off-by: Yan, Zheng + (cherry picked from commit 4134c149d3759dd6a3aaa1a353b77bbfe8e9491b) + +commit 875e2fcb060554941d94714ad48ebbc0cbbf8077 +Author: Yan, Zheng +Date: Thu Oct 9 09:42:08 2014 +0800 + + client: register callback for fuse interrupt + + libfuse allows program to reigster a callback for interrupt. When a file + system operation is interrupted, the fuse kernel driver sends interupt + request to libfuse. libfuse calls the interrupt callback when receiving + interrupt request. + + Signed-off-by: Yan, Zheng + (cherry picked from commit 289e8b4a7efa1ae6427115af9bbe541c9e1f0e90) + +commit c96aabbd54b24a0273af21a450cd6f517fe4ada0 +Author: Yan, Zheng +Date: Sat Oct 4 09:14:44 2014 +0800 + + client: add helper function that updates lock state + + Signed-off-by: Yan, Zheng + (cherry picked from commit 6a2303a6b6d97f2a6d1422e42d3d88991857618f) + + Conflicts: + src/client/Client.h + + Signed-off-by: Greg Farnum + +commit ebbd3ca66722cdc61b56d243baf8e63f7b8c1c1b +Author: Yan, Zheng +Date: Thu Oct 2 20:21:36 2014 +0800 + + fuse: enable fuse_multithreaded by default + + GETFILELOCK MDS request may block for a long time, so we need to + use multithread event loop, + + Signed-off-by: Yan, Zheng + (cherry picked from commit b17b43a8660ed0db29fbecf44798265e47712f85) + +commit 924e6f2b6b03456a8b18d8b158b8f325051f0519 +Author: Yan, Zheng +Date: Thu Oct 2 19:07:41 2014 +0800 + + client: posix file lock support + + Signed-off-by: Yan, Zheng + (cherry picked from commit a1b2c8ff955b30807ac53ce6bdc97cf61a7262ca) + + Conflicts: + src/client/Client.cc + src/client/Client.h + src/client/Inode.h + + Signed-off-by: Greg Farnum + +commit 82994946bdcb95867a61e0acf443e30b13925a34 +Author: Yan, Zheng +Date: Thu Oct 2 18:02:50 2014 +0800 + + common: link mds/flock.o to libcommon + + later commit will use this code to track file locks held by cephfs + client. + + Signed-off-by: Yan, Zheng + (cherry picked from commit e075c27c3554380c59dce0cc17ef0944eb415025) + + Conflicts: + src/mds/Makefile.am + + Signed-off-by: Greg Farnum + +commit 9ef77430f3d46789b0ba1a2afa42729627734500 +Merge: 1205867 b668566 +Author: Loic Dachary +Date: Fri Feb 13 18:34:11 2015 +0100 + + Merge pull request #3684 from ceph/wip-crush-straw-firefly + + osd: backport straw bucket fixes and all other recent crush goodness to firefly + + Reviewed-by: Loic Dachary + +commit b668566fd8148414b8074f096b85b22c42ed3af9 (refs/remotes/gh/wip-crush-straw-firefly) +Author: Sage Weil +Date: Fri Jan 16 09:02:28 2015 -0800 + + crush/builder: fix warnings + + crush/builder.c: In function 'crush_remove_list_bucket_item': + crush/builder.c:977:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] + if (weight < bucket->h.weight) + ^ + crush/builder.c: In function 'crush_remove_tree_bucket_item': + crush/builder.c:1031:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] + if (weight < bucket->h.weight) + ^ + + Signed-off-by: Sage Weil + (cherry picked from commit 14eb1a73c71d81b7f193fce27c59cb3babf3e74a) + +commit 247afa4efe7d11b5ef06e094680b50ea30d7d5e3 +Author: Loic Dachary +Date: Wed Oct 15 17:02:58 2014 -0700 + + crush: improve constness of CrushWrapper methods + + A number of CrushWrapper get methods or predicates were not const + because they need to maintain transparently the rmaps. Make the rmaps + mutable and update the constness of the methods to match what the caller + would expect. + + Signed-off-by: Loic Dachary + (cherry picked from commit 236895eea65f8706baa5fdef96fb00ad5b82218c) + +commit c59279a25b6c53e0ab3988b0f00ae3cce94f33d7 +Author: Xiaoxi Chen +Date: Fri Sep 5 10:56:36 2014 +0800 + + Change CrushWrapper::crush to private + + Currently in CrushWrapper, the member "struct crush_map *crush" is a public member, + so people can break the encapsulation and manipulate directly to the crush structure. + + This is not a good practice for encapsulation and will lead to inconsistent if code + mix use the CrushWrapper API and crush C API.A simple example could be: + 1.some code use crush_add_rule(C-API) to add a rule, which will not set the have_rmap flag to false in CrushWrapper + 2.another code using CrushWrapper trying to look up the newly added rule by name will get a -ENOENT. + + This patch move CrushWrapper::crush to private, together with three reverse map(type_rmap, name_rmap, rule_name_rmap) + and also change codes accessing the CrushWrapper::crush to make it compile. + + Signed-off-by: Xiaoxi Chen + (cherry picked from commit d734600f9251b52f525faa35441e2b5dd660161b) + +commit 9fc2fd50aec94233528870aaa371347238a6ea75 +Author: Sage Weil +Date: Fri Jul 11 06:58:57 2014 -0700 + + crush: include CRUSH_V3, v2/v3 rules checks in dump_tunables() + + Backport: firefly + Signed-off-by: Sage Weil + (cherry picked from commit cf94cf3531a349bbd1fc6ee56c3fc260110a252a) + +commit f6009a614a3689cc9a96f55b35e70362be4ec64b +Author: Sage Weil +Date: Fri Dec 5 15:58:03 2014 -0800 + + mon: 'osd crush reweight-all' + + This corresponds to the crushtool --reweight command. + + Signed-off-by: Sage Weil + (cherry picked from commit 89b2feea8d53b9dc15ab5ae7f5920ad19c8bba18) + +commit d5d7495432dd023ed8c9ba2ac08222f06afee48f +Author: Sage Weil +Date: Fri Dec 5 15:55:24 2014 -0800 + + crush: set straw_calc_version=1 for default+optimal; do not touch for presets + + When using the presets for compatibility (i.e., based on version), do not + touch the straw behavior, as it does not affect mapping or compatibility. + However, make a point of setting it by default and for optimal. + + For most users, this means that they will not see any change unless they + explicitly enable the new behavior, or switch to default or optimal + tunables. The idea is that if they touched it, they shouldn't be + too surprised by the subsequent data movement. + + Signed-off-by: Sage Weil + (cherry picked from commit dd7b58f3b1aa1febfc6dc227937df93ee6e284eb) + + (Note: differs from original in that the hammer tunable profile is not + present) + +commit 5b7b7599123a9d7a837ded52946bd553b09b1ac7 +Author: Sage Weil +Date: Wed Dec 3 22:30:00 2014 -0800 + + crush/builder: a note about the original crush_calc_straw() + + Signed-off-by: Sage Weil + (cherry picked from commit adf5c6de0aca24a53d3c7b4e7eeb0a5dce9db0f1) + +commit 3ab835b059fd74a525cc2a8ebe8b6a1453e0cc87 +Author: Sage Weil +Date: Tue Dec 2 16:43:16 2014 -0800 + + mon: add 'osd crush {get,set}-tunable [value]' commands + + For now, just add the straw_calc_version tunable. + + Signed-off-by: Sage Weil + (cherry picked from commit 9000068ae45a8b89315c152b7d5509ac873f2957) + + Conflicts: + src/mon/OSDMonitor.cc + +commit 884414c5788bac9a269f01b26cbc0c55850c34f6 +Author: Sage Weil +Date: Tue Dec 2 16:33:11 2014 -0800 + + crush: fix crush_calc_straw() scalers when there are duplicate weights + + The straw bucket was originally tested with uniform weights and with a + few more complicated patterns, like a stair step (1,2,3,4,5,6,7,8,9). And + it worked! + + However, it does not behave with a pattern like + 1, 2, 2, 3, 3, 4, 4 + + Strangely, it does behave with + 1, 1, 2, 2, 3, 3, 4, 4 + + and more usefully it does behave with + 1, 2, 2.001, 3, 3.001, 4, 4.001 + + That is, the logic that explicitly copes with weights that are duplicates + is broken. + + The fix is to simply remove the special handling for duplicate weights -- + it isn't necessary and doesn't work correctly anyway. + + Add a test that compares the mapping result of [1, 2, 2, 3, 3, ...] with + [1, 2, 2.001, 3, 3.001, ...] and verifies that the difference is small. + With the fix, we get .00012, whereas the original implementation gets + .015. + + Note that this changes the straw bucket scalar *precalculated* values that + are encoded with the map, and only when the admin opts into the new behavior. + + Backport: giant, firefly + Signed-off-by: Sage Weil + (cherry picked from commit 43d5c7caa7ce478477bde1bbd4f0649b5159cdcf) + +commit bf677093302f475a23de541471ddde6a7c7153b6 +Author: Sage Weil +Date: Tue Dec 2 14:50:21 2014 -0800 + + crush: fix distortion of straw scalers by 0-weight items + + The presence of a 0-weight item in a straw bucket should have no effect + on the placement of other items. Add a test validating that and fix + crush_calc_straw() to fix the distortion. + + Note that this effects the *precalculation* of the straw bucket inputs and + does not effect the actually mapping process given a compiled or encoded + CRUSH map, and only when straw_calc_version == 1 (i.e., the admin opted in + to the new behavior). + + Backport: giant, firefly + Signed-off-by: Sage Weil + (cherry picked from commit 85498bc8f62ca56506b33f3c5ec4fc4b111ed73d) + +commit e02574ef5d3b66e73424a16460366de2d36eded3 +Author: Sage Weil +Date: Tue Dec 2 14:49:42 2014 -0800 + + crush/builder: break out new version 1 of crush_calc_straw + + No change, yet. + + Signed-off-by: Sage Weil + (cherry picked from commit 7c1203635f2b5911f281ce3a441905df6e9bd103) + +commit c7312a47865c758e67852999803d8aa90ff809c1 +Author: Sage Weil +Date: Tue Dec 2 14:45:04 2014 -0800 + + crush: pass crush_map * to various builder methods + + In particular, we will need it for crush_calc_straw(). + + Signed-off-by: Sage Weil + (cherry picked from commit f35a3d88cb944c292e966f679ac7a8d7a1cd3093) + + Conflicts: + src/crush/CrushWrapper.cc + +commit 5137cc656548d942d0f21ba3ef28a5b7d4d21831 +Author: Rongze Zhu +Date: Fri Oct 10 19:18:00 2014 +0800 + + crush: fix incorrect use of adjust_item_weight method + + adjust_item_weight method will adjust all buckets which the item + inside. If the osd.0 in host=fake01 and host=fake02, we execute + "ceph osd crush osd.0 10 host=fake01", it not only will adjust fake01's + weight, but also will adjust fake02's weight. + + the patch add adjust_item_weightf_in_loc method and fix remove_item, + _remove_item_under, update_item, insert_item, detach_bucket methods. + + Signed-off-by: Rongze Zhu + (cherry picked from commit 9850227d2f0ca2f692a154de2c14a0a08e751f08) + + Conflicts: + src/crush/CrushWrapper.cc + +commit 80ec22014deb8536b9c34e8d57b286052898d05a +Author: Sage Weil +Date: Thu Nov 13 10:59:22 2014 -0800 + + crush/CrushWrapper: fix detach_bucket + + In commit 9850227d2f0ca2f692a154de2c14a0a08e751f08 we changed the call that + changed the weight of all instances of item to one that explicitly + changes it in the parent bucket, but parent_id may not be valid at the + call site. Move this into the conditional block to fix. + + Fixes: #10095 + Signed-off-by: Sage Weil + (cherry picked from commit 6f8b96a9fe4793906c74a571109a457aca7ca220) + +commit 5bc554ac5a7a4cd86b873bfc4f4313c91287b52c +Author: Sage Weil +Date: Tue Dec 2 14:10:49 2014 -0800 + + crush: default to straw_calc_version 1 + + Stick with bobtail tunables where it affects compatibility. Use v1 of + straw_calc, though, since that does not, and we want the best for new + clusters. + + Signed-off-by: Sage Weil + (cherry picked from commit 9565621d6007302fdd68ba27b6aef22e487f0985) + +commit cfc718a5a1fec937cf00e6c2b55f66d4390088bb +Author: Sage Weil +Date: Fri Feb 13 08:30:35 2015 -0800 + + crush: add straw_calc_version tunable + + It doesn't do anything, yet. + + Signed-off-by: Sage Weil + (cherry picked from commit 50e2ceefee6a5dfbecbe54890139b1fa80a313c8) + + (Modified from original to not create the 'hammer' tunable profile, which + we will not backport in its entirety.) + +commit 1205867d3afe6d457483f9f51aaee79cca74e040 +Author: Josh Durgin +Date: Mon Feb 2 16:43:35 2015 +0100 + + qa: use correct binary path on rpm-based systems + + Fixes: #10715 + Signed-off-by: Josh Durgin + (cherry picked from commit 05ce2aa1bf030ea225300b48e7914577a412b38c) + +commit da4146a5e03503083e6bc5c12984c06f41a3b4be +Author: Greg Farnum +Date: Thu Feb 5 21:12:17 2015 -0800 + + fsync-tester: print info about PATH and locations of lsof lookup + + We're seeing the lsof invocation fail (as not found) in testing and nobody can + identify why. Since attempting to reproduce the issue has not worked, this + patch will gather data from a genuinely in-vitro location. + + Signed-off-by: Greg Farnum + (cherry picked from commit a85051483874ff5b8b0fb50426a3577040457596) + +commit 61b4f09848796faeacf7eb78dd6dc06513beb737 +Author: Sage Weil +Date: Tue Dec 2 14:04:34 2014 -0800 + + crush/CrushWrapper: dump chooseleaf_vary_r with other tunables + + Signed-off-by: Sage Weil + (cherry picked from commit c133a83fe7b77e2a7e7c711cb8ab943c59ff0885) + +commit e4939ed5535cc4678cf1d1ae80906290448e6590 +Author: Sage Weil +Date: Tue Dec 2 10:12:25 2014 -0800 + + crush/CrushTester: add new --show-mappings option + + This makes --show-utilization and --show-statistics usable. + + Signed-off-by: Sage Weil + (cherry picked from commit 3877f00877f53e9f86630c2d89e81ab9cff729ec) + +commit 8c48ebbf13e6bdb689b4b8ae58ac811653ad2acc +Author: Sage Weil +Date: Tue Dec 2 10:11:57 2014 -0800 + + crushtool/CrushTester: output utilization even with 1 batch + + Signed-off-by: Sage Weil + (cherry picked from commit 294b06c6424f4cb69394976add826d9725073b50) + +commit e9faab9f296af9cf26b9475afd3562c3f3b9236b +Author: Sage Weil +Date: Tue Dec 2 10:08:18 2014 -0800 + + crush: recalculate straw scalers during a reweight + + The crushtool --reweight function triggers a fresh calculation of bucket + weights so that they are always the sum of the item weights. In the + straw bucket case, the weights were updated but the corresponding straw + scalers were not being recalculated. The result is that there was not + effect on placement in adjusted buckets until the next time a bucket item's + weight was adjusted. + + Backport: giant, firefly + Signed-off-by: Sage Weil + (cherry picked from commit 35062937f174a45fb13d9c177eaa1fe4ed5ff4c2) + +commit 4c951e9dc1ca31429119de15755caf3d73f6ffce +Author: Sage Weil +Date: Tue Dec 2 08:36:41 2014 -0800 + + osdmaptool: --test-map-pgs-dump + + Signed-off-by: Sage Weil + (cherry picked from commit 7a99b489909b368bade36d8cc9722ad33d03a2e8) + +commit 3cb5d08feee4811624dd495f74912824203edf00 +Author: Sage Weil +Date: Tue Dec 2 06:53:20 2014 -0800 + + crush: add dprintk's for crush_calc_straw + + These are compiled out by default. + + Signed-off-by: Sage Weil + (cherry picked from commit 946bebd94b109642f95710802e892c59eb4f0b76) + +commit ca8471d65fb2cf7d2247d823c5436faa273efda5 +Author: Rongze Zhu +Date: Tue Nov 11 00:13:42 2014 +0800 + + crush: fix tree bucket functions + + There are incorrect nodes' weight in tree bucket when construct tree + bucket. The tree bucket don't store item id in items array, so the tree + bucket will not work correctly. The patch fix above bugs and add a + simple test for tree bucket. + + Signed-off-by: Rongze Zhu + (cherry picked from commit 13425488882d360fa740613dfcfd0d098c1b7616) + +commit af502f25b04cd0758b753941ecf0b1b59d33ea9e +Author: Sage Weil +Date: Tue Nov 11 11:16:58 2014 -0800 + + crush/builder: replace printf with an empty dprintk macro + + This mirrors mapper.c. + + Signed-off-by: Sage Weil + (cherry picked from commit e444b221733360cdea4f4bbdbbbfbf2b6ee30ff5) + +commit 26966c4aa9cd79cb53db052553a5fc5653f2591b +Author: Greg Farnum +Date: Thu Nov 6 17:48:01 2014 -0800 + + qa: use sudo even more when rsyncing /usr + + Signed-off-by: Greg Farnum + (cherry picked from commit 3aa7797741f9cff06053a2f31550fe6929039692) + +commit 6af48421c0ba6195e9a1607053c42eeb62b14ccb +Author: Greg Farnum +Date: Tue Oct 21 10:55:06 2014 -0700 + + qa: use sudo when rsyncing /usr so we can read everything + + Signed-off-by: Greg Farnum + (cherry picked from commit fa07c04231db2d130de54647957ffab4a7a53733) + +commit 861a18b1f7dd5bdcbb85bc3fa15d1719bb4b2813 +Author: Yehuda Sadeh +Date: Thu Jan 15 16:31:22 2015 -0800 + + rgw: fix partial GET in swift + + Fixes: #10553 + backport: firefly, giant + + Don't set the ret code to reflect partial download, just set the + response status when needed. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 7e1553cedff90fa0fefded65cde87ad068eb5f0c) + +commit e539971e2d528b4de6009ea44565f037acb2be66 (refs/remotes/gh/wip-10676) +Author: Nilamdyuti Goswami +Date: Thu Dec 18 17:13:27 2014 +0530 + + doc: Adds updated man page for ceph under man/ + + Signed-off-by: Nilamdyuti Goswami + (cherry picked from commit 8de9a0f437822c770600c19a9f61977745b7e530) + +commit 15596ffe388147b7984457041a38cbb9f472556c +Author: Nilamdyuti Goswami +Date: Sat Dec 13 02:27:45 2014 +0530 + + doc: Adds man page for ceph under man/. + + Signed-off-by: Nilamdyuti Goswami + (cherry picked from commit ffd6c7e49686f8f92ddb400ffdec62520708e64b) + +commit 893e5cd1f4fd5ea77d65f0e78cc8cff88eb19c1a +Author: Nilamdyuti Goswami +Date: Sat Dec 13 02:24:41 2014 +0530 + + doc: Adds man page for ceph. + + Signed-off-by: Nilamdyuti Goswami + (cherry picked from commit 76da87a64ca6b3cc0ceeaf63e19a9f440d6f4161) + +commit 8d29a4a231666830914903b95599d80da7b97def +Author: Sage Weil +Date: Mon Dec 15 17:04:32 2014 -0800 + + osd: handle no-op write with snapshot case + + If we have a transaction that does something to the object but it !exists + both before and after, we will continue through the write path. If the + snapdir object already exists, and we try to create it again, we will + leak a snapdir obc and lock and later crash on an assert when the obc + is destroyed: + + 0> 2014-12-06 01:49:51.750163 7f08d6ade700 -1 osd/osd_types.h: In function 'ObjectContext::~ObjectContext()' thread 7f08d6ade700 time 2014-12-06 01:49:51.605411 + osd/osd_types.h: 2944: FAILED assert(rwstate.empty()) + + Fix is to not recreated the snapdir if it already exists. + + Fixes: #10262 + Signed-off-by: Sage Weil + (cherry picked from commit 02fae9fc54c10b5a932102bac43f32199d4cb612) + +commit 8ba48d10c252b28cde5b4da1286421db12b57cc2 +Author: Sage Weil +Date: Mon Jan 19 18:28:20 2015 -0800 + + ceph_test_rados_api_misc: do not assert rbd feature match + + This test fails on upgrades when we (or the server) have new + features. Make it less fragile. + + Fixes: #10576 + Signed-off-by: Sage Weil + (cherry picked from commit 9147c62989871cea8b3a85b02c53017825efb55b) + +commit 836ab86d89ae15ed5b228ff656bc81c7cc3495aa +Author: Jason Dillaman +Date: Mon Oct 27 14:47:19 2014 -0400 + + osdc: Constrain max number of in-flight read requests + + Constrain the number of in-flight RADOS read requests to the + cache size. This reduces the chance of the cache memory + ballooning during certain scenarios like copy-up which can + invoke many concurrent read requests. + + Fixes: #9854 + Backport: giant, firefly, dumpling + Signed-off-by: Jason Dillaman + (cherry picked from commit 068d68850d09dfcaccc5a3ce85c80b2f6d808ea9) + +commit 2964efaf327cf798f892a6722eb4e24f2ffa0fde +Author: Jason Dillaman +Date: Mon Jan 19 12:46:00 2015 -0500 + + Revert "Enforce cache size on read requests" + + This reverts commit b7784dc1baa47560a733fe9dcd2acec51bc93165. + +commit e4c5b153735aba3f84554a50243f779f36568373 +Author: Jason Dillaman +Date: Mon Jan 19 12:45:25 2015 -0500 + + Revert "rbd: ObjectCacher reads can hang when reading sparse files" + + This reverts commit 711a7e6f81983ff2091caa0f232af914a04a041c. + +commit c23e42e78ea3ba44706951a728e2ccb74cac7b33 +Author: Jason Dillaman +Date: Mon Jan 19 10:28:56 2015 -0500 + + librbd: gracefully handle deleted/renamed pools + + snap_unprotect and list_children both attempt to scan all + pools. If a pool is deleted or renamed during the scan, + the methods would previously return -ENOENT. Both methods + have been modified to more gracefully handle this condition. + + Fixes: #10270 + Backport: giant, firefly + Signed-off-by: Jason Dillaman + (cherry picked from commit 436923c68b77c900b7774fbef918c0d6e1614a36) + +commit 24c13d87039d4f61df0bcabdb8862e0e94fe575d +Author: Yehuda Sadeh +Date: Fri Dec 12 05:24:01 2014 -0800 + + rgw: change multipart upload id magic + + Fixes: #10271 + Backport: firefly, giant + + Some clients can't sign requests correctly with the original magic + prefix. + + Reported-by: Georgios Dimitrakakis + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 5fc7a0be67a03ed63fcc8408f8d71a31a1841076) + +commit 617002d3ff469ef409a83e35d4f4fd6a0b5b1278 +Author: Yehuda Sadeh +Date: Thu Dec 11 09:07:10 2014 -0800 + + rgw: url decode http query params correctly + + Fixes: #10271 + Backport: firefly + + This got broken by the fix for #8702. Since we now only url_decode if + we're in query, we need to specify that we're in query when decoding + these args. + + Reported-by: Georgios Dimitrakakis + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 21e07eb6abacb085f81b65acd706b46af29ffc03) + +commit d7ccf71d962cec1571f53c9392f9b58350569062 +Author: Josh Durgin +Date: Wed Jan 14 15:01:38 2015 -0800 + + qa: ignore duplicates in rados ls + + These can happen with split or with state changes due to reordering + results within the hash range requested. It's easy enough to filter + them out at this stage. + + Backport: giant, firefly + Signed-off-by: Josh Durgin + (cherry picked from commit e7cc6117adf653a4915fb7a75fac68f8fa0239ec) + +commit aef69572588a0dfad58df94cb0d0980d0590d8e4 +Merge: 69eaad7 534624b +Author: Yehuda Sadeh +Date: Thu Jan 15 16:40:48 2015 -0800 + + Merge branch 'wip-firefly-rgw-backports' into firefly + +commit 534624b7e9decc880e88496355a6fbbe008ede5f +Author: Sage Weil +Date: Tue Oct 21 17:59:30 2014 -0700 + + init-radosgw.sysv: set ulimit -n before starting daemon + + If we do the ulimit inside the daemon command we will have already + dropped privs and will fail. + + Fixes: #9587 + Backport: giant, firefly + Signed-off-by: Sage Weil + (cherry picked from commit 9803cedf54a7baff45ccd0e0f65d2bc220958a46) + +commit fd49cbc535d0d7fa64ebfa458386b47c8ec8616e +Author: Yehuda Sadeh +Date: Fri Dec 12 17:07:30 2014 -0800 + + rgw: use s->bucket_attrs instead of trying to read obj attrs + + Fixes: #10307 + Backport: firefly, giant + + This is needed, since we can't really read the bucket attrs by trying to + read the bucket entry point attrs. We already have the bucket attrs + anyway, use these. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 5cf193c8686196d5235889e68cb5ea8f1fc8e556) + +commit 79bfffb55a0b3a302368e34417d62f74b82dc224 +Author: Yehuda Sadeh +Date: Wed Nov 5 13:40:55 2014 -0800 + + rgw: remove swift user manifest (DLO) hash calculation + + Fixes: #9973 + Backport: firefly, giant + + Previously we were iterating through the parts, creating hash of the + parts etags (as S3 does for multipart uploads). However, swift just + calculates the etag for the empty manifest object. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit ef6d3ad964d34bc526dc4435486bd5c8cdc3b230) + + Conflicts: + src/rgw/rgw_op.cc + +commit ac799f0834783590cbb6eb91784c8e0753cb1e03 +Author: Lei Dong +Date: Mon Oct 27 10:29:48 2014 +0800 + + fix can not disable max_size quota + + Currently if we enable quota and set max_size = -1, it doesn’t + mean max_size is unlimited as expected. Instead, it means object + with any size is not allowed to upload because of “QuotaExceeded”. + The root cause is the function rgw_rounded_kb which convert max_size + to max_size_kb returns 0 for -1 because it takes an unsigned int + but we pass an int to it. A simple fix is check max_size before + it’s rounded to max_size_kb. + + Test case: + 1 enable and set quota: + radosgw-admin quota enable --uid={user_id} --quota-scope=user + radosgw-admin quota set --quota-scope=user --uid={user_id}\ + --max-objects=100 --max-size=-1 + 2 upload any object with non-zero length + it will return 403 with “QuotaExceeded” and return 200 if you apply the fix. + + Fixes: #9907 + Backport: giant, firefly + Signed-off-by: Dong Lei leidong@yahoo-inc.com + (cherry picked from commit abd3fd3ef9ee9999b99811937af60b7a5e673e35) + +commit 30963fdc98f5650a68b5737729920d43459b5899 +Author: Yehuda Sadeh +Date: Tue Sep 23 12:43:55 2014 -0700 + + rgw: rados->set_attrs() updates bucket index + + Fixes: #5595 + Backport: dumpling, firefly + We need to update the bucket index when updating object attrs, otherwise + we're missing meta changes that need to be registered. It also + solves issue of bucket index not knowing about object acl changes, + although this one still requires some more work. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit f833f12a200ecc2c4f74ddb443d6fa61b7ad14db) + +commit 31f5e332c616dbb7f7338af3ab37ac65ff66f733 +Author: Yehuda Sadeh +Date: Tue Nov 4 22:05:03 2014 -0800 + + rgw: RGWRados::get_obj() returns wrong len if len == 0 + + Fixes: #9877 + We only updated if len was > 0, should update it if r >= 0. This was the + culprit for issue #9877. + Backport: giant, firefly + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit fe7bf06366adaf787816d1e68f5e3f68e8c91134) + +commit 8682d1b15e097ececd927dfbd096dbb46403afca +Author: Yehuda Sadeh +Date: Wed Nov 5 13:28:02 2014 -0800 + + rgw: send back ETag on S3 object copy + + Fixes: #9479 + Backport: firefly, giant + We didn't send the etag back correctly. Original code assumed the etag + resided in the attrs, but attrs only contained request attrs. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit b1bfc3a7e0c9088f01f8ff770ae14f569fbc570d) + + Conflicts: + src/rgw/rgw_rados.cc + +commit 2d61fc76e97e5e28cf24cc6e341d49a8fe47059c +Author: Yehuda Sadeh +Date: Wed Nov 5 12:35:42 2014 -0800 + + rgw: S3 object copy content type fix + + Fixes: #9478 + Backport: firefly, giant + Content type for S3 object copy response should be set to + application/xml. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 31963459a0a869c4d32f55baa629f36df33eaa90) + +commit 011a8c3bd621337e5a1746f18882be20d3854b14 +Author: Yehuda Sadeh +Date: Fri Dec 12 11:20:26 2014 -0800 + + rgw: http headers need to end with \r\n + + Fixes: #9254 + Backport: firefly, giant + + Reported-by: Benedikt Fraunhofer + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 7409ab3df18fb312dd6c9f79084f889c523afdce) + + Conflicts: + src/rgw/rgw_civetweb.cc + src/rgw/rgw_fcgi.cc + +commit 71d119f2952716aa1f75817e1daaf5fb67ecde94 +Author: Yehuda Sadeh +Date: Wed Jan 7 13:56:14 2015 -0800 + + rgw: index swift keys appropriately + + Fixes: #10471 + Backport: firefly, giant + + We need to index the swift keys by the full uid:subuser when decoding + the json representation, to keep it in line with how we store it when + creating it through other mechanism. + + Reported-by: hemant burman + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 478629bd2f3f32afbe6e93eaebb8a8fa01af356f) + +commit 7b89a827a063acf78a848a34c1c3298db213950f +Author: Yehuda Sadeh +Date: Thu Nov 20 10:36:05 2014 -0800 + + rgw-admin: create subuser if needed when creating user + + Fixes: #10103 + Backport: firefly, giant + This turned up after fixing #9973. Earlier we also didn't create the + subuser in this case, but we didn't really read the subuser info when it + was authenticating. Now we do that as required, so we end up failing the + authentication. This only applies to cases where a subuser was created + using 'user create', and not the 'subuser create' command. + + Reviewed-by: Sage Weil + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 9ba17a321db06d3d76c9295e411c76842194b25c) + +commit 9ee29b5355e9ffeac76707e8d4070bfff5dc99d5 +Author: Yehuda Sadeh +Date: Wed Nov 5 14:38:46 2014 -0800 + + rgw: update swift subuser perm masks when authenticating + + Fixes: #9918 + Backport: firefly, giant + It seems that we weren't setting the swift perm mask correctly. + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit 5d9f36f757a7272c24d2c9adc31db1ed5e712992) + +commit d298fdda2aa177e1a4b43ca94a2292435a50dea4 +Author: Yehuda Sadeh +Date: Thu Oct 23 17:39:42 2014 -0700 + + rgw: send http status reason explicitly in fastcgi + + There are issues in certain versions of apache 2.4, where the reason is + not sent back. Instead, just provide the reason explicitly. + + Backport: firefly, giant + + Signed-off-by: Yehuda Sadeh + (cherry picked from commit a9dd4af401328e8f9071dee52470a0685ceb296b)