summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* glusterd: persistent state restore needs to be backward compatible.v3.2.3qa5Krishnan Parthasarathi2011-08-211-8/+12
| | | | | | | | Change-Id: I6c774f638bd8ebd3f3c7c868be6416c9b37897d0 BUG: 3453 Reviewed-on: http://review.gluster.com/282 Reviewed-by: Vijay Bellur <vijay@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* features/marker: avoid race conditions in marker-quota and avoid memory ↵v3.2.3qa4Raghavendra Bhat2011-08-202-50/+199
| | | | | | | | | | corruption Change-Id: I9e69c7fcf47d611ea960f9969bbc3fb96d93d58e BUG: 3389 Reviewed-on: http://review.gluster.com/278 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* glusterd: replace-brick status was not 'shared' with peer.Krishnan Parthasarathi2011-08-203-71/+288
| | | | | | | | Change-Id: Ia2d89fd919b077232a37debc2aebe1bc72150856 BUG: 3432 Reviewed-on: http://review.gluster.com/264 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* xlators/nfs: Fix a typo in option descriptionVijay Bellur2011-08-201-3/+3
| | | | | | | | Change-Id: Ibb888357b87603544f360d181637138261fb3b71 BUG: 3445 Reviewed-on: http://review.gluster.com/275 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* features/marker: send the errno sent by posix to the upper xlators, instead ↵Raghavendra Bhat2011-08-201-1/+2
| | | | | | | | | | | | | | | | | of ENOMEM Marker sends stat first, before sending the unlink. By the time stat reaches posix if the file is deleted by another client, then stat fails with op_errno set to ENOENT. But in the corresponding call back function of marker (i.e marker_unlink_stat_cbk), we check for (op_ret < 0) and if so we unwind by sending ENOMEM as the error to the above xlators which results in the applications (such as rm -rf) also getting ENOMEM. Change-Id: Idb63215a6c46f3acfe4c0fa7cb2dd97b0170441b BUG: 3429 Reviewed-on: http://review.gluster.com/253 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* features/marker: Correct behavior of local_ref/unrefVijay Bellur2011-08-203-7/+4
| | | | | | | | Change-Id: I8266754d4b53b525b13fed2383cf95d77bab47ba BUG: 3429 Reviewed-on: http://review.gluster.com/252 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* mgmt/glusterd: Fix the string to be parsed by the nfs option handler of ↵Kaushik BV2011-08-191-2/+2
| | | | | | | | | | volgen-engine Change-Id: I9e86b472500b59fb220c7589fd00fa9fffdca9c5 BUG: 3414 Reviewed-on: http://review.gluster.com/272 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* smoke-test.sh: script used by gerrit as part of pre-commit testAnand Avati2011-08-191-0/+83
| | | | | | | | Change-Id: Idc3be3e22cca5fc623b27c2f500f59785cbd332b BUG: 3234 Reviewed-on: http://review.gluster.com/265 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* mgmt/glusterd: call the nfs option handler at the right placev3.2.3qa3Kaushik BV2011-08-181-14/+26
| | | | | | | | Change-Id: If2b854ede47fa27c0134e6abaccb62dbe2ea8b26 BUG: 3414 Reviewed-on: http://review.gluster.com/255 Reviewed-by: Vijay Bellur <vijay@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* mgmt/Glusterd: Implementation volume set help/help-xmlKaushik BV2011-08-1823-141/+1087
| | | | | | | Change-Id: I0c54fd1c15550e5e5551e95ed32adb14d8029fab Reviewed-on: http://review.gluster.com/238 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* cluster/afr: Fix endian conversion for fxattropPranith Kumar K2011-08-181-1/+1
| | | | | | | | Change-Id: Ie67c4da49876555c3162909e474b9089a85f99a6 BUG: 3182 Reviewed-on: http://review.gluster.com/256 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* rpc-clnt: perform XDR encoding in unlocked regionAnand Avati2011-08-171-37/+36
| | | | | | | | Change-Id: Ia11c3ced4bec5959a5f0d8fcd4c6070b2ead220a BUG: 3409 Reviewed-on: http://review.gluster.com/242 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* glusterd: fix for volume stop causing inconsistent volume statusKaushal M2011-08-172-7/+10
| | | | | | | | | | | | | This fixes problem caused by race between glusterd and glusterfsd occuring when they try to unlink pidfile during volume stop, which led to the volume being stopped, but the status of the volume remained in started state. Change-Id: Ibf88b61dc66be4ddff9050a0359636675de558a2 BUG: 3147 Reviewed-on: http://review.gluster.com/246 Reviewed-by: Vijay Bellur <vijay@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* features/marker: do not unref the marker local twice to avoid memory corruptionRaghavendra Bhat2011-08-172-7/+16
| | | | | | | | Change-Id: I71bc8a477155cff62c3218fee285a22a44aa54ba BUG: 3385 Reviewed-on: http://review.gluster.com/241 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* cluster/stripe: send the xattr keys with create/mknod itself.shishir gowda2011-08-101-189/+177
| | | | | | | | | | | | so stripe is more acl friendly Porting patch ded0a9a2a0a9024def7a4b199ac3bbfa5d66485a from master Change-Id: I0c7d8fb90714a4d92620646d940a58be58a3cf66 BUG: 3368 Signed-off-by: Amar Tumballi <amar@gluster.com> Reviewed-on: http://review.gluster.com/202 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* posix-acl: disable permission checks for fd based opsAnand Avati2011-08-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | If write calls are coming in through an fd with O_RDWR or O_WRONLY flag then a permission check is unnecessary. However writes from NFS ideally need a "stateless" check in each call and this results in a permission failure due to the read-only mode (disregarding the FD's writeability). For now it is acceptable to disable write checks as almost always the NFS client would already be doing such basic access control. Also because the previous access-control translator (prior to posix ACL introduction) too was permitting writes and reads unconditionally. In fact the Linux KNFS server too assumes the NFS client would have done the permission check. Change-Id: I33e5de8911a87881f9341b8b92574780c2dfbeba BUG: 3388 Reviewed-on: http://review.gluster.com/207 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Change Copyright current yearPranith Kumar K2011-08-10407-410/+410
| | | | | | | | Change-Id: Id1f1a91cf15d933d5621a0073ddaebe02df0f159 BUG: 3348 Reviewed-on: http://review.gluster.com/198 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* fuse-resolve: prevent linking of inodes of different inode-tableAmar Tumballi2011-08-102-25/+40
| | | | | | | | | | | | | | | | | | | This can happen in deep_resolve_cbk, which happens after a graph switch. Root cause was because the graph change happened while a FOP was in transit and by the time the call came back, the active translator of fuse is now changed. Fix is to make sure the resolve operation happens on a given inode table, instead of taking the latest graph of fuse for each operation Change-Id: Idd6e2d5c2d5fc5d571f7a1fbc174e210babf8a2b BUG: 3355 Reviewed-on: http://review.gluster.com/194 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Shishir Gowda <shishirng@gluster.com> Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Changes to EXCEPTIONS and included EXCEPTIONS in packagingv3.2.3qa1Vijay Bellur2011-08-073-4/+12
| | | | | | | | Change-Id: I6c5c1536016489bf6b981356942901f69862393a BUG: 3348 Reviewed-on: http://review.gluster.com/189 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* LICENSE: s/GNU Affero General Public/GNU General Public/Pranith Kumar K2011-08-06400-1258/+1278
| | | | | | | | Change-Id: Ibf5f45431d7a55b70d7304649af652d6f25bb688 BUG: 3348 Reviewed-on: http://review.gluster.com/183 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* cluster/dht: clear local->cached_subvol when switching to do_fresh_lookupAnand Avati2011-08-061-0/+1
| | | | | | | | | | | | The presence of local->cached_subvol makes dht_lookup_everywhere_done behave as though it was a lookup on a file where linkfile needs to be recreated. In a fresh lookup, local->cached_subvol should be NULL. Change-Id: Ie6bd6ad536def03d970526d51e20c6daeb00922b BUG: 3317 Reviewed-on: http://review.gluster.com/186 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* features/marker-quota: Performance improvement.Junaid2011-08-053-11/+122
| | | | | | | | | | | With this patch new transactions will not be triggered if an updation is already in progress on that inode. Change-Id: I6477444ac69071b73b509ae670c83f301bb19bce BUG: 2988 Reviewed-on: http://review.gluster.com/169 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Raghavendra G <raghavendra@gluster.com>
* save even more treesAnand Avati2011-08-051-1/+10
| | | | | | | | | | | make the build even more quiet. make anush even more happy by saving even more trees. Change-Id: I301aba34e4470805114989650a13f9fe35f42d35 BUG: 3255 Reviewed-on: http://review.gluster.com/175 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* save more treesAnand Avati2011-08-052-0/+9
| | | | | | | | | | make the build more silent Change-Id: Ied4c87c40af4b1f1034af4a13c1153d82883751b BUG: 3255 Reviewed-on: http://review.gluster.com/173 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Removes hardcoding of the transport type in replace-brick operations.Vishwanath S Bhat2011-08-043-21/+69
| | | | | | | | | | | Replace-brick didn't work in volume with rdma transport type. Change-Id: Ib4654bae8aa035050f7e4718c4d29174b7db74b3 BUG: 3092 Testcase: Replace-brick should succeed in volume with rdma transport type. Reviewed-on: http://review.gluster.com/133 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Krishnan Parthasarathi <kp@gluster.com>
* use GIT_EDITOR env variable instead of EDITORVenky Shankar2011-08-041-1/+1
| | | | | | | | Change-Id: I8deb44ef0f7752b7f58f2e320ec3e59724854840 BUG: 3326 Reviewed-on: http://review.gluster.com/157 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* features/marker-quota: Remove unused variable volname.Junaid2011-08-032-6/+1
| | | | | | | Change-Id: Id0ad3b9c00ab86baec7311998194b777948a5869 Reviewed-on: http://review.gluster.com/153 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* glusterd rebalance: handle a race condition while starting a rebalanceAmar Tumballi2011-08-031-2/+1
| | | | | | | | | | | | | due to the race, there was a possibility of having two (or more) threads doing glusterd_defrag_start(), which would cause different thread to access same pointer, and at some point making it NULL, causing other threads to crash with SEGV. Change-Id: Id05b99dd6f33329027b8a07f1c8da5a65fd6dae9 BUG: 3295 Reviewed-on: http://review.gluster.com/139 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* features/marker: log failures due to file not being presentRaghavendra G2011-08-031-33/+77
| | | | | | | | | | during quota updation transaction in DEBUG. Change-Id: I483caadbfd77d3830b1ea930a31eedddd0808fca BUG: 3143 Reviewed-on: http://review.gluster.com/42 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* DHT rename: Recreate linkfile after unlinkshishir gowda2011-08-033-143/+50
| | | | | | | | | | | | | This is done, so that there is no gfid mismatch. Unlink the older linkfile if it exists, and recreate it with the correct gfid. Also removed unused rename related code. BUG: 2522 Change-Id: Ia880adda5a94351f30971576b4faa861fac4682d Reviewed-on: http://review.gluster.com/144 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* mgmt/glusterd: Ignore case in friend find by hostnamePranith Kumar K2011-08-031-4/+4
| | | | | | | | Change-Id: Id24627b5a59ef21a799b6a4da8cd063966cad3b9 BUG: 3309 Reviewed-on: http://review.gluster.com/146 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* storage/posix: handle dictionary being NULL in a functionAmar Tumballi2011-08-012-1/+4
| | | | | | | | Change-Id: Ib9cac6ed1635203802f089986f8acb1ce416265d BUG: 3215 Reviewed-on: http://review.gluster.com/97 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* IO-threads: Support for loading io-threads xlator on client sideshishir gowda2011-08-011-1/+5
| | | | | | | | | | | | New set option performance.client-io-threads added to enable/disable it. Default behavior is io-threads is off on client side Loaded only on fuse volume below io-stats. BUG: 3122 Change-Id: I28ddc6db9f26081d0ea5dd6cb895991d8ba29210 Reviewed-on: http://review.gluster.com/135 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* glusterfsd: initialize sigset_t in sigwaiterAnand Avati2011-07-311-0/+1
| | | | | | | | | | Thanks to kkeithle@redhat.com for pointing out. Change-Id: I8167ffffddbdbc3dc09f7474bd834dbf4a49db9b BUG: 3280 Reviewed-on: http://review.gluster.com/130 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* performance/io-cache: hold lock on ioc_inode whereever a page is being ↵Raghavendra G2011-07-294-846/+950
| | | | | | | | | | accessed/modified Change-Id: I77e94166d4ad7a9ac87127de840add7278992bf3 BUG: 2939 Reviewed-on: http://review.gluster.com/24 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* performance/quick-read: Handle unwinding of frame corresponding to read fop ↵Raghavendra G2011-07-291-115/+220
| | | | | | | | | | | | | | | | | | properly, while validating cache. - there was a possibility of double unwind in case of errors. - use a new frame to do open in fd-based fops. In case of errors, qr_resume_pending_ops will be called to resume all the fops waiting on open. Hence if we use frame corresponding to fop (without creating a new one), there is a possibility of frame being freed by the time open would've returned to quick-read. Change-Id: Ie4cc19907f9d6362860bdb984779c8f4cf822332 BUG: 3168 Signed-off-by: Raghavendra G <raghavendra@gluster.com> Reviewed-on: http://review.gluster.com/35 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* features/marker-quota: Perform removexattr with frame uid and gid set to root.Junaid2011-07-292-0/+23
| | | | | | | | Change-Id: Iabd8ff835c76d828e4af50ce4941d2ff86797eee BUG: 3194 Reviewed-on: http://review.gluster.com/99 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Raghavendra G <raghavendra@gluster.com>
* libglusterfs: Bring in os_daemon() routine to replace FreeBSD codeVijay Bellur2011-07-285-102/+65
| | | | | | | | Change-Id: I72dda0bb9e3b6cfa8b8ecffe85cc606f5a682313 BUG: 3206 Reviewed-on: http://review.gluster.com/117 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* features/marker-quota: Fix some random memory leaks.Junaid2011-07-282-12/+11
| | | | | | | | | Change-Id: I1b01adf1d0ecf494f960d125f2bdcc9c10137115 BUG: 3169 Reviewed-on: http://review.gluster.com/73 Tested-by: Gluster Build System <jenkins@build.gluster.com> Tested-by: Raghavendra G <raghavendra@gluster.com> Reviewed-by: Raghavendra G <raghavendra@gluster.com>
* rpc: in client connection init(), return the proper error codeAmar Tumballi2011-07-271-0/+1
| | | | | | | | | | | without the proper error code, rpc won't know if transport is successfully loaded or not. Change-Id: Idc3ad56d2f47cf1e81ba39f90a7f7b47305d7d9a BUG: 3260 Reviewed-on: http://review.gluster.com/113 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* stripe: make it quick-read friendlyAmar Tumballi2011-07-271-121/+80
| | | | | | | | | | also do some cleanups Change-Id: Id792ac11b61627201ca08b9f271724dc3e9c5cd7 BUG: 3253 Reviewed-on: http://review.gluster.com/111 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* glusterd: handle replace-brick in paused state.Krishnan Parthasarathi2011-07-273-26/+95
| | | | | | | | | | | This change ensures that glusterd retains 'state' information of an ongoing replace brick operation even if it went down midway. Change-Id: Ibb161b874468a27cbf35a7ef49e9da5495c4025e BUG: 3252 Reviewed-on: http://review.gluster.com/107 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* cluster/dht: dht_rename() - handle GFID situationsAnand Avati2011-07-251-14/+60
| | | | | | | | | | | | In the pre-GFID era, the linkfile of the destination file could be reused the linkfile for the renamed file when dst_cached == src_cached. This patch handles this situation and reverts the previous (wrong) fix. Change-Id: Iba57b5eb91cf8b1fb40e74f6399cdf99b8b00410 BUG: 2464 Reviewed-on: http://review.gluster.com/89 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* mgmt/glusterd: Read the contents of vol-info file into a dynamically alloced ↵Junaid2011-07-242-36/+92
| | | | | | | | | | string. Change-Id: I64d7e143eb4b0fda76a9b97134d0233763a1679a BUG: 3154 Reviewed-on: http://review.gluster.com/71 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Pavan T C <tcp@gluster.com>
* Preserve atimes and mtimes during rebalanceHarshavardhana2011-07-231-1/+17
| | | | | | | | | | | | | | | Applications relying on mtime get affected by existing rebalance since it always updates destination file to latest timestamp. - Use utimes to update destination path with existing values from earlier stat call. Change-Id: I809a8d3ca13c5317da66737356c24e82d795ff78 BUG: 3210 Reviewed-on: http://review.gluster.com/74 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* glusterd rebalance: handle the write failure properlyAmar Tumballi2011-07-221-10/+53
| | | | | | | | | | | also, make sure the sizes are same before renaming the target file to the original file, hence prevent a possible data-loss. Change-Id: Ie88224ba62a4604f8c0149f84fa462abfbd6ad78 BUG: 3193 Reviewed-on: http://review.gluster.com/27 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* debug/io-stats: allow the log-level to be set to INFORaghavendra Bhat2011-07-201-2/+3
| | | | | | | | Change-Id: Ica9ea1b129e2c8325f7eafae7a83b85734153663 BUG: 3198 Reviewed-on: http://review.gluster.com/57 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* features/marker: fix race-conditions, memory corruptions and fd-leaks.Raghavendra G2011-07-208-376/+1019
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - remove xattrs from newpath after rename is complete. - hold inodelk on both parents (if they are different) before doing rename and gather contribution values of oldpath and newpath to their parents while still holding the locks. Use these contribution values to reduce parent sizes. - performance optimization: abort updation process if delta is zero. - libglusterfs/call-stub: Allow unwinding of frames for rename during call_resume_unwind. - fixes in dirty inode healing codepath: - fix fd-leak of fd opened on the directory. - don't add (instead just assign) next offset at which readdir has to be sent to local->d_off. - assign to local->d_off before winding lookup call to get child contribution. - use mutexes while accessing contribution values stored in inode context. - use contribution values from backend instead of in-memory while reducing parent sizes during rename - wipe parent_loc in marker_local_unref. - check for refcount being zero holding lock in quota_local_unref. - hold parent inodelk during creation of xattrs on directory. - use contribution value to reduce parent's size, if the value to be subtracted is not passed as argument to reduce_parent_size. - skip contribution creation on root. Change-Id: I97a9ac7efc5cf82abd3837fa6f9766c35676a908 BUG: 2697 Signed-off-by: Junaid <junaid@gluster.com> Reviewed-on: http://review.gluster.com/31 Tested-by: Gluster Build System <jenkins@build.gluster.com>
* nfs: do not free the constant stringv3.3beta1Raghavendra Bhat2011-07-191-0/+3
| | | | | | | | Change-Id: Iea3838e09efad5cac789f93148fb941d2f7109b1 BUG: 3039 Reviewed-on: http://review.gluster.com/10 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* glusterd rebalance: use lstat() instead of stat()Amar Tumballi2011-07-191-6/+6
| | | | | | | | | | | | so the symlinks pointing to directories are not considered as directories themself and the control flows outside gluster's scope Change-Id: Iae910ce6c68886d34ae6e5efe46062481b40cd25 BUG: 3191 Reviewed-on: http://review.gluster.com/26 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>