summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* XDR: cli-glusterd xdr consolidationshishir gowda2011-11-1616-2580/+1443
| | | | | | | | | | | | | | | | By using only 1 xdr struct for request and 1 xdr struct for response, we will be able scale better and also be able to parse the o/p better For request use- gf1_cli_req - contains dict For response use- gf1_cli_rsp - conains op_ret, op_errno, op_errstr, dict Change-Id: I94b034e1d8fa82dfd0cf96e7602d4039bc43fef3 BUG: 3720 Reviewed-on: http://review.gluster.com/662 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* Reflect quota-adjusted values in statfs.Jeff Darcy2011-11-161-0/+98
| | | | | | | | Change-Id: I7a2a0b1ad0aa2a972aad9712658083c61052bef2 BUG: 3813 Reviewed-on: http://review.gluster.com/675 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Mohammed Junaid <junaid@gluster.com>
* features/marker-quota: Use stack_wind_cookie in place of stack_wind to ↵Junaid2011-11-161-11/+12
| | | | | | | | | | | | | preserve the cookie value. In marker_rename, some of the call back functions make use of cookies sent by the calling functions. In case of stack_wind the frame->cookie is over written with the address of new frame. Change-Id: I8ec98f3305700e2c3295a10dff159ca6a19a380a BUG: 3808 Reviewed-on: http://review.gluster.com/722 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* storage/posix: assign ino as -1 if gfid is missingPranith Kumar K2011-11-161-1/+6
| | | | | | | | Change-Id: I422c87f977b5da083f9fcfaf20f0ca9a872da0a4 BUG: 3767 Reviewed-on: http://review.gluster.com/677 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* cluster/distribute lookup: send revalidate calls to all subvols for directoriesshishir gowda2011-11-161-2/+13
| | | | | | | | | | | | | | If mkdir fails on a subvolume, layout is set taking into account only the subvols where it was successful. stat does not trigger selfheal, as its layout based. Revalidate on directories needs to be sent to all subvols, to fix the error, and not just on the layout. Change-Id: If17055508ffcf268806258ed49e7d7500a89d0f2 BUG: 3793 Reviewed-on: http://review.gluster.com/693 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* rpc-transport/rdma: send correct vector count when both rpc-header and ↵Raghavendra G2011-11-151-2/+10
| | | | | | | | | | | program-header are received through rdma-reads. Change-Id: I1b0b91eb7216f32a5748325d6dda37f3998302c7 BUG: 3754 Reviewed-on: http://review.gluster.com/697 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* Move some of the messages to log level `TRACE'.Sachidananda Urs2011-11-154-8/+8
| | | | | | | | Change-Id: I46133b5e2218b9d810251b3dadadd8f157ab07d7 BUG: 3761 Reviewed-on: http://review.gluster.com/643 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* rdd: create the file and do rdd if the file does not exist.Raghavendra Bhat2011-11-151-2/+174
| | | | | | | | | | | | | | rdd takes input file and copies the its data to the specified output file ( by creating it) by selecting random offset. If the input file does not exist it will not work. This patch will create the input file if it does not exist and then does the copy. File size is given as an argument. If the file exists it truncates the file and then does the copy. Change-Id: Ia09451e9e80e13f27320f1edc12c73c0dcf663a9 BUG: 3724 Reviewed-on: http://review.gluster.com/596 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* Fix memleaks in NFSkrishna2011-11-152-1/+2
| | | | | | | | | Change-Id: I522d4bad71d1e914fa88367f70f5e8c28d64fbbe BUG: 3542 Reviewed-on: http://review.gluster.com/533 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Shehjar Tikoo <shehjart@gluster.com>
* debug/io-stats: prevent setfattr crash when no value givenRajesh Amaravathi2011-11-112-1/+10
| | | | | | | | | | | | Check for whether the dump file is given, and proceed on success. If dump file is not given, unwind with ENOENT. Change-Id: If524a2b20d643e0e75d81daebe59560a78000524 BUG: 3716 Reviewed-on: http://review.gluster.com/663 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* mount/fuse: check for recursive mountsRajesh2011-11-111-1/+60
| | | | | | | | | | | | | | Adding check_recursive_mount() in mount.glusterfs.in to check if mount point is in the lineage of any brick path. Gracefully fails if mount point leads to recursive mount. Change-Id: Iedc4cd767d241c8e256181e472c0815f3831a316 BUG: 2003 Reviewed-on: http://review.gluster.com/314 Reviewed-by: Amar Tumballi <amar@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* fusermount: Build problem fixed with new glibcHarshavardhana2011-11-101-1/+1
| | | | | | | | Change-Id: Id25e688d3dbecb74d820388faec5ee5041f21630 BUG: 3797 Reviewed-on: http://review.gluster.com/714 Reviewed-by: Anand Avati <avati@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* stripe readv_cbk: Fix stat return valuesshishir gowda2011-11-083-1/+9
| | | | | | | | | | | | | | | | | | | | | | | Workaround - If the read request, does not fall to the subvolume with the largest file size set, then we never return the correct size. This leads to clients seeing a truncated file error. The work around is to wipe stat being returned as part of read call. Problem - We were passing the stbuf returned by the first child/index, which can be different to the size/blocks returned by stat. This led to applications viewing the file as being truncated. The stbuf size needs to be the largest of all results, and blocks the aggregation from all subvolumes. (similar to stat) BUG: 3774 Change-Id: I46c53c18b2b42b1f5b86b05555bbab73bf993476 Reviewed-on: http://review.gluster.com/666 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* cli : Modify "top read-perf/write-perf" outputKaushal M2011-11-031-3/+34
| | | | | | | | | | | Improves alignment and width of columns in the output of "top read-perf/write-perf". Change-Id: I9a4ec3a121f40e099c96952e2388b27ed90b6fe6 BUG: 3719 Reviewed-on: http://review.gluster.com/645 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* cluster/afr : Fix self-heal of special filesKaushal M2011-10-313-12/+44
| | | | | | | | | | | | | | | | Fixes self-heal of special files like device files, fifo files, socket files etc. Does it by doing the following: * Prevent setting of pending data xattr on a special file during entry self-heal when a new fils is created. * Allow data self-heal to be started on all file types other than directories. During data self-heal, for special files just erase pending xattrs, if those xattrs were set by previous releases of glusterfs. Change-Id: I34d8121e23ad00e85371ae2a36ef30cf3bd5db7a BUG: 3525 Reviewed-on: http://review.gluster.com/618 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Pranith Kumar Karampuri <pranithk@gluster.com>
* fuse: flip xattr key from user to trusted namespace for certainVenky Shankar2011-10-287-9/+151
| | | | | | | | | | | | | | | | | | | | clients. This is needed for gsyncd/hadoop-plugin running as non-super user to be able to request extended attributes under trusted namespace. Request for a key is made under 'user.' namespace and is flipped by fuse xlator for specific xattr name to the corresponding 'trusted.' extended attribute. Both applications set a identifier (client-pid) while doing a FUSE mount, which is checked by get/set/remove interfaces in FUSE translator. Change-Id: I72f77a5dd1ee1d69c8b0e09209449348dbcf879a BUG: 3701 Reviewed-on: http://review.gluster.com/563 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* cluster/afr: Remove unused 'ino' codePranith Kumar K2011-10-285-78/+0
| | | | | | | | Change-Id: I425e2d23e9e45f10ddeff2eacf918dd90f8baee7 BUG: 3744 Reviewed-on: http://review.gluster.com/639 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* changing of the volume types after volume is created.Amar Tumballi2011-10-283-57/+610
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | with this patch, one can do all the below operations: on a simple distribute volume 'test' with bricks A,B, add bricks C and D: bash# gluster volume add-brick test replica 2 C D now the volume 'test' becomes distribute-replicate, with pairs A-C, B-D. same holds good for stripe. and now, one can change the replica count 2 on volume 'test' to 4 like below: bash# gluster volume add-brick test replica 4 E F G H now, volume has 'replica' count 4, with pairs being 'A-C-E-F' and 'B-D-G-H'. after this, if user wants to reduce the replica count, he can do bash# gluster volume remove-brick test replica 3 C H # (one from each pair) This should work to reduce the replica count Change-Id: I4f109141a9ba7be4a92a5f5810a4163baeb92973 BUG: 3305 Reviewed-on: http://review.gluster.com/158 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* features/marker-quota: Donot log when inode or inode-ctx is NULL.Junaid2011-10-281-2/+2
| | | | | | | | | | | | When running rm -rf from mount point, quota-updation process may endup in a state where the inode is already removed from the gluster inode table, but the updation has process is still in progress. This is not a error condition because the updation is done asynchronously. Change-Id: I739bff466d23f55f842c16dd4fa2808df188ddf8 BUG: 3609 Reviewed-on: http://review.gluster.com/597 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* io-stats: improve io-stats dump outputRajesh Amaravathi2011-10-281-36/+89
| | | | | | | | | | | | | | | * Cumulative statistics' output has been formatted to match #gluster volume profile <vol> info * Fop count, latency measurements have been tabulated for better readability. * Minor formatting of individual fop call counts and throughput info dumps. Change-Id: I0fa524f773018be2f73077d107e34170d19fc420 BUG: 3544 Reviewed-on: http://review.gluster.com/581 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* glusterd: fix '.cmd_log_history'file handle leak on SIGHUPKaushal M2011-10-281-1/+5
| | | | | | | | | | | Closes the .cmd_log_history file and reopens it to prevent leakage of file handles. Change-Id: I1c846ccf9a0c1c90c9209f26a1c5332d3dd94ffd BUG: 3678 Reviewed-on: http://review.gluster.com/584 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* glusterd: allow non-related directories with same prefixRajesh Amaravathi2011-10-281-30/+13
| | | | | | | | | | | | | | Earlier, using two directories with names like /test and /test1 failed volume creation. This patch sees that the next character is checked to be '/' to conclude that they are recursive. Eg: /test and /test2 succeed, while /test and /test/alpha does not. BUG: 3645 Change-Id: Idc90211a7a572200ed983c87c4344271f53b0132 Reviewed-on: http://review.gluster.com/544 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Jeff Darcy <jdarcy@redhat.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* locks: perform inode_ref of pl_update_refkeeper outside locked regionAnand Avati2011-10-281-1/+6
| | | | | | | | | | | | | | | | | Performing inode_ref inside the critical section of pl_update_refkeeper (around pl_inode_t->mutex) causes a deadlock with inode_table_t->lock. The other thread (process state dump) holds the inode_table_t->lock first to loop over inodes and then while dumping an inode's lock context, tries to acquire pl_inode_t->mutex thereby completing the deadlock. The fix is to perform inode_ref outside the critical section in pl_update_refkeeper Change-Id: I689ab4a9b46b36287740279fdec6159182c86119 BUG: 3753 Reviewed-on: http://review.gluster.com/628 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Krishnan Parthasarathi <kp@gluster.com>
* pump: Change crawl to accommodate afr_lookup changesPranith Kumar K2011-10-284-51/+67
| | | | | | | | Change-Id: I600120252445c06d9cc3e7aa24022c2559b6abe2 BUG: 3747 Reviewed-on: http://review.gluster.com/638 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* cluster/afr: Take gfid-req from xattr_req only if inode->gfid is nullPranith Kumar K2011-10-281-29/+64
| | | | | | | | Change-Id: Iddf5b59d3534c517dcd3c0d7b819e3768f6e915a BUG: 3747 Reviewed-on: http://review.gluster.com/637 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* mount/fuse: set gfid in lookup after a failed revalidate lookupPranith Kumar K2011-10-281-0/+3
| | | | | | | | Change-Id: I1904aa63d9365ebda3e979449454ac08db85d93d BUG: 3747 Reviewed-on: http://review.gluster.com/636 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* Stripe mknod: Always call mknod if REGULAR file on first child.shishir gowda2011-10-212-46/+138
| | | | | | | | | | | | This prevents a possible race between mknod(REGULUAR files) and remove. mknod first creates on the first_child, and only if successful, on other subvolumes. Change-Id: I0ddaeb92c1884c771c966bb151db052ab5735367 BUG: 3727 Reviewed-on: http://review.gluster.com/608 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* cli: add geo-replication log-rotate commandVenky Shankar2011-10-2011-27/+448
| | | | | | | | | | | | | | | | | | | | | | | | | Rotating geo-replication master/monitor log files from cli. On invocation, the log file for a given master-slave session is backed up with the current timestamp suffixed to the file name and signal is sent to gsyncd to start logging to a new log file. Sample commands: * Rotate log file for this <master>:<slave> session: gluster volume geo-replication <master> <slave> log-rotate * Rotate log files for all session for master volume <master> gluster volume geo-replication <master> log-rotate * Rotate log files for all sessions: gluster volume geo-replication log-rotate Change-Id: I75f641b4e082a04d5373c18583ca4a1d9651d27a BUG: 3519 Reviewed-on: http://review.gluster.com/529 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Csaba Henk <csaba@gluster.com>
* build: warning suppression (round n)Amar Tumballi2011-10-2018-44/+134
| | | | | | | | | | with this patch, there are no more warnings with gcc (GCC) 4.6.1 20110908 Change-Id: Ice0d52d304b9846395f8a4a191c98eb53125f792 BUG: 2550 Reviewed-on: http://review.gluster.com/607 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* libglusterfs/syncop: fix minor memory leaksAmar Tumballi2011-10-201-3/+18
| | | | | | | | | | | * most of the leaks can happen in syncop_lookup(), if rsp_dict is not provided by user Change-Id: I5a887c45f1a46a91502147e44f7ed9d41f50dbc6 BUG: 3715 Reviewed-on: http://review.gluster.com/550 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* distribute: handle migration of symlink and special filesAmar Tumballi2011-10-206-59/+292
| | | | | | | | | | | | TODO: currently, wrt. rebalance/decommissioning, only pending thing is hardlink migration. Change-Id: I30cd06802e84c95601a5a081198f1f09c6d6bc01 BUG: 3714 Reviewed-on: http://review.gluster.com/578 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Shishir Gowda <shishirng@gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* Remove EXCEPTIONS file.Kaushal M2011-10-193-16/+2
| | | | | | | | Change-Id: I79fe05102a954ee1c831ceca229f6dbc1997113d BUG: 3737 Reviewed-on: http://review.gluster.com/617 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* pump: status shouldn't be cleared until migration is complete during commit.Krishnan Parthasarathi2011-10-191-8/+0
| | | | | | | | | | | Clearing pump status on migration complete is futile because we would be 'replacing' src brick with destination brick in the volume anyway. Change-Id: Ib12fee84bd5445c4a20dac1cf10555331d7b8ebd BUG: 3653 Reviewed-on: http://review.gluster.com/585 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* Print microseconds as a fraction.Pete Zaitcev2011-10-181-2/+2
| | | | | | | | | Change-Id: I35cdf2c771974b9c51db47f24cd044ae014e52ce BUG: 3426 Reviewed-on: http://review.gluster.com/244 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* cluster/afr: Prevent truncation of mask uint64_t->gf_boolean_tPranith Kumar K2011-10-142-5/+9
| | | | | | | | Change-Id: If67f726f21b713fa9312dc499a1aca4cb00f71de BUG: 3682 Reviewed-on: http://review.gluster.com/589 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* glusterd: Removing delayed moving of op sm for stop vol/remove brick op.Krishnan Parthasarathi2011-10-145-62/+4
| | | | | | | | | | | | Earlier we waited for brick disconnect or 5s whichever is smaller, before we move op sm from brick op stage to commit stage. This involves a race where both the above mentioned events can happen 'concurrently' and result in double free. Change-Id: I8b1524afded84c20d55e29cfe2579ca872d2ac26 BUG: 3700 Reviewed-on: http://review.gluster.com/575 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* glusterd: take off 'auto-commit' behavior of decommissioningAmar Tumballi2011-10-111-6/+18
| | | | | | | | | | | | | | | | | | | currently if 'remove-brick <BRICKS> start' is given, after all the data is migrated, in the _cbk() function from rebalance complete we used to re-write the volume file without the bricks. But the flaw of this method is that, currently the _cbk() function is called on only the node on which rebalance actually happens, hence other nodes are not aware of this behavior. So, had to remove the 'auto-commit', instead we want the user to issue a command 'remove-brick <Bricks> commit' (or 'force') explicitely to remove the bricks Change-Id: Ifdac1292095029429da502aa6e4c0cf4ee124990 BUG: 1952 Reviewed-on: http://review.gluster.com/551 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Shishir Gowda <shishirng@gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* libglusterfs/iobuf: increase the iobref's iobuf array sizeAmar Tumballi2011-10-103-7/+7
| | | | | | | | | | | | earlier it was hardcoded to 8, now increased the size to 16. also return the exact error code in client_submit_vec_request(), so there will be no missing frames in case of errors. Change-Id: I82a6ee681a543b673a7cf1a0b9c5ade2a7175ebe BUG: 3679 Reviewed-on: http://review.gluster.com/555 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* smoke.sh: Avoid running extended attribute tests with dbenchVijay Bellur2011-10-071-1/+1
| | | | | | | | Change-Id: I6d58e387e2bf9d5616ec3950abdb0680801523db BUG: 3234 Reviewed-on: http://review.gluster.com/564 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com>
* Fix a typo in log message.Sachidananda Urs2011-10-061-1/+1
| | | | | | | | Change-Id: I5c2b170977f21c9a83d36f60d9a145c6cc221358 BUG: 2346 Reviewed-on: http://review.gluster.com/562 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* cluster/dht: Handle 'user.ufo-test' sent by ufo in dht setxattr.Junaid2011-10-061-2/+53
| | | | | | | | | | In this case, send setxattr to all the bricks to test user xattr support and return error if setxattr fails on even one of the bricks. Change-Id: I9a9b27312a650d25bbc1f57e1ab8899d63d0593d BUG: 3185 Reviewed-on: http://review.gluster.com/542 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* features/marker-quota: Return error when inode-contribution is not present ↵Junaid2011-10-061-10/+16
| | | | | | | | | | | | in inode_ctx. Also, create the inode_contribution node even before checking for dirty and xattr not present in mq_inspect_directory_xattr function. Change-Id: Ie5b6e6ba8d5abcfc6aeb9b192720ac10aac1319e BUG: 3624 Reviewed-on: http://review.gluster.com/539 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* locks: Avoid printing blocked times for locks that were never blocked.Krishnan Parthasarathi2011-10-051-17/+39
| | | | | | | | Change-Id: Ieedbfbe3ce2d4a87a8fe0e1a4322a1bb0549a2bf BUG: 3662 Reviewed-on: http://review.gluster.com/545 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* glusterd: pending_node type missed in profile volume op.Krishnan Parthasarathi2011-10-051-0/+2
| | | | | | | | Change-Id: Ib3c73a8432fdd2559422577a2f0c91d50b5a098c BUG: 3704 Reviewed-on: http://review.gluster.com/561 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* Stripe: Prevent dir gfid mismatch and ENOTEMPTY errorsshishir gowda2011-10-052-103/+334
| | | | | | | | | | | | | | | | | | | | gfid mismatch issue- rmdir- first remove from non first child (FC), and then last from FC. If one fails, FC entry is not removed and op is failed. mkdir- first create dir from FC, followed by other childs. If FC is success then, we succeed, banking on entry self heal ENOTEMPTY issue- unlink: remove from non FC and then on success remove from FC. If non FC remove fails, fail unlink create- Create first on FC, and on success create on non FC. Change-Id: Ia8b9e92cd2aba891d249d1995e383fea0581ffca BUG: 3663 Reviewed-on: http://review.gluster.com/557 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* glusterd: Handle restoring of volumes created in older versions.Krishnan Parthasarathi2011-10-051-15/+28
| | | | | | | | Change-Id: Idd9cb9d05122750ac78410b8f5a080104d6c1e0a BUG: 3685 Reviewed-on: http://review.gluster.com/554 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* glusterd: Shouldn't inject COMMIT_ACC event before receiving ACC from all peers.Krishnan Parthasarathi2011-10-051-1/+3
| | | | | | | | Change-Id: I88b9935f93d9a06e46c3351c2fd37c969396bb0a BUG: 3683 Reviewed-on: http://review.gluster.com/553 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* cluster/afr: set the read child ctx only if the self-heal source is validv3.3.0qa14Raghavendra Bhat2011-10-031-4/+4
| | | | | | | | Change-Id: Ifdf0db71594ce526ad85c21103726798d9aceef4 BUG: 3639 Reviewed-on: http://review.gluster.com/556 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* core: made changes to return value of __is_root_gfid()Amar Tumballi2011-10-026-11/+13
| | | | | | | | | | | now returns 'true(1)' is gfid is root, 'false(0)' if not. earlier it was the inverse, which was bit confusing Change-Id: Id103f444ace048cbb0fccdc72c6646da06631584 BUG: 3518 Reviewed-on: http://review.gluster.com/549 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* libglusterfs/syncop: do not rely on synctask set in makecontextRaghavendra Bhat2011-10-021-1/+6
| | | | | | | | | | | | | | Across glibc implementations, interpretation of argc/argv passed to makecontext() is different. This patch does away with dependence on such arguments passed to makecontext(). Instead,synctask reference is retrieved from pthread_getspecific(). Change-Id: Ie01feaa0b7d430f8782c2f6805ccdf8026e401f4 BUG: 3636 Reviewed-on: http://review.gluster.com/547 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>