On 12/12/2012 09:56 AM, Nux! wrote: > On 12.12.2012 14:35, John Mark Walker wrote: >> This is probably the last qa build before the first beta, so please test >> this one heavily. > > Hello John Mark, > > Any human friendly changelog for these builds? What has changed? What is > new? > I'd love to give it a try but I want to know what to expect. > If you've got a source tree checked out, you can do `git log v3.4.0qa4..v3.4.0qa5` Which gives the following (attached): -- Kaleb -------------- next part -------------- commit fef94c2acffc15159a1d5428c2f6c3b1a1bbee10 Author: Kaushal M <kaushal at redhat.com> Date: Tue Dec 11 18:31:40 2012 +0530 glusterd: Set op-version for quorum options Change-Id: I693cc96c1dc7dc560c3c25698f08b846e8a48fca BUG: 839595 Signed-off-by: Kaushal M <kaushal at redhat.com> Reviewed-on: http://review.gluster.org/4291 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 5ec55a34c99c7b458f8be013863967c631be6730 Author: Krishnan Parthasarathi <kparthas at redhat.com> Date: Mon Nov 26 12:21:23 2012 +0530 Added virt group file - template for 'group' set - This sample file contains the set of volume options that are associated with volumes that would be used to store VMs. - To enable the set of options present in this file one must do the following, - # cp extras/group-virt.example /var/lib/glusterd/groups/<group-name> # gluster volume set <volume-name> group <group-name> Change-Id: I8848d3d222ce114900db885aeef2f20c83ece28c BUG: 851237 Signed-off-by: Krishnan Parthasarathi <kparthas at redhat.com> Reviewed-on: http://review.gluster.org/4232 Reviewed-by: Anand Avati <avati at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> commit a86e36373b648ba51a286614cae889a0fe9d3f52 Author: Venky Shankar <vshankar at redhat.com> Date: Tue Dec 11 13:31:12 2012 +0530 gsyncd / geo-rep: do not start geo-rep if replace brick is in progress Change-Id: I9db32544ceb6f90c8231aaf40d722f6869a72614 BUG: 861945 Signed-off-by: Venky Shankar <vshankar at redhat.com> Reviewed-on: http://review.gluster.org/4289 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit cc9701d4f533bf7337d2925424e2498ab64fdf13 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Fri Nov 16 07:08:30 2012 +0530 cluster/afr: Remember type of split-brain in inode-ctx Along with this change, fixed the race of setting the split-brain status in inode-ctx after unwinding the fop from self-heal in case of back-ground self-heal. Change-Id: Ifc829300df485f50f139443802e8b6dc7038b4ad BUG: 873962 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4198 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 179e7333740fe990cac6fc2e63fbace844b17b8d Author: Krutika Dhananjay <kdhananj at redhat.com> Date: Fri Nov 9 10:48:29 2012 +0530 glusterd: log appropriate message when locking fails PROBLEM: When a transaction is already in progress, and the user tries to execute another glusterd operation, the second operation fails as glusterd fails to acquire lock. But to the user, a message like "Operation failed" does not give ample information about why the operation failed. FIX: Made glusterd_op_txn_begin use and initialise error string, which is needed to capture failure in the "lock" phase. Also made gd_sync_task_begin set error string appropriately when locking fails. In the process, I had to introduce error string in some glusterd_handle_* functions. And because I introduced error string in these handlers, I decided to also set them in places where these handlers could possibly fail. HOW I TESTED IT: For want of a better idea, I "commented out" the call to "glusterd_unlock", recompiled glusterd and ran two glusterd volume operations, one after the other. The second operation fails with the message "Another transaction is in progress. Please try again after sometime." as expected. The tests were performed on two volume ops : one of them synctask'ized (volume start) and the other NOT (volume create). Change-Id: Ia862972929872ae2f053707a544824d9cadc37be BUG: 873549 Signed-off-by: Krutika Dhananjay <kdhananj at redhat.com> Reviewed-on: http://review.gluster.org/4197 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 448b59e60b0ea5e085769283e89893176b86659f Author: shishir gowda <sgowda at redhat.com> Date: Fri Dec 7 10:00:15 2012 +0530 cluster/distribute: re-set layouts to prevent overlaps When subvols-per-directory option is used, with bricks addition/removal the layouts might get distributed to other subvols, which were not part of the layout before. We need to clean up layouts on old subvolumes, to prevent overlaps. Also, we need to make sure if layout-cnt is never less than subvolume-cnt. Change-Id: I00994a092ca0c99aedcc41bd9412d43460f88a04 BUG: 884455 Signed-off-by: shishir gowda <sgowda at redhat.com> Reviewed-on: http://review.gluster.org/4281 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 1d87098f2df19af5a42ade6b305cbb01b85af8ea Author: Pranith Kumar K <pkarampu at redhat.com> Date: Tue Dec 11 19:58:47 2012 +0530 Synchronize ls-loop with main-script Change-Id: If9a15e4c272baa28eee4f2fdfdf52b2e032b3a96 BUG: 884452 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4292 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 0c9f4d12a3b724afd61f60fed5e131335579ae5a Author: Peter Portante <peter.portante at redhat.com> Date: Wed Nov 14 15:43:56 2012 -0500 object-storage: unit tests to 100% cover utils Change-Id: I2d540e16cc3d420b9bb88e6857e9795d56e34529 BUG: 884327 Signed-off-by: Peter Portante <peter.portante at redhat.com> Reviewed-on: http://review.gluster.org/4225 Reviewed-by: Kaleb KEITHLEY <kkeithle at redhat.com> Reviewed-by: Mohammed Junaid <junaid at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> commit 29c23f20a6213affb646c322b7219a0f7c5c3dfc Author: Peter Portante <peter.portante at redhat.com> Date: Wed Nov 14 11:31:43 2012 -0500 object-storage: use temp file optimization for pkl Override OpenStack Swift's swift.common.utils.write_pickle with our own implementation that uses the GlusterFS temporary file operation. A file name '.<FILENAME>.<RANDOM>' will hash to the same GlusterFS node as a file named '<FILENAME>', those avoiding a move of the file on a rename. This is part of the work needed to address BZ 876660 (https://bugzilla.redhat.com/show_bug.cgi?id=876660). Change-Id: I1cb9f97f289ab2ca76ec9221366df74de08268bb BUG: 876660 Signed-off-by: Peter Portante <peter.portante at redhat.com> Reviewed-on: http://review.gluster.org/4224 Reviewed-by: Kaleb KEITHLEY <kkeithle at redhat.com> Reviewed-by: Mohammed Junaid <junaid at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> commit 5886396d969a317cfd46e3da82543b0868325acc Author: Krutika Dhananjay <kdhananj at redhat.com> Date: Mon Nov 26 14:25:21 2012 +0530 cli: fail vol set when value = empty string/string with all whitespaces PROBLEMS: a. 'volume set' operation accepts empty strings and strings containing all whitespaces for value. The result - subsequent attempts to start glusterd fail. b. 'volume set group' operation, when passed an empty string or string containing all spaces as value, fopens the wrong file. FIX: Made volume set parser in cli check for and invalidate value if its length is 0 after all the whitespaces have been stripped off. Change-Id: I6792ee1fe9452d8e25e1fd1eeb1b9981be3389f1 BUG: 859927 Signed-off-by: Krutika Dhananjay <kdhananj at redhat.com> Reviewed-on: http://review.gluster.org/4246 Reviewed-by: Pranith Kumar Karampuri <pkarampu at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 845aba3ddcfaf7bcef283002b7b5bbf2075d4539 Author: Krutika Dhananjay <kdhananj at redhat.com> Date: Fri Nov 23 10:33:12 2012 +0530 glusterd: fail vol set when value = empty string/string with all whitespaces PROBLEM: 'volume set' operation accepts empty strings and strings containing all whitespaces for value. The result - subsequent attempts to start glusterd fail. FIX: Added relevant checks in xlator_option_validate_* functions in options.c and in conversion functions in common-utils.c to invalidate wrong option values. Change-Id: I33232c6b42ab4fcce85c2d0e0b0da145fc9232c3 BUG: 859927 Signed-off-by: Krutika Dhananjay <kdhananj at redhat.com> Reviewed-on: http://review.gluster.org/4033 Reviewed-by: Pranith Kumar Karampuri <pkarampu at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 07c40a2d149f9adfa4ce400051c1313127349192 Author: Kaushal M <kaushal at redhat.com> Date: Mon Dec 10 11:56:41 2012 +0530 rpcsvc: Add an extra log message Adds an extra log message in rpcvsc_check_and_reply_error(). Also, makes a small change in the test-script. Change-Id: I2b686e6fa86529cc4fbf0066df64057a9784b849 BUG: 884452 Signed-off-by: Kaushal M <kaushal at redhat.com> Reviewed-on: http://review.gluster.org/4285 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit c399ca2fe3b81e19b9ff7ddd3f8bebe41179be48 Author: Peter Portante <peter.portante at redhat.com> Date: Fri Dec 7 16:34:14 2012 -0500 object-storage: Use "-dev" in the version string Currently, we have not solved the account mapping story entirely (we don't have a way to support more than one account to gluster volume in the mapping). As such, do not declare this as the final version. Also update the default RHS 2.0 spec file to "-3" for the release number to refer to the fact that we now have a working account mapping (see http://review.gluster.org/4222). Change-Id: Ia1cd0d18c1d7a7b20f732cc0ff867fecda30a7af BUG: 870589 Signed-off-by: Peter Portante <peter.portante at redhat.com> Reviewed-on: http://review.gluster.org/4283 Reviewed-by: Mohammed Junaid <junaid at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> commit 5e937c4ed16a7658628a3ce6e5d39832ec516bac Author: Kaushal M <kaushal at redhat.com> Date: Thu Dec 6 16:49:04 2012 +0530 Fix xdr_to_generic success check This patch fixes the success check for xdr_to_generic function across the codebase. Also, cleans up the brick_op actors table in glusterfsd-mgmt.c to make sure that the actors are called directly by rpcsvc. Change-Id: I3086585f30c44f69f1bc83665f89e30025f76d3a BUG: 884452 Signed-off-by: Kaushal M <kaushal at redhat.com> Reviewed-on: http://review.gluster.org/4278 Reviewed-by: Pranith Kumar Karampuri <pkarampu at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit ff33ea5175b98e0df743ae3af7681fcf1e1e89eb Author: Kaushal M <kaushal at redhat.com> Date: Thu Dec 6 16:46:57 2012 +0530 rpcsvc: do a 'iobuf_ref()' on buffer while synctaskizing actor Starting rpc actors using synctask causes rpcsvc to return before the actor actually finishes its actions. This would cause the buffer to be unreffed by socket and be possibly reused, before the actor used it, leading to failures in the actor. This patch makes rpcsvc take a ref on the buffer when synctaskizing the actor and store it in the request structure, and then later unref it when the request structure is destroyed. This makes sure that the buffer is not reused before the actor has finished. Change-Id: I8f81e1fef8f3719db220471d2d8ffb8916958956 BUG: 884452 Signed-off-by: Kaushal M <kaushal at redhat.com> Reviewed-on: http://review.gluster.org/4277 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit d0b0e59952222c186120c91518ccf94862a86f64 Author: Krutika Dhananjay <kdhananj at redhat.com> Date: Tue Nov 27 15:13:15 2012 +0530 cli: cmd history echoes the last command string word twice with --mode=script PROBLEM: When a gluster command is executed with --mode=script option enabled, the last word in the command string is echoed twice in command history. Example: [2012-12-03 05:29:16.083176] : volume start dis dis : SUCCESS FIX: Terminate argv with NULL when the words are shifted after omitting "--mode=script" from it. Change-Id: I3a2623efe02e58c97c34554988938a9299425492 BUG: 823081 Signed-off-by: Krutika Dhananjay <kdhananj at redhat.com> Reviewed-on: http://review.gluster.org/4255 Reviewed-by: Pranith Kumar Karampuri <pkarampu at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 66e34de1bef45dfd71ddccda57947fdb3c319640 Author: Krutika Dhananjay <kdhananj at redhat.com> Date: Thu Dec 6 15:58:06 2012 +0530 cli: add print-logdir option Change-Id: I92fe55d72aa597cbac57a51d2e15b35d2bcfef0e BUG: 823081 Signed-off-by: Krutika Dhananjay <kdhananj at redhat.com> Reviewed-on: http://review.gluster.org/4275 Reviewed-by: Pranith Kumar Karampuri <pkarampu at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 7f9adbed0535f1d23a9b47a54d59c708b5ef5caa Author: Peter Portante <peter.portante at redhat.com> Date: Thu Nov 8 12:31:10 2012 -0500 object-storage: enforce RPM package dependencies We now have access to openstack-swift-* packages that work with these sources so we can enforce the dependencies and what gets obsoleted. Change-Id: I83f442f3eb2424d176a2257f3498ed39eed32251 BUG: 870589 Signed-off-by: Peter Portante <peter.portante at redhat.com> Reviewed-on: http://review.gluster.org/4223 Reviewed-by: Mohammed Junaid <junaid at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Vijay Bellur <vbellur at redhat.com> commit a8d59075bfff1428c34ade2ad2e13fa51e3f6dbb Author: Peter Portante <peter.portante at redhat.com> Date: Wed Nov 21 16:42:15 2012 -0500 object-storage: fix account mapping Fix the account mapping so that we always use what is provided by the request. With this fix, "/mnt/gluster-object/AUTH_ufo0" directory hierachies won't be created. But this fix does not restore the one-to-one account to gluster volume name mapping. When the user runs the /usr/bin/gluster-swift-gen-builders script, it still only allows one cluster volume, and that is the only volume that is used. So the account names are effectively ignored. A future set of changes will address that problem. Change-Id: I2df608de2f00fd356a09c500d49fe12cc1a0a574 BUG: 870589 Signed-off-by: Peter Portante <peter.portante at redhat.com> Reviewed-on: http://review.gluster.org/4222 Reviewed-by: Kaleb KEITHLEY <kkeithle at redhat.com> Tested-by: Kaleb KEITHLEY <kkeithle at redhat.com> Reviewed-by: Mohammed Junaid <junaid at redhat.com> commit efbc6349251ef32df8c5f670f550a0aaec8400f5 Author: M. Mohan Kumar <mohan at in.ibm.com> Date: Tue Dec 4 14:25:33 2012 +0530 BD backend documentation update BUG: 805138 Change-Id: I2b4eb3fb7bad59c5dadf7f22fcc4d2b2a783984a Signed-off-by: M. Mohan Kumar <mohan at in.ibm.com> Reviewed-on: http://review.gluster.org/4273 Reviewed-by: Anand Avati <avati at redhat.com> Tested-by: Anand Avati <avati at redhat.com> commit 6801fc385d69a43d829b504adea299cce6057e25 Author: M. Mohan Kumar <mohan at in.ibm.com> Date: Tue Dec 4 14:25:33 2012 +0530 man page update for BD backend xlator BUG: 805138 Change-Id: Ifbceb329ba9039e6617d377c6b7fdb67d2383ddd Signed-off-by: M. Mohan Kumar <mohan at in.ibm.com> Reviewed-on: http://review.gluster.org/4274 Reviewed-by: Anand Avati <avati at redhat.com> Tested-by: Anand Avati <avati at redhat.com> commit 128c8ceebb308029d4a4a3c58c31f5bbfe072d29 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Wed Dec 5 12:20:28 2012 +0530 cluster/afr: Empty string should not be default option val Glusterd does not allow empty string as default value. Changed afr option values to disallow empty string as value. Change-Id: I92a2d658907dbc6101e1139dd91f548acb5506f5 BUG: 859927 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4271 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit ddfef121a2254973ae72883112d1863052c6a580 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Thu Nov 29 17:17:49 2012 +0530 Add util function to kill brick Change-Id: Ic67edd7edeaab16461c0009b49d951bfb4d79929 BUG: 859927 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4270 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit f656425f3412005fa0d2b47b774052d4bf726bd4 Author: Raghavendra Bhat <raghavendra at redhat.com> Date: Mon Oct 22 16:07:29 2012 +0530 protocol/client: log ENOENT errors in debug mode. Change-Id: I9b4ffb4a2f6be7ff5a0521f6582a9bc6f172e26c BUG: 872490 Signed-off-by: Raghavendra Bhat <raghavendra at redhat.com> Reviewed-on: http://review.gluster.org/4153 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit b2f8d63a191ee01526c4ce90b5ab63bfe4b05655 Author: Krishnan Parthasarathi <kparthas at redhat.com> Date: Tue Nov 20 12:03:16 2012 +0530 glusterd-hooks: Made hook runtime work with synctask'ized codepath(s) Change-Id: If66799c204483c3486a2b8ca842bb1b5f2e53997 BUG: 877992 Signed-off-by: Krishnan Parthasarathi <kparthas at redhat.com> Reviewed-on: http://review.gluster.org/4210 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit ee2813f440e9b6874eed93de307b8070c8953d5b Author: Raghavendra Bhat <raghavendra at redhat.com> Date: Thu Nov 22 18:48:40 2012 +0530 rpc: check the ctx->listener before accessing rpcsvc object Change-Id: I3c913d1fab07deb41eec05c5adc29a3964315b43 BUG: 858487 Signed-off-by: Raghavendra Bhat <raghavendra at redhat.com> Reviewed-on: http://review.gluster.org/4230 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 6d1607becc4fd84f7422730f37582164c86127d2 Author: Anand Avati <avati at redhat.com> Date: Tue Dec 4 16:00:36 2012 -0800 Revert "glusterd: add "volume label" command" This reverts commit dad16a51ba7e6b1c57529423c57257dbce97ee93 Test script causing "silent" failures during execution. Change-Id: I26dbb8ed22256071cb415cc3aff572ef8372600e Reviewed-on: http://review.gluster.org/4268 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 698deb33d731df6de84da8ae8ee4045e1543a168 Author: Anand Avati <avati at redhat.com> Date: Tue Dec 4 15:25:34 2012 -0800 Revert "glusterd, cli: Task id's for async tasks" This reverts commit ed15521d4e5af2b52b78fd33711e7562f5273bc6 Strangely, the test scripts are "silently" passing for failures too. Reverting patch for now. Change-Id: I802ec1634c7863dc373cc7dc4a47bd4baa72764e Reviewed-on: http://review.gluster.org/4267 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 676b8793b9a77babf0275ee78eeacfa7291a8c35 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Tue Nov 27 12:34:18 2012 +0530 cluster/afr: mark new entry changelog for create/mknod failures Problem: When create/mknod fails on some of the nodes, appropriate pending data/metadata changelogs are not assigned. This was not considered to be an issue because entry self-heal would do the assigning of appropriate changelog after creating new entries. But using the combination of rebalance and remove brick we can construct a case where a file with same name and gfid can be created in a dir with different data and link-to xattr without any changelog. Fix: When a create/mknod failure is observed mark the appropriate changelog on the new file created. Change-Id: I4c32cbf5594a13fb14deaf97ff30b2fff11cbfd6 BUG: 858212 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4207 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit d1bb60ad794dcf0fc8bf0cf8dc4ac13349d749d4 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Tue Dec 4 18:22:33 2012 +0530 tests: Util commands for rebalance and afr child-up, shd up Change-Id: I175171524b750dff5b2ec0c11dc006d77123ecd5 BUG: 858212 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4237 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 0adc7fd1a76e6868a940cc0725c2f8d93cbb9f29 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Tue Dec 4 18:21:08 2012 +0530 tests: Test afr mknod, create when one of the bricks is offline. Also tests the test case in bug 858212. Change-Id: I00e1c3f6142e9dab6868d8fd9ef66d39a7d3fae2 BUG: 858212 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4238 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 98879ebdddd4ca77440defad6a73acf4fa1e75ab Author: Anand Avati <avati at redhat.com> Date: Wed Sep 5 17:20:05 2012 -0700 rpc-transport/socket: implement read-ahead of RPC headers This reduces the number of read() system calls on the socket to complete the full RPC fragment reading. Change-Id: I421a53af195ead4aad70e09e0172a61ad7912d83 BUG: 821087 Signed-off-by: Anand Avati <avati at redhat.com> Reviewed-on: http://review.gluster.org/3855 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Jeff Darcy <jdarcy at redhat.com> Reviewed-by: Amar Tumballi <amarts at redhat.com> commit 741766c708f2a246854584c064d63d3fba67be90 Author: Brian Foster <bfoster at redhat.com> Date: Mon Dec 3 10:45:04 2012 -0500 afr: use data trylock mode in read/write self-heal trigger paths Self-heal data lock contention between clients and glustershd instances can lead to long wait and user response times if the client ends up pending its lock on glustershd self-heal of a large file. We have reports of guest vm instances going completely unresponsive during self-heal of virtual disk images. Optimize the read/write self-heal trigger codepath (i.e., afr_open_fd_fix()) to trylock for self-heal and skip the self-heal otherwise to minimize the likelihood of a running/active guest of competing with glustershd on arrival of a brick. Note that lock contention is still possible from the client (e.g., via lookup). BUG: 874045 Change-Id: I406443c061ff6acd2a851179626b78352caa5c03 Signed-off-by: Brian Foster <bfoster at redhat.com> Reviewed-on: http://review.gluster.org/4258 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit e19bf891d5373e1660e666fecf6740062a375617 Author: Brian Foster <bfoster at redhat.com> Date: Mon Dec 3 10:41:49 2012 -0500 afr: support self-heal data trylock mechanism Introduce a block flag to support an optional blocking or non-blocking mode in the self-heal data locking mechanism. All callers are modified to use blocking mode, which is the current default behavior (no change in behavior is introduced by this commit). BUG: 874045 Change-Id: Ib7ff9984578fa11de4e3b6981508100cdddd37cd Signed-off-by: Brian Foster <bfoster at redhat.com> Reviewed-on: http://review.gluster.org/4257 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 7b5a21707edbbee1940f7cd3d05043bec998e51a Author: Kaushal M <kaushal at redhat.com> Date: Fri Sep 14 11:45:34 2012 +0530 glusterd, cli: Task id's for async tasks This patch introduces task-id's for async tasks like rebalance, remove-brick and replace-brick. An id is generated for each task when it is started and displayed to the user in cli output. The status of running tasks is also included in the output of "volume status" along with its id, so that a user can easily track the progress of an async task. Also, * added tests for this feature into the regression test suite. * added a python script for creating files, 'create-files.py', courtesy Vijaykumar Koppad (vkoppad at redhat.com) into the test suite. Change-Id: Ib0c0d12e0d6c8f72ace48d303d7ff3102157e876 BUG: 857330 Signed-off-by: Kaushal M <kaushal at redhat.com> Reviewed-on: http://review.gluster.org/3942 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 6a1b89c0c4221b13c21e66a048e08e4eb95de7bd Author: shishir gowda <sgowda at redhat.com> Date: Tue Dec 4 15:39:45 2012 +0530 storage/posix: if create returns EXIST, donot set gfid/xattrs Change-Id: I9f2b75b10bde428d36d6516aa09c18e590d17ed9 BUG: 864801 Signed-off-by: shishir gowda <sgowda at redhat.com> Reviewed-on: http://review.gluster.org/4265 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit c1868c52725bbf972ed4f774fe6745201fe2f25e Author: Brian Foster <bfoster at redhat.com> Date: Tue Dec 4 10:17:46 2012 -0500 tests/bug-830665: use the default H0 The use of 'hostname -s' leads to a failure on my VM due to attempting to create the volume on localhost. Use the default H0 value. BUG: 830665 Change-Id: Icf23c89d2387fe747aca6d99af12f7d4e1e3fbf0 Signed-off-by: Brian Foster <bfoster at redhat.com> Reviewed-on: http://review.gluster.org/4266 Reviewed-by: Jeff Darcy <jdarcy at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 6b969c84b847927433bbe8466090d1c7970ea37c Author: Brian Foster <bfoster at redhat.com> Date: Mon Dec 3 15:50:39 2012 -0500 afr: make flush non-transactional Flush is historically a transaction to ensure all previous writes were complete. This is no longer required as write-behind has learned to make flush a barrier operation (re: conversation w/ Avati). Flush taking a full file lock causes VMs running on afr volumes to stall when a migration occurs and self-heal is in progress. Make afr_flush() a non-transactional operation. BUG: 874045 Change-Id: If2db83823e280c86b1b29b41361eed7081601632 Signed-off-by: Brian Foster <bfoster at redhat.com> Reviewed-on: http://review.gluster.org/4261 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 924702de358160b2536138c073d293b76512838a Author: Jeff Darcy <jdarcy at redhat.com> Date: Mon Dec 3 12:16:28 2012 -0500 glusterd: add "volume label" command This command is necessary when the local disk/filesystem containing a brick is unexpectedly lost and then recreated. Since 961bc80c, trying to start the brick will fail because the trusted.glusterfs.volume-id xattr is missing, and if we can't start it then we can't replace-brick or self-heal so we're stuck in a permanently degraded state. This command provides a way to label the empty brick with the proper volume ID so that further repair actions become possible. Change-Id: I1c1e5273a018b7a6b8d0852daf111ddc3fddfdc2 BUG: 860297 Signed-off-by: Jeff Darcy <jdarcy at redhat.com> Reviewed-on: http://review.gluster.org/4259 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 86b01a278b55b19adefe9625e586252a5c75b474 Author: Jeff Darcy <jdarcy at redhat.com> Date: Mon Nov 26 16:36:42 2012 -0500 dht: support auto-NUFA option Many people have asked for behavior like the old NUFA, which builds and seems to run but was previously impossible to enable/configure in a standard way. This change allows NUFA to be enabled instead of DHT from the command line, with automatic selection of the local subvolume on each host. Change-Id: I0065938db3922361fd450a6c1919a4cbbf6f202e BUG: 882278 Signed-off-by: Jeff Darcy <jdarcy at redhat.com> Reviewed-on: http://review.gluster.org/4234 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 48a1738467c2328a9f8d0fce09b64f286ef533e0 Author: Raghavendra Bhat <raghavendra at redhat.com> Date: Thu Nov 29 21:43:23 2012 +0530 fix memory leaks * write-behind: free the inode context in wb_forget * distribute: in readdirp callback put the allocated context to the inode * distribute: check if the layout is NULL before accessing it in layout_unref Change-Id: I7698f81b85b99d06bf6b01fc1a6e51e1593b5e27 BUG: 790709 Signed-off-by: Raghavendra Bhat <raghavendra at redhat.com> Reviewed-on: http://review.gluster.org/4250 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 01217e4e16677b13c7febc66e4e4ca3f0025739b Author: Csaba Henk <csaba at redhat.com> Date: Thu Nov 29 23:05:17 2012 +0100 geo-rep / gsyncd: play nicely with peer multiplexing when setting a checkpoint The gsyncd invocation that instruments the "geo-rep config" command is multiplexed over peers to ensure the uniformity of configuration. In general, that works well, but checkpoint setting is a special case, because (unlike other instances of config-set) it is logged (as recording of checkpoint events is part of the feature). Problem is that the path components leading to the log file are created only on the original node, where gsyncd was started. Therefore the logging attempt will fail on the other nodes. Fix: ignore if opening the logfile on behalf of checkpoint setting fails with ENOENT. Change-Id: I677f3f081bf4b9e3ba4d25d58979d86931e6beb4 BUG: 881997 Signed-off-by: Csaba Henk <csaba at redhat.com> Reviewed-on: http://review.gluster.org/4248 Reviewed-by: Niels de Vos <ndevos at redhat.com> Tested-by: Christos Triantafyllidis <ctrianta at redhat.com> Reviewed-by: Christos Triantafyllidis <ctrianta at redhat.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 555f1cfe7d5d36ee93efbe8c5585eb323d4b7185 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Tue Dec 4 14:38:54 2012 +0530 libglusterfs: fix unused-but-set-variable warning Change-Id: Ie152169a70eaec9554382b39d43ae7ffa04f041c BUG: 762989 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4264 Reviewed-by: Raghavendra Bhat <raghavendra at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit c6bb978f93e7e2974b0c8568af09b72bfbc35987 Author: Kaushal M <kaushal at redhat.com> Date: Tue Dec 4 12:44:22 2012 +0530 tests: Introduce new test primitive EXPECT_WITHIN Introduces a new test primitive EXPECT_WITHIN with syntax, EXPECT_WITHIN <timeout in seconds> <expected output> <command> which runs the given command every second and compares its output with the expected output, till the timeout occurs. Change-Id: I91c6de157e5d33fffafe532ceba84e2a9223356f BUG: 857330 Signed-off-by: Kaushal M <kaushal at redhat.com> Reviewed-on: http://review.gluster.org/4263 Reviewed-by: Anand Avati <avati at redhat.com> Tested-by: Anand Avati <avati at redhat.com> commit bb5382208696196aead94c011b3f9fa13a04da68 Author: Jeff Darcy <jdarcy at redhat.com> Date: Mon Dec 3 06:40:11 2012 -0500 nfs: do opendir for "naked" readdirp to force self-heal checks Instead of an opendir, the first thing the Linux NFS client usually sends us is a readdirp at offset zero, effectively bypassing our self-heal checks. Detect this condition and issue our own opendir to compensate. Change-Id: I69463370abd6235d705bf80b8c77fae4a61096ae BUG: 830665 Signed-off-by: Jeff Darcy <jdarcy at redhat.com> Reviewed-on: http://review.gluster.org/4067 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 4675796361f19a9f1f897465587737391d94a235 Author: JulesWang <w.jq0722 at gmail.com> Date: Tue Dec 4 10:12:30 2012 +0800 cli: fix incorrect xml output of brick tag. Incorrect output: <brick> <brick> </brick> </brick> Expected output: <brick></brick> <brick></brick> Change-Id: I40c30feda4e6f3f1ec5da4122f8965b61c511ae6 BUG: 880993 Signed-off-by: JulesWang <w.jq0722 at gmail.com> Reviewed-on: http://review.gluster.org/4262 Reviewed-by: Kaushal M <kaushal at redhat.com> Tested-by: Gluster Build System <jenkins at build.gluster.com> Tested-by: Kaushal M <kaushal at redhat.com> commit fa1607ea596802d3d3177d775eeecb0f0e5d496f Author: Raghavendra Bhat <raghavendra at redhat.com> Date: Thu Oct 25 17:06:31 2012 +0530 socket,rdma: before binding to any port check if it is a reserved port * The list of ports which are reserved is obtained by reading the file /proc/sys/net/ipv4/ip_local_reserved_ports. Change-Id: I3a832f53efbb79dd719b34a30cbaf28269f25816 BUG: 762989 Signed-off-by: Raghavendra Bhat <raghavendra at redhat.com> Reviewed-on: http://review.gluster.org/4131 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Vijay Bellur <vbellur at redhat.com> commit 3cade0a1e9dfc641e5b6db2f044af9f50ff604d6 Author: Kaushal M <kaushal at redhat.com> Date: Mon Dec 3 12:12:57 2012 +0530 cli: Fix build when libxml2 is absent Also added a note to the top of cli-xml-output.c, explaining the style of coding to followed when adding code to it. Change-Id: I7f90a9c075adb49a9e071771d136b6f01ea68d11 BUG: 882780 Signed-off-by: Kaushal M <kaushal at redhat.com> Reviewed-on: http://review.gluster.org/4256 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit f1ddc077a31671ff547efa205d86c1b8ebd3797a Author: Pranith Kumar K <pkarampu at redhat.com> Date: Mon Dec 3 10:54:21 2012 +0530 tests: Perform self-heal in foreground Change-Id: Ic9fa7ffe9cd704740e920b66162950f0c0322e67 BUG: 865825 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4253 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Vijay Bellur <vbellur at redhat.com> commit 2fd342a0c21d761d73bfee782717accbce819f24 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Mon Nov 5 21:42:22 2012 +0530 cluster/afr: Provide option to disable readdir failover In a replica pair unlike files, directories may not have their content in same order, so readdir for same (offset, size) may not give same entries on both the sobvolumes of replica pair. Switching over from one subvolume to another may not be a good idea sometimes. It may lead to duplicate entries or fewer entries or both. This patch provides a way to disable readdir-failover so that applications like rebalance can retry if they want to. Change-Id: I2b23eb224a2e84016a561362932613ac824c11a0 BUG: 859387 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4159 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Vijay Bellur <vbellur at redhat.com> commit 07c3801808db787e6c0cf0b2bf60a7ab62bc38b7 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Mon Dec 3 10:50:29 2012 +0530 tests: Test the exit status of touch Change-Id: I4fd52d6b54c5bcf16298c3a9ec98a12fea8df957 BUG: 860663 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4254 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Vijay Bellur <vbellur at redhat.com> commit cb506f9b91fb20c46a1f7bdea940672cb8c0fdf7 Author: Vijay Bellur <vbellur at redhat.com> Date: Fri Nov 30 12:11:02 2012 +0530 encryption/rot-13: Cleanup trailing whitespaces Change-Id: I9f5c81ca4320b6e73087023102dff6e3911b5095 BUG: 764890 Signed-off-by: Vijay Bellur <vbellur at redhat.com> Reviewed-on: http://review.gluster.org/4251 Reviewed-by: Anand Avati <avati at redhat.com> Tested-by: Anand Avati <avati at redhat.com> commit ab52eb7d9f6f4e8e95c3bd15fe757c6e789cc29d Author: Rajesh Amaravathi <rajesh at redhat.com> Date: Thu Sep 27 17:59:23 2012 +0530 core: remove ref/unref while unwinding frames Change-Id: Ib196ffdf8122a9510cc7c5953303a6e730091302 BUG: 853373 Signed-off-by: Rajesh Amaravathi <rajesh at redhat.com> Reviewed-on: http://review.gluster.org/4062 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 692c0e98da8613c004f24ccf7084fc517ba8b4e4 Author: Anand Avati <avati at redhat.com> Date: Mon Nov 26 20:02:18 2012 -0800 build: make dist to capture current build tree state ChangeLog will now hold the 'git log' and 'git diff' against the HEAD of the tree from which 'make dist' was issued. Change-Id: I0b5b27de66b02d733612470a8c79d65f0b560fa1 BUG: 764890 Signed-off-by: Anand Avati <avati at redhat.com> Reviewed-on: http://review.gluster.org/4235 Reviewed-by: Amar Tumballi <amarts at redhat.com> commit a20b52d029cc98e4ffdb4d6b187e02ffdfcc9137 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Wed Nov 28 15:43:17 2012 +0530 cluster/afr: Added descriptions to afr options Change-Id: I4aef1c79743ee08b62e04d7b709f3e8c6b9dc56a BUG: 881517 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4244 Reviewed-by: Anand Avati <avati at redhat.com> Tested-by: Anand Avati <avati at redhat.com> commit bde0e142632854b8c74a4df0427662c024dd29c1 Author: shishir gowda <sgowda at redhat.com> Date: Wed Sep 26 18:09:33 2012 +0530 cluster/dht: fail fix-layout if any of the subvol is down If any subvolume is down, and a layout is re-written and hash values change, entry names in the downed subvol can be reused in the other subvol which got the same hash range. when the downed subvol is brought back up, duplicate entried might appear Also separated handling of ENOSPC and ENOTCONN error. Change-Id: I5ed93990425a4cee70df2dab7c7c119fdc87ad56 BUG: 860663 Signed-off-by: shishir gowda <sgowda at redhat.com> Reviewed-on: http://review.gluster.org/4000 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit c7baba53635c78b899a165d1de6b6982bb520325 Author: Amar Tumballi <amarts at redhat.com> Date: Fri Nov 30 11:28:54 2012 +0530 tests/README: add a note about usage of 'mount -t glusterfs' Change-Id: Ic9e02c34e8d7c8eb4a18c459d2a8899d85a59189 Signed-off-by: Amar Tumballi <amarts at redhat.com> Reviewed-on: http://review.gluster.org/4249 Reviewed-by: Anand Avati <avati at redhat.com> Tested-by: Anand Avati <avati at redhat.com> commit 1bfcabdb61920ed4156ac24799cdd846bec64233 Author: Pranith Kumar K <pkarampu at redhat.com> Date: Tue Nov 27 12:33:06 2012 +0530 mgmt/glusterd: Consider nodesvc to be running after online Definition of online in the message below is that the RPC_CLNT_CONNECT event arrives for the nfs/self-heal-daemon process. For automated tests, sometimes the script needs to wait until self-heal-daemon comes online, so that the relevant commands can be executed. Gluster volume status before this change printed whether the self-heal-daemon is running or not based on the lock availability on the pidfile. But there is a small window where the lock on pid file is present but the process is still not online. So the commands that were depending on this kept failing in the test script. Change-Id: I0e44e18b08d7b653d34fa170c1f187d91c888cd9 BUG: 858212 Signed-off-by: Pranith Kumar K <pkarampu at redhat.com> Reviewed-on: http://review.gluster.org/4236 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 3d83e6c42ee0d43208a7b1ebb0595ee7c43bb066 Author: Pete Zaitcev <zaitcev at kotori.zaitcev.us> Date: Sun Nov 25 22:57:06 2012 -0700 Replace "ssh foo gluster" with "gluster --remote-host=foo" With the current lack of authentication, there is no security improvement with passwordless ssh replaced. However, it is more convenient to install UFO if you do not have to generate ssh keys every time. There is a downside the gluster-server RPM becomes required. BUG: 880050 Change-Id: I04f4ad666ac96713055723bd432131a4db325b4f Signed-off-by: Pete Zaitcev <zaitcev at redhat.com> Reviewed-on: http://review.gluster.org/4231 Reviewed-by: Peter Portante <pportant at redhat.com> Reviewed-by: Jeff Darcy <jdarcy at redhat.com> Reviewed-by: Kaleb KEITHLEY <kkeithle at redhat.com> Reviewed-by: Niels de Vos <ndevos at redhat.com> Tested-by: Anand Avati <avati at redhat.com> commit 01cd59506e8021b4adb7fe8b4877a7e60beb13f6 Author: shishir gowda <sgowda at redhat.com> Date: Thu Oct 18 15:40:02 2012 +0530 cluster/dht: Heal dir uid/gid Identify mismatching uid/gid in lookup, and trigger a syncop heal. uid/gid of subvol with latest ctime is trusted (local->prebuf). Change-Id: Ib5c4bc438e7f4b1f33080e73593f40f400e997f0 BUG: 862967 Signed-off-by: shishir gowda <sgowda at redhat.com> Reviewed-on: http://review.gluster.org/3964 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com> commit 9864b3a8e46c2813a5793ce7ac7d3029ed324828 Author: Avra Sengupta <asengupt at redhat.com> Date: Thu Nov 29 14:06:30 2012 +0530 debug/error-gen : Added dumpops to print private values of error-gen in the statedump. Change-Id: I4aa299bd8ecdaa82cdfdc2d97a89fcddcbb25930 BUG: 767095 Signed-off-by: Avra Sengupta <asengupt at redhat.com> Reviewed-on: http://review.gluster.org/4245 Tested-by: Gluster Build System <jenkins at build.gluster.com> Reviewed-by: Anand Avati <avati at redhat.com>