X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fceph%2Fdoc%2Fchangelog%2Fv0.67.6.txt;fp=src%2Fceph%2Fdoc%2Fchangelog%2Fv0.67.6.txt;h=0000000000000000000000000000000000000000;hb=7da45d65be36d36b880cc55c5036e96c24b53f00;hp=510893a19dbb672ff29b1d160e80689a7309a750;hpb=691462d09d0987b47e112d6ee8740375df3c51b2;p=stor4nfv.git diff --git a/src/ceph/doc/changelog/v0.67.6.txt b/src/ceph/doc/changelog/v0.67.6.txt deleted file mode 100644 index 510893a..0000000 --- a/src/ceph/doc/changelog/v0.67.6.txt +++ /dev/null @@ -1,1258 +0,0 @@ -commit c71f8a60cf49fb3d4efb5ea75b2366cd7f167497 (tag: refs/tags/v0.67.6) -Author: Alfredo Deza -Date: Thu Feb 13 20:20:42 2014 +0000 - - release build 67.6 - - Signed-off-by: Alfredo Deza - -commit 1c42a6e34bb8e318e001384270cda003add946a7 -Merge: 3e473d4 c5e12f9 -Author: Sage Weil -Date: Thu Feb 13 06:55:37 2014 -0800 - - Merge pull request #1232 from ceph/dumpling-7334 - - backport ceph-disk improvements to dumpling - - http://pulpito.ceph.com/ubuntu-2014-02-12_16:52:33-ceph-deploy-dumpling-7334-testing-basic-plana/ - -commit 3e473d4237697872498094b41fed19b414f8d3c4 -Author: David Zafman -Date: Fri Sep 27 16:23:09 2013 -0700 - - common,os: Remove filestore_xattr_use_omap option - - Now we operate just like when this was set to true - - Fixes: #6143 - - Signed-off-by: David Zafman - (cherry picked from commit dc0dfb9e01d593afdd430ca776cf4da2c2240a20) - -commit c5e12f94efc07f0ff174c0f19494ee2e06d88dfa -Author: Alfredo Deza -Date: Wed Feb 12 16:43:59 2014 -0500 - - add support for absence of PATH - - Note that this commit is actually bisecting the changes from - Loic Dachary that touch ceph-disk only (ad515bf). As that changeset - also touches other files it causes conflicts that are not resolvable - for backporting it to dumpling. - - Signed-off-by: Alfredo Deza - -commit c531d75f7e86cee619e44c247298b50c37b81539 -Author: Sage Weil -Date: Mon Sep 9 22:27:23 2013 -0700 - - ceph-disk: make initial journal files 0 bytes - - The ceph-osd will resize journal files up and properly fallocate() them - so that the blocks are preallocated and (hopefully) contiguous. We - don't need to do it here too, and getting fallocate() to work from - python is a pain in the butt. - - Fixes: #5981 - Signed-off-by: Sage Weil - (cherry picked from commit a786ad773cd33880075f1deb3691528d1afd03ec) - -commit 836ead3e42491597c192c63d3171021c5daecbc0 -Author: Alfredo Deza -Date: Mon Feb 10 15:07:55 2014 -0500 - - alert the user about error messages from partx - - Signed-off-by: Alfredo Deza - (cherry picked from commit 9bcc42a3e6b08521694b5c0228b2c6ed7b3d312e) - -commit cff3547c60dc6d164f9a95eaa2706633e32756d0 -Author: Alfredo Deza -Date: Fri Feb 7 11:55:01 2014 -0500 - - use partx for red hat or centos instead of partprobe - - Signed-off-by: Alfredo Deza - (cherry picked from commit 42900ff9da9f5adcac239a84ebf4d2e407c29699) - -commit 5ebd7c4520a9805f985cab1a0ba9311e19efa041 -Author: Josh Durgin -Date: Tue Jan 28 17:26:58 2014 -0800 - - ceph-disk: run the right executables from udev - - When run by the udev rules, PATH is not defined. Thus, - ceph-disk-activate relies on its which() function to locate the - correct executable. The which() function used os.defpath if none was - set, and this worked for anything using it. - - ad6b4b4b08b6ef7ae8086f2be3a9ef521adaa88c added a new default value to - PATH, so only /usr/bin was checked by callers that did not use - which(). This resulted in the mount command not being found when - ceph-disk-activate was run by udev, and thus osds failing to start - after being prepared by ceph-deploy. - - Make ceph-disk consistently use the existing helpers (command() and - command_check_call()) that use which(), so lack of PATH does not - matter. Simplify _check_output() to use command(), - another wrapper around subprocess.Popen. - - Fixes: #7258 - Signed-off-by: Josh Durgin - (cherry picked from commit d7b0c7faafd37e4ae8a1680edfa60c22b419cbd8) - -commit 4a7c4e0a81753dfb811396e7bfa1df72135ee12b -Author: Loic Dachary -Date: Fri Jan 3 16:06:55 2014 +0100 - - ceph-disk: implement --sysconfdir as /etc/ceph - - Replace hardcoded /etc/ceph with the SYSCONFDIR global variable and - implement the --sysconfdir option to override the default value. - - Signed-off-by: Loic Dachary - (cherry picked from commit a71025d33621257b6fd6632516cfed2849ff1637) - -commit c8b9798a69bd1655a7131c7bce8a14c2c74aba0c -Author: Loic Dachary -Date: Fri Jan 3 16:03:09 2014 +0100 - - ceph-disk: implement --statedir as /var/lib/ceph - - Replace hardcoded /var/lib/ceph with the STATEDIR global variable and - implement the --statedir option to override the default value. - - Signed-off-by: Loic Dachary - (cherry picked from commit ca713f48ae7a1fece2869f1a1c97d23ab33fb441) - -commit 79564874be35d4414092fbb80df3214d7f282b1c -Author: Loic Dachary -Date: Wed Jan 1 22:05:03 2014 +0100 - - ceph-disk: add copyright notice - - Signed-off-by: Loic Dachary - (cherry picked from commit 51ee3c04777aaf6b9609dde9bc318b5c66c70787) - -commit c4b66bbdf09a8bb85ed14fbb643f40f87345463b -Author: Loic Dachary -Date: Wed Jan 1 22:11:30 2014 +0100 - - ceph-disk: create the data directory if it does not exist - - Instead of failing if the OSD data directory does not exist, create - it. Only do so if the data directory is not enforced to be a device via - the use of the --data-dev flag. The directory is not recursively created. - - Signed-off-by: Loic Dachary - (cherry picked from commit 306b099ab093bfac466d68fe1cb87367bc01e577) - -commit c473c65d4b6235fe20a97bd1d4741c12f86858e8 -Author: Loic Dachary -Date: Tue Dec 31 00:03:42 2013 +0100 - - ceph-disk: run ceph-osd when --mark-init=none - - Signed-off-by: Loic Dachary - (cherry picked from commit 0fcc081858fae4febbb6a613a93cfbbcedd5a320) - -commit 6ea59a3a0c38c9629036442aff652489eecce51a -Author: Loic Dachary -Date: Mon Dec 30 23:57:39 2013 +0100 - - ceph-disk: implement --mark-init=none - - It is meant to be used when preparing and activating a directory that is - not to be used with init. No file is created to identify the init - system, no symbolic link is made to the directory in /var/lib/ceph - and the init scripts are not called. - - Signed-off-by: Loic Dachary - (cherry picked from commit e773b68f4c89ac56b425c710d7dcdc3d74a92926) - -commit 3aae5b764c5698c665a708a3f6f2243dfee1a28d -Author: Loic Dachary -Date: Wed Jan 1 22:07:57 2014 +0100 - - ceph-disk: fsid is a known configuration option - - Use get_conf_with_default instead of get_conf because fsid is a known - ceph configuration option. It allows overriding via CEPH_ARGS which is - convenient for testing. Only options that are not found in config_opts.h - are fetch via get_conf. - - Signed-off-by: Loic Dachary - (cherry picked from commit b65eb377f5e93ea85644e4c0939365fd7ac36072) - -commit a33ad6d150206232806ee466f301e41f15c631e9 -Author: Loic Dachary -Date: Wed Jan 1 22:06:29 2014 +0100 - - ceph-disk: use CalledProcessError.returncode - - CalledProcessError has no errno data member - - Signed-off-by: Loic Dachary - (cherry picked from commit 97f516a1ddfb2d014e1f7e762c4155e4b9bcb90b) - -commit 6ae96d3ce757b05daeb7c1437778149b07248d47 -Author: Loic Dachary -Date: Wed Jan 1 22:13:15 2014 +0100 - - ceph-disk: display the command output on OSD creation failure - - The string form of a CalledProcessError instance does not include the - output datamember. Add it to the Error exception for debug purposes. - - Signed-off-by: Loic Dachary - (cherry picked from commit d09af0fa50f322c9e59765f3badd497f5ca184d4) - -commit deefb3a05788b308631812c652e9eccaeb999d7f -Author: Loic Dachary -Date: Mon Dec 30 23:07:27 2013 +0100 - - ceph-disk: which() uses PATH first - - Instead of relying on a hardcoded set of if paths. Although this has the - potential of changing the location of the binary being used by ceph-disk - on an existing installation, it is currently only used for sgdisk. It - could be disruptive for someone using a modified version of sgdisk but - the odds of this happening are very low. - - Signed-off-by: Loic Dachary - (cherry picked from commit 2b935bbf60bafb6dd488c0eb30f156fce1b9d197) - -commit 06bbea187293ac52aefbcf4e98c162bb3286341d -Author: Loic Dachary -Date: Mon Dec 30 22:48:46 2013 +0100 - - ceph-disk: add --prepend-to-path to control execution - - /usr/bin is hardcoded in front of some ceph programs which makes it - impossible to control where they are located via the PATH. - - The hardcoded path cannot be removed altogether because it will most - likely lead to unexpected and difficult to diagnose problems for - existing installations where the PATH finds the program elsewhere. - - The --prepend-to-path flag is added and defaults to /usr/bin : it prepends - to the PATH environment variable. The hardcoded path is removed - and the PATH will be used: since /usr/bin is searched first, the - legacy behavior will not change. - - Signed-off-by: Loic Dachary - (cherry picked from commit ad6b4b4b08b6ef7ae8086f2be3a9ef521adaa88c) - -commit ccf182241dc04c79e2377b6ba2f060dbfe6dddae -Author: Loic Dachary -Date: Mon Dec 30 17:15:29 2013 +0100 - - ceph-disk: make exception handling terse in main_activate_journal - - Signed-off-by: Loic Dachary - (cherry picked from commit 908348b8047e8577ecf9133f2683f91423694416) - -commit d60e952f3c00d0e551b04c0d6486b11d9761be35 -Author: Loic Dachary -Date: Mon Dec 30 17:13:47 2013 +0100 - - ceph-disk: do not hide main_activate() exceptions - - Signed-off-by: Loic Dachary - (cherry picked from commit 55ca7bb2da73f1be1293710a635cfea42abd7682) - -commit 827edb93e3971fc7549fe831894776c6bf163346 -Author: Loic Dachary -Date: Mon Dec 30 17:11:30 2013 +0100 - - ceph-disk: fix activate() indent - - Signed-off-by: Loic Dachary - (cherry picked from commit 324804a81c37ff89f2488e2ba106033c0e6e119e) - -commit 27988cf9ffedf3289099e51f1e7c3f5b8d79d667 -Author: Loic Dachary -Date: Mon Dec 30 17:09:35 2013 +0100 - - ceph-disk: remove noop try: - - Signed-off-by: Loic Dachary - (cherry picked from commit de0050596b5f56863c3486c1cd5e7ffea62e3d00) - -commit 75bdb5430d9403bed8bd2ccd6a9c5a30d63a189e -Author: Loic Dachary -Date: Mon Dec 30 16:57:36 2013 +0100 - - ceph-disk: fix Error() messages formatting - - Mainly using % instead of , - - Signed-off-by: Loic Dachary - (cherry picked from commit b82ccfbfa786cd5436b48ec38276c5a48028ce1d) - -commit 5df1eaa55bc7ebe68473831d06cf9819fa39baa6 -Author: Loic Dachary -Date: Mon Dec 30 12:26:20 2013 +0100 - - ceph-disk: prepare --data-dir must not override files - - ceph-disk does nothing when given a device that is already prepared. If - given a directory that already contains a successfully prepared OSD, it - will however override it. - - Instead of overriding the files in the osd data directory, return - immediately if the magic file exists. Make it so the magic file is - created last to accurately reflect the success of the OSD preparation. - - Signed-off-by: Loic Dachary - (cherry picked from commit 7dfe550ce18623cde4ae43a2416e31ef81381ab9) - -commit 2e8496a6e0b74ff351bc2a4f138ddc665d8c30ca -Author: Loic Dachary -Date: Sun Dec 15 15:34:17 2013 +0100 - - ceph-disk: zap needs at least one device - - If given no argument, ceph-disk zap should display the usage instead of - silently doing nothing. Silence can be confused with "I zapped all the - disks". - - http://tracker.ceph.com/issues/6981 fixes #6981 - - Signed-off-by: Loic Dachary - (cherry picked from commit 07888ef3fd4440332c8287d0faa9f23a32cf141c) - -commit 0fe2ac47a82d3caa9dca2a9009b68a14b577e35c -Author: Alfredo Deza -Date: Fri Dec 13 12:06:25 2013 -0500 - - use the new get_command helper in check_call - - Signed-off-by: Alfredo Deza - (cherry picked from commit 897dfc113fe3b86f3dda53172933bfd4f8089869) - -commit 8fc9f1b791248f08a311d619addc4465cac298f9 -Author: Alfredo Deza -Date: Thu Dec 12 11:16:38 2013 -0500 - - use the absolute path for executables if found - - Signed-off-by: Alfredo Deza - (cherry picked from commit a9334a1c8c6681305e76b361377864d0dd1e3d34) - -commit a2de2f718c9e341c0b6ec2ebffdf03d0f9da0fbd -Author: Alfredo Deza -Date: Thu Dec 12 10:26:05 2013 -0500 - - remove trailing semicolon - - Signed-off-by: Alfredo Deza - (cherry picked from commit 43561f791607f5fd6f03d5421e1f30a29fb4194e) - -commit 2cd22b5d39760ac4b5baad0b05c676b833ae9213 -Author: Alfredo Deza -Date: Wed Dec 11 15:41:45 2013 -0500 - - replace sgdisk subprocess calls with a helper - - Signed-off-by: Alfredo Deza - (cherry picked from commit e19e38012bc4579054f63865e682c8c3a7829c7b) - -commit e8cc27cc8eb981c71b8cafb58964317687ca5787 -Author: Jonathan Davies -Date: Tue Dec 3 21:26:43 2013 +0000 - - Call --mbrtogpt on journal run of sgdisk should the drive require a GPT table. - - Signed-off-by: Jonathan Davies - Reviewed-by: Sage Weil - Reviewed-by: Loic Dachary - (cherry picked from commit 35011e0b01d65e4c001876882d597451f2028345) - -commit 3942a93fae3331b2d08f93181eb2c9cf90b50440 -Author: Loic Dachary -Date: Thu Nov 21 13:21:22 2013 +0100 - - ceph-disk: blacklist /dev/fd0 - - blkid -s TYPE /dev/fd0 has been verified to hang forever on a - H8DMR-82 supermicro motherboard running - - 3.8.0-33-generic #48~precise1-Ubuntu SMP Thu Oct 24 16:28:06 UTC 2013 - x86_64 - - It is unlikely that ceph will ever be used on floppy disks, they - can be blacklisted. - - http://tracker.ceph.com/issues/6827 fixes: #6827 - - Signed-off-by: Loic Dachary - (cherry picked from commit 65701978715237ff5a4c68573c0696fd9d438e4f) - -commit ccc6b0c5e6d47eefef5cf1fa17bf69c47c9459c4 -Author: git-harry -Date: Thu Oct 3 10:32:50 2013 +0100 - - Make fsid comparison case-insensitive - - get_fsid and find_cluster_by_uuid are modified so ceph-disk activate and - ceph-disk activate-all will work if the fsid uses uppercase characters. - - Signed-off-by: Harry Harrington - (cherry picked from commit 22f8325dbfce7ef2e97bf015c0f8bba53e75dfe9) - -commit 367cf1bbf86233eb20ff2304e7d6caab77b84fcc -Author: Josh Durgin -Date: Tue Feb 11 10:14:36 2014 -0800 - - librbd: remove limit on number of objects in the cache - - The number of objects is not a significant indicated of when data - should be written out for rbd. Use the highest possible value for - number of objects and just rely on the dirty data limits to trigger - flushing. When the number of objects is low, and many start being - flushed before they accumulate many requests, it hurts average request - size and performance for many concurrent sequential writes. - - Fixes: #7385 - Backport: emperor, dumpling - Signed-off-by: Josh Durgin - (cherry picked from commit 0559d31db29ea83bdb6cec72b830d16b44e3cd35) - -commit 4856fc2950442fafc208c967af5131f7874f5441 -Author: Josh Durgin -Date: Tue Feb 11 11:53:00 2014 -0800 - - ObjectCacher: use uint64_t for target and max values - - All the options are uint64_t, but the ObjectCacher was converting them - to int64_t. There's never any reason for these to be negative, so - change the type. - - Adjust a few conditionals so that they only convert known-positive - signed values to uint64_t before comparing with the target and max - values. Leave the actual stats accounting as loff_t for now, since - bugs in accounting will have bad effects if negative values wrap - around. - - Backport: emperor, dumpling - Signed-off-by: Josh Durgin - (cherry picked from commit db034acf546a72739ff6543241543f3bd651f3ae) - -commit a572aafe178dfa3ab4d82aa5c7f4a72a63590ccf -Author: Josh Durgin -Date: Tue Feb 11 10:35:14 2014 -0800 - - ObjectCacher: remove max_bytes and max_ob arguments to trim() - - These are never passed, so replace them with the defaults. - - Backport: emperor, dumpling - Signed-off-by: Josh Durgin - (cherry picked from commit bf8cf2d6d21a204a099347f3dcd5b48100b8c445) - -commit 4889234f80dbd95e5b2012ff9bfc2d87960034e2 -Merge: 6af657b 30a604d -Author: Sage Weil -Date: Tue Feb 11 08:32:37 2014 -0800 - - Merge pull request #1210 from dachary/dumpling - - common: admin socket fallback to json-pretty format (dumpling) - - Reviewed-by: Sage Weil - -commit 30a604d2d6a5de7bcbfa0136e9a766cb34f96c0a -Author: Loic Dachary -Date: Mon Feb 10 23:42:38 2014 +0100 - - common: admin socket fallback to json-pretty format - - If the format argument to a command sent to the admin socket is not - among the supported formats ( json, json-pretty, xml, xml-pretty ) the - new_formatter function will return null and the AdminSocketHook::call - function must fall back to a sensible default. - - The CephContextHook::call and HelpHook::call failed to do that and a - malformed format argument would cause the mon to crash. A check is added - to each of them and fallback to json-pretty if the format is not - recognized. - - To further protect AdminSocketHook::call implementations from similar - problems the format argument is checked immediately after accepting the - command in AdminSocket::do_accept and replaced with json-pretty if it is - not known. - - A test case is added for both CephContextHook::call and HelpHook::call - to demonstrate the problem exists and is fixed by the patch. - - Three other instances of unsafe calls to new_formatter were found and - a fallback to json-pretty was added. All other calls have been audited - and appear to be safe. - - http://tracker.ceph.com/issues/7378 fixes #7378 - - Signed-off-by: Loic Dachary - (cherry picked from commit 165e76d4d03ffcc490fd3c2ba60fb37372990d0a) - -commit 6af657bd4cf87f6f7afe84257941e7e2366183d9 -Author: Josh Durgin -Date: Wed Feb 5 17:26:02 2014 -0800 - - qa: add script for testing rados client timeout options - - Signed-off-by: Josh Durgin - (cherry picked from commit 9e62beb80b6c92a97ec36c0db5ea39e417661b35) - -commit 21a0b67440eaa07fa051d26321a88654ee9e8ae7 -Author: Josh Durgin -Date: Wed Feb 5 17:25:24 2014 -0800 - - rados: check return values for commands that can now fail - - A few places were not checking the return values of commands, since - they could not fail before timeouts were added. - - Signed-off-by: Josh Durgin - (cherry picked from commit 79c1874346ff55e2dc74ef860db16ce70242fd00) - -commit 2c42dd26b49d01922bd3df3ba26af70da0387a99 -Author: Josh Durgin -Date: Wed Feb 5 17:24:16 2014 -0800 - - librados: check and return on error so timeouts work - - Some functions could not previously return errors, but they had an - int return value, which can now receive ETIMEDOUT. - - Signed-off-by: Josh Durgin - (cherry picked from commit 8e9459e897b1bc2f97d52ee07701fd22069efcf3) - -commit 28fe564cc298b96c063e6cca44304046a86942cd -Author: Josh Durgin -Date: Wed Feb 5 17:22:14 2014 -0800 - - msg/Pipe: add option to restrict delay injection to specific msg type - - This makes it possible to test timeouts reliably by delaying certain - messages effectively forever, but still being able to e.g. connect and - authenticate to the monitors. - - Signed-off-by: Josh Durgin - (cherry picked from commit d389e617c1019e44848330bf9570138ac7b0e5d4) - -commit 1d2ea9efb844cb902d282c3a752acc45fefeb04c -Author: Josh Durgin -Date: Mon Feb 3 18:30:00 2014 -0800 - - MonClient: add a timeout on commands for librados - - Just use the conf option directly, since librados is the only caller. - - Signed-off-by: Josh Durgin - (cherry picked from commit 671a76d64bc50e4f15f4c2804d99887e22dcdb69) - -commit 30dafacd0b54bb98b01284851e0d5abf76324e95 -Author: Josh Durgin -Date: Mon Feb 3 17:59:21 2014 -0800 - - Objecter: implement mon and osd operation timeouts - - This captures almost all operations from librados other than mon_commands(). - - Get the values for the timeouts from the Objecter constructor, so only - librados uses them. - - Add C_Cancel_*_Op, finish_*_op(), and *_op_cancel() for each type of - operation, to mirror those for Op. Create a callback and schedule it - in the existing timer thread if the timeouts are specified. - - Fixes: #6507 - Signed-off-by: Josh Durgin - (cherry picked from commit 3e1f7bbb4217d322f4e0ece16e676cd30ee42a20) - - Conflicts: - src/osd/OSD.cc - src/osd/ReplicatedPG.cc - src/osdc/Objecter.cc - src/osdc/Objecter.h - -commit 2aa0d7589283fe5879a966601fbfe690816cc4a1 -Author: Josh Durgin -Date: Mon Feb 3 12:53:15 2014 -0800 - - librados: add timeout to wait_for_osdmap() - - This is used by several pool operations independent of the objecter, - including rados_ioctx_create() to look up the pool id in the first - osdmap. - - Unfortunately we can't just rely on WaitInterval returning ETIMEDOUT, - since it may also get interrupted by a signal, so we can't avoid - keeping track of time explicitly here. - - Signed-off-by: Josh Durgin - (cherry picked from commit 1829d2c9fd13f2cbae4e192c9feb553047dad42c) - - Conflicts: - src/librados/RadosClient.cc - -commit 55d254d5ea113d8be29afe18dc9940f14d93ebb4 -Author: Josh Durgin -Date: Mon Feb 3 12:09:34 2014 -0800 - - conf: add options for librados timeouts - - These will be implemented in subsequent patches. - - Signed-off-by: Josh Durgin - (cherry picked from commit 0dcceff1378d85ca6d81d102d201890b8a71af6b) - -commit ccd9b5eb9bcfe2360e874b306d4decd8815ecf46 -Author: Sage Weil -Date: Sun Feb 9 20:53:00 2014 -0800 - - test_striper: fix warning - - Signed-off-by: Sage Weil - -commit bb44c0d5e06c2b699c81a76373a0edde1bf90445 -Author: Sage Weil -Date: Sat Feb 8 12:21:26 2014 -0800 - - crushtool: add cli test for off-by-one tries vs retries bug - - See bug #7370. This passes on dumpling and breaks prior to the #7370 fix. - - Backport: emperor, dumpling - Signed-off-by: Sage Weil - (cherry picked from commit ed32c4002fb5cb1dd546331651eaf7de1a017471) - -commit c301ec689caac5bbcd21e02226045d3454cc82fd -Author: Sage Weil -Date: Mon Feb 3 08:54:14 2014 -0800 - - client: use 64-bit value in sync read eof logic - - The file size can jump to a value that is very much larger than our current - position (for example, it could be a disk image file that gets a sparse - write at a large offset). Use a 64-bit value so that 'some' doesn't - overflow. - - Signed-off-by: Sage Weil - Reviewed-by: John Spray - (cherry picked from commit 7ff2b541c24d1c81c3bcfbcb347694c2097993d7) - -commit 183deb899bc6b1b7b2a1ec639425e45786e56b01 -Author: Sage Weil -Date: Sat Jan 4 22:39:35 2014 -0800 - - osd: do not send peering messages during init - - Do not send any peering messages while we are still working our way - through init(). - - Fixes: #7093 - Signed-off-by: Sage Weil - (cherry picked from commit 35da8f9d80e0c6c33fb6c6e00f0bf38f1eb87d0e) - Signed-off-by: Greg Farnum - -commit 3a1fb17401897b0717cf1d264c6e6fdf99fc703f -Author: Sage Weil -Date: Tue Jan 28 18:46:37 2014 -0800 - - OSDMap: fix deepish_copy_from - - Start with a shallow copy! - - Signed-off-by: Sage Weil - (cherry picked from commit d0f13f54146694a197535795da15b8832ef4b56f) - - Conflicts: - - src/osd/OSDMap.h - -commit f01bd8a94adc4ce8e7131f74282de5b434a7316a -Author: Yehuda Sadeh -Date: Thu Jan 23 13:48:28 2014 -0800 - - rgw: fix listing of multipart upload parts - - Fixes: #7169 - - There are two issues here. One is that we may return more entries than - we should (as specified by max_parts). Second issue is that the - NextPartNumberMarker is set incorrectly. Both of these issues mainly - affect uploads with > 1000 parts, although can be triggered with less - than that. - - Signed-off-by: Yehuda Sadeh - -commit 6b657992d2397e399eacf554357ed807fda399fa -Author: Yehuda Sadeh -Date: Thu Nov 21 06:52:48 2013 -0800 - - rgw: initialize RGWUserAdminOpState::system_specified - - Fixes: #6829 - Backport: dumpling, emperor - We didn't init this member variable, which might cause that when - modifying user info that has this flag set the 'system' flag might - inadvertently reset. - - Signed-off-by: Yehuda Sadeh - (cherry picked from commit 561e7b0b287e65e90b80699e45a52ae44e94684f) - -commit 585e0e7eec1bbee60fe352166b593d53476003f8 -Author: Robin H. Johnson -Date: Sun Dec 15 12:26:19 2013 -0800 - - rgw: Fix CORS allow-headers validation - - This fix is needed because Ceph presently validates CORS headers in a - case-sensitive manner. Keeps a local cache of lowercased allowed headers - to avoid converting the allowed headers to lowercase each time. - - CORS 6.2.6: If any of the header field-names is not a ASCII - case-insensitive match for any of the values in list of headers do not - set any additional headers and terminate this set of steps. - - Signed-off-by: Robin H. Johnson - Reviewed-by: Yehuda Sadeh - (cherry picked from commit 31b60bfd9347a386ff12b4e4f1812d664bcfff01) - -commit da2267a87e37afa28385e915a566de26fd784b70 -Author: Robin H. Johnson -Date: Sun Dec 15 11:40:31 2013 -0800 - - rgw: Clarify naming of case-change functions - - It is not clear that the lowercase_http_attr & uppercase_http_attr - functions replace dashes with underscores. Rename them to match the - pattern established by the camelcase_dash_http_attr function in - preperation for more case-change functions as needed by later fixes. - - Signed-off-by: Robin H. Johnson - Reviewed-by: Yehuda Sadeh - (cherry picked from commit 6a7edab2673423c53c6a422a10cb65fe07f9b235) - -commit fdea76ef6f7d7c4ee89c30d430f5495072023957 -Author: Robin H. Johnson -Date: Sun Dec 15 11:27:49 2013 -0800 - - rgw: Look at correct header about headers for CORS - - The CORS standard dictates that preflight requests are made with the - Access-Control-Request-Headers header containing the headers of the - author request. The Access-Control-Allow-Headers header is sent in the - response. - - The present code looks for Access-Control-Allow-Headers in request, so - fix it to look at Access-Control-Request-Headers instead. - - Signed-off-by: Robin H. Johnson - Reviewed-by: Yehuda Sadeh - (cherry picked from commit 2abacd9678ae04cefac457882ba718a454948915) - -commit a5739e3903f8c30c8168199413818922b4a29bad -Author: Yehuda Sadeh -Date: Fri Dec 6 11:07:09 2013 -0800 - - rgw: fix reading bucket policy in RGWBucket::get_policy() - - Fixes: 6940 - Backport: dumpling, emperor - - We changed the way we keep the bucket policy, and we shouldn't try to - access the bucket object directly. This had changed when we added the - bucket instance object around dumpling. - - Reported-by: Gao, Wei M - Signed-off-by: Yehuda Sadeh - (cherry picked from commit 7a9a088d82d04f6105d72f6347673724ac16c9f8) - -commit ba792cdc8d0c006e260e6a02a33ca1491b35901c -Author: Yehuda Sadeh -Date: Thu Jan 16 11:45:27 2014 -0800 - - rgw: handle racing object puts when object doesn't exist - - If the object didn't exist before and now we have multiple puts coming - in concurrently, we need to make sure that we behave correctly. Only one - needs to win, the other one can fail silently. We do that by setting - exclusive flag on the object creation and handling the error correctly. - Note that we still want to return -EEXIST in some cases (when the - exclusive flag is passed to put_obj_meta(), e.g., on bucket creation). - - Signed-off-by: Yehuda Sadeh - (cherry picked from commit 86c15480fc3e33b9a3b84d0af68d8398fc732bae) - -commit 1e2984ac4a4ed0508e1b5efc8b69ae4da0cac824 -Author: Yehuda Sadeh -Date: Thu Jan 16 11:33:49 2014 -0800 - - rgw: don't return -ENOENT in put_obj_meta() - - Fixes: #7168 - - An object put may race with the same object's delete. In this case just - ignore the error, same behavior as if object was created and then - removed. - - Signed-off-by: Yehuda Sadeh - (cherry picked from commit 5c24a7ea905587fd4077e3b0cfc0f5ad2b178c29) - -commit 5f1eea2ccf1ee4296530fc754bfd5dfc1571cd62 -Author: Robin H. Johnson -Date: Sat Jan 18 18:01:20 2014 -0800 - - rgw: Use correct secret key for POST authn - - The POST authentication by signature validation looked up a user based - on the access key, then used the first secret key for the user. If the - access key used was not the first access key, then the expected - signature would be wrong, and the POST would be rejected. - - Signed-off-by: Robin H. Johnson - (cherry picked from commit 586ad1f69e6260ef298805647911b3b49f8be7cf) - -commit 14e933eb2e8adf3e7df2aef823d863c593067928 -Author: Joao Eduardo Luis -Date: Tue Jan 28 15:54:33 2014 +0000 - - osd: OSDMonitor: ignore pgtemps from removed pool - - There's a window in-between receiving an MOSDPGTemp message from an OSD - and actually handling it that may lead to the pool the pg temps refer to - no longer existing. This may happen if the MOSDPGTemp message is queued - pending dispatching due to an on-going proposal (maybe even the pool - removal). - - This patch fixes such behavior in two steps: - - 1. Check if the pool exists in the osdmap upon preprocessing - - if pool does not exist in the osdmap, then the pool must have been - removed prior to handling the message, but after the osd sent it. - - safe to ignore the pg update - 2. If all pg updates in the message have been ignored, ignore the whole - message. Otherwise, let prepare handle the rest. - - 3. Recheck if pool exists in the osdmap upon prepare - - We may have ignored this pg back in preprocess, but other pgs in the - message may have led the message to be passed on to prepare; ignore - pg update once more. - 4. Check if pool is pending removal and ignore pg update if so. - - We delegate checking the pending value to prepare_pgtemp() because in this - case we should only ignore the update IFF the pending value is in fact - committed. Otherwise we should retry the message. prepare_pgtemp() is - the appropriate place to do so. - - Fixes: 7116 - - Signed-off-by: Joao Eduardo Luis - (cherry picked from commit f513f66f48383a07c70ca18a4dba6c2449ea9860) - -commit 3672fc49bea5efcef2069673c88fd8e526eeb7e5 -Author: Sage Weil -Date: Tue Jan 28 11:00:34 2014 -0800 - - OSDMonitor: use deepish_copy_from for remove_down_pg_temp - - This is a backport of 368852f6c0a884b8fdc80a5cd6f9ab72e814d412. - - Make a deep copy of the OSDMap to avoid clobbering the in-memory copy with - the call to apply_incremental. - - Fixes: #7060 - Signed-off-by: Sage Weil - -commit e6fef68ee51a2e3be6537086246ce860819788eb -Author: Sage Weil -Date: Fri Jan 24 11:03:26 2014 -0800 - - OSDMap: deepish_copy_from() - - Make a deep(ish) copy of another OSDMap. Unfortunatley we can't make the - compiler-generated copy operator/constructors private until c++11. :( - - Signed-off-by: Sage Weil - (cherry picked from commit bd54b9841b9255406e56cdc7269bddb419453304) - -commit 2528186c0dd327607b1e76a51581df72aeea52f2 -Author: Sage Weil -Date: Tue Jan 28 10:26:12 2014 -0800 - - buffer: make 0-length splice() a no-op - - This was causing a problem in the Striper, but fixing it here will avoid - corner cases all over the tree. Note that we have to bail out before - the end-of-buffer check to avoid hitting that check when the bufferlist is - also empty. - - Signed-off-by: Sage Weil - Reviewed-by: Greg Farnum - (cherry picked from commit ff5abfbdae07ae8a56fa83ebaa92000896f793c2) - -commit fe9539e118a830aa71bc5846ad2693543213fc59 -Author: Sage Weil -Date: Tue Jan 28 10:09:17 2014 -0800 - - osdc/Striper: test zero-length add_partial_result - - If we add a partial result that is 0-length, we used to hit an assert in - buffer::list::splice(). Add a unit test to verify the fix. - - Signed-off-by: Sage Weil - Reviewed-by: Greg Farnum - (cherry picked from commit 28c7388d320a47657c2e12c46907f1bf40672b08) - -commit 9801718e6e7a335d1aeffb7f3d958b012d8dd79c -Author: Derek Yarnell -Date: Mon Jan 27 12:27:51 2014 -0700 - - packaging: apply udev hack rule to RHEL - - In the RPM spec file there is a test to deploy the uuid hack udev rules - for older udev operating systems. This includes CentOS and RHEL, but the - check currently only is for CentOS, causing RHEL clients to get a bogus - osd rules file. - - Adjust the conditional to apply to RHEL as well as CentOS. (The %{rhel} - macro is defined in both platforms' redhat-rpm-config package.) - - Fixes http://tracker.ceph.com/issues/7245 - - Signed-off-by: Ken Dreyer - (cherry picked from commit 64a0b4fa563795bc22753940aa3a4a2946113109) - -commit 5817078ba9b2aa38f39e1f62d8d08e943646c0bb -Merge: 9fa8d2d abf6441 -Author: Sage Weil -Date: Thu Jan 23 07:12:37 2014 -0800 - - Merge pull request #1129 from ceph/wip-dumpling-backport-6620 - - mds: MDSMap: adjust buffer size for uint64 values with more than 5 chars - -commit abf64417bbc63b006c53a07262a5774d0d40550e -Author: Joao Eduardo Luis -Date: Thu Jan 23 11:36:16 2014 +0000 - - mds: MDSMap: adjust buffer size for uint64 values with more than 5 chars - - Fixes: #6620 - - Signed-off-by: Joao Eduardo Luis - (cherry picked from commit 0e8182edd850f061421777988974efbaa3575b9f) - -commit 9fa8d2d1bd4a8cf56fdebae484bee35c3930fb62 -Author: Sage Weil -Date: Tue Jan 21 11:29:56 2014 -0800 - - mon/MDSMonitor: do not generate mdsmaps from already-laggy mds - - There is one path where a mds that is not sending its beacon (e.g., - because it is not running at all) will lead to proposal of new mdsmaps. - Fix it. - - Backport: emperor, dumpling - Signed-off-by: Sage Weil - (cherry picked from commit 584c2dd6bea3fe1a3c7f306874c054ce0cf0d2b5) - -commit a2e34b8d322e571600d6c0a3ff363f9910196f28 -Author: John Spray -Date: Mon Jan 20 11:08:27 2014 +0000 - - Fix #7187: Include all summary items in JSON health output - - Signed-off-by: John Spray - (cherry picked from commit fdf3b5520d150f14d90bdfc569b70c07b0579b38) - -commit ee9fc590a556354b54a174a4790c4142949d7409 -Author: Yehuda Sadeh -Date: Mon Jan 6 18:32:42 2014 -0800 - - rgw: convert bucket info if needed - - Fixes: #7110 - In dumpling, the bucket info was separated into bucket entry point and - bucket instance objects. When setting bucket attrs we only ended up - updating the bucket instance object. However, pre-dumpling buckets still - keep everything at the entry-point object, so acl changes didn't affect - anything (because we never updated the entry point). This change just - converts the bucket info into the new format. - - Signed-off-by: Yehuda Sadeh - (cherry picked from commit a5f8cc7ec9ec8bef4fbc656066b4d3a08e5b215b) - -commit 69a99e6edd67aadaea77fb5ebcf46190dbfcdbc6 -Author: Sage Weil -Date: Sat Jan 4 22:40:43 2014 -0800 - - osd: ignore OSDMap messages while we are initializing - - The mon may occasionally send OSDMap messages to random OSDs, but is not - very descriminating in that we may not have authenticated yet. Ignore any - messages if that is the case; we will reqeust whatever we need during the - BOOTING state. - - Fixes: #7093 - Signed-off-by: Sage Weil - (cherry picked from commit f68de9f352d53e431b1108774e4a23adb003fe3f) - -commit 1545ddbd3b6dfac897d483bd58a4335d68b9b62a -Author: Sage Weil -Date: Sat Jan 4 22:43:26 2014 -0800 - - mon: only send messages to current OSDs - - When choosing a random OSD to send a message to, verify not only that - the OSD id is up but that the session is for the same instance of that OSD - by checking that the address matches. - - Fixes: #7093 - Backport: emperor, dumpling - Signed-off-by: Sage Weil - (cherry picked from commit 98ed9ac5fed6eddf68f163086df72faabd9edcde) - -commit 4d88dd10bfab4e5fb45632245be5f79eeba73a30 -Author: Sage Weil -Date: Mon Aug 26 13:58:47 2013 -0700 - - osd: discriminate based on connection messenger, not peer type - - Replace ->get_source().is_osd() checks and instead see if it is the - cluster_messenger so that we do not confuse ourselves when we get - legit requests from other OSDs on our public interface. - - NOTE: backporting this because a mixed cluster may send OSD requests - via the client interface, even though dumpling doesn't do this. - - Signed-off-by: Sage Weil - (cherry picked from commit a6b04c5d8ba043727a2e39a62e9d4126485bcfeb) - - Conflicts: - - src/osd/OSD.cc - -commit 2354b957b7924af3e81f559d5c975262848c3bf6 -Author: Loic Dachary -Date: Sun Dec 15 22:59:51 2013 +0100 - - qa: test for error when ceph osd rm is EBUSY - - http://tracker.ceph.com/issues/6824 fixes #6824 - - Signed-off-by: Loic Dachary - (cherry picked from commit 31507c90f0161c4569a2cc634c0b5f671179440a) - -commit 10ad2e01f832ca9293a1bda1c82f7d318e8c3589 -Author: Loic Dachary -Date: Sun Dec 15 16:27:02 2013 +0100 - - mon: set ceph osd (down|out|in|rm) error code on failure - - Instead of always returning true, the error code is set if at least one - operation fails. - - EINVAL if the OSD id is invalid (osd.foobar for instance). - EBUSY if trying to remove and OSD that is up. - - When used with the ceph command line, it looks like this: - - ceph -c ceph.conf osd rm osd.0 - Error EBUSY: osd.0 is still up; must be down before removal. - kill PID_OF_osd.0 - ceph -c ceph.conf osd down osd.0 - marked down osd.0. - ceph -c ceph.conf osd rm osd.0 osd.1 - Error EBUSY: removed osd.0, osd.1 is still up; must be down before removal. - - http://tracker.ceph.com/issues/6824 fixes #6824 - - Signed-off-by: Loic Dachary - (cherry picked from commit 15b8616b13a327701c5d48c6cb7aeab8fcc4cafc) - -commit db82bfec50349783c3bb708c65cf89bceff7b2ca -Author: Joao Eduardo Luis -Date: Tue Oct 29 20:30:37 2013 +0000 - - mon: OSDMonitor: fix some annoying whitespace - - Signed-off-by: Joao Eduardo Luis - (cherry picked from commit 42c4137cbfacad5654f02c6608cc0e81b45c06be) - -commit 1abb16988727a21dff61edca48bfcb05c60d26f2 -Author: Josh Durgin -Date: Thu Dec 26 17:38:52 2013 -0800 - - librbd: call user completion after incrementing perfcounters - - The perfcounters (and the ictx) are only valid while the image is - still open. If the librbd user gets the callback for its last I/O, - then closes the image, the ictx and its perfcounters will be - invalid. If the AioCompletion object is has not run the rest of its - complete() method yet, it will access these now-invalid addresses, - possibly leading to a crash. - - The AioCompletion object is independent of the ictx and does not - access it again after incrementing perfcounters, so avoid this race by - calling the user's callback after this step. The AioCompletion object - will be cleaned up by the rest of complete_request(), independent of - the ImageCtx. - - Fixes: #5426 - Backport: dumpling, emperor - Signed-off-by: Josh Durgin - (cherry picked from commit 4cea7895da7331b84d8c6079851fdc0ff2f4afb1) - -commit 4dae50d8a0ffe3f3491eae62950fe46229aaa0e6 -Author: Josh Durgin -Date: Fri Dec 6 16:03:20 2013 -0800 - - objecter: don't take extra throttle budget for resent ops - - These ops have already taken their budget in the original op_submit(). - It will be returned via put_op_budget() when they complete. - If there were many localized reads of missing objects from replicas, - or cache pool redirects, this would cause the objecter to use up all - of its op throttle budget and hang. - - Signed-off-by: Josh Durgin - (cherry picked from commit 8d0180b1b7b48662daef199931efc7f2a6a1c431) - - Conflicts: - - src/osdc/Objecter.cc - -commit 4944618fe74e1875e37a5de9a5bfe3922f906942 -Author: Josh Durgin -Date: Thu Dec 5 17:44:37 2013 -0800 - - rbd: check write return code during bench-write - - This is allows rbd-bench to detect http://tracker.ceph.com/issues/6938 - when combined with rapidly changing the mon osd full ratio. - - Signed-off-by: Josh Durgin - (cherry picked from commit 3caf3effcb113f843b54e06099099909eb335453) - -commit 3a7a0353d7c8521a2c3c25778801d45f0ca10957 -Author: Josh Durgin -Date: Thu Dec 5 17:36:33 2013 -0800 - - objecter: resend all writes after osdmap loses the full flag - - Now that the osd does not respond if it gets a map with the full flag - set first, clients need to resend all writes. - - Clients talking to old osds are still subject to the race condition, - so both sides must be upgraded to avoid it. - - Refs: #6938 - Backport: dumpling, emperor - Signed-off-by: Josh Durgin - (cherry picked from commit e32874fc5aa6f59494766b7bbeb2b6ec3d8f190e) - - Conflicts: - - src/osdc/Objecter.h - -commit f4d0fc8afac1bcbea76f46744397a8462025f373 -Author: Josh Durgin -Date: Thu Dec 5 17:34:38 2013 -0800 - - osd: drop writes when full instead of returning an error - - There's a race between the client and osd with a newly marked full - osdmap. If the client gets the new map first, it blocks writes and - everything works as expected, with no errors from the osd. - - If the osd gets the map first, however, it will respond to any writes - with -ENOSPC. Clients will pass this up the stack, and not retry these - writes later. -ENOSPC isn't handled well by all clients. RBD, for - example, may pass it on to qemu or kernel rbd which will both - interpret it as EIO. Filesystems on top of rbd will not behave well - when they receive EIOs like this, especially if the cluster oscillates - between full and not full, so some writes succeed. - - To fix this, never return ENOSPC from the osd because of a map marked - full, and rely on the client to retry all writes when the map is no - longer marked full. - - Old clients talking to osds with this fix will hang instead of - propagating an error, but only if they run into this race - condition. ceph-fuse and rbd with caching enabled are not affected, - since the ObjectCacher will retry writes that return errors. - - Refs: #6938 - Backport: dumpling, emperor - Signed-off-by: Josh Durgin - (cherry picked from commit 4111729dda7437c23f59e7100b3c4a9ec4101dd0) - -commit 2b109803b9434d2d495e65d6a045838ee3ebf169 -Author: Yehuda Sadeh -Date: Wed Nov 6 16:55:52 2013 -0800 - - objecter: clean pause / unpause logic - - op->paused holds now whether operation should be paused or not, and it's - being updated when scanning requests. No need to do a second scan. - - Signed-off-by: Yehuda Sadeh - (cherry picked from commit 5fe3dc647bf936df8e1eb2892b53f44f68f19821) - -commit 7b229fca346b7ab60131b229591d35f63f64a6ad -Author: Yehuda Sadeh -Date: Wed Nov 6 16:15:47 2013 -0800 - - objecter: set op->paused in recalc_op_target(), resend in not paused - - When going through scan_requests() in handle_osd_map() we need to make - sure that if an op should not be paused anymore then set it on the op - itself, and return NEED_RESEND. Otherwise we're going to miss reset of - the full flag. - Also in handle_osd_map(), make sure that op shouldn't be paused before - sending it. There's a lot of cleanup around that area that we should - probably be doing, make the code much more tight. - - Signed-off-by: Yehuda Sadeh - (cherry picked from commit 98ab7d64a191371fa39d840c5f8e91cbaaa1d7b7) - -commit a3fdfd77c953a8f9ace4991630599e60f56abc4a -Author: Josh Durgin -Date: Wed Nov 6 10:46:37 2013 +0800 - - objecter: don't resend paused ops - - Paused ops are meant to block on the client side until a new map that - unpauses them is recieved. If we send paused writes when the FULL flag - is set, we'll get -ENOSPC from the osds, which is not what Objecter - users expect. This may cause rbd without caching to produce an I/O - error instead of waiting for the cluster to have capacity. - - Fixes: #6725 - Backport: dumpling - Signed-off-by: Josh Durgin - (cherry picked from commit c5c399d327cfc0d232d9ec7d49ababa914d0b21a) - -commit 78037886ae6ae278d8fb2db52d7767b8612313fe -Merge: a60ac91 4e47a00 -Author: Sage Weil -Date: Sun Dec 29 21:10:30 2013 -0800 - - Merge pull request #808 from ceph/wip-6152-dumpling - - rgw: Fix S3 auth when using response-* query string params - -commit 4e47a003bb3adcee690067d4037c248a93023c20 -Author: Sylvain Munaut -Date: Thu Aug 29 16:17:30 2013 +0200 - - rgw: Fix S3 auth when using response-* query string params - - Reviewed-by: Yehuda Sadeh - Signed-off-by: Sylvain Munaut - (cherry picked from commit 7a7361d7e798d94796d4985e2e4b35af22463ae2)