summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* unify-self-heal: Fix un-ref'ing of incorrect dictShehjar Tikoo2009-04-021-1/+1
| | | | | | | | | | | | | dict_unref'ing of the dict in local results in a crash due to de-referencing a NULL spinlock. That is because after a STACK_UNWIND(..), we cannot expect the frame->local to be allocated still. Fix by using the other available reference to local->dict. Ref: https://savannah.nongnu.org/bugs/?26058 Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Print log message when AFR receives CHILD_UP/DOWN notificationVikas Gorur2009-04-021-0/+6
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* socket_connect() - if socket is already created, do not fail ↵Anand V. Avati2009-04-021-0/+1
| | | | | | | | transport_connect() -- causes spurious CHILD_DOWN events to be sent up when reconnect() thread misinterprets the failure of transport_connect() to be an actual teardown of the transport the spurious CHILD_DOWN events cause self-heal in replicate to not heal files in that subvolume, writev to not modify that subvolume etc, accounting for a lot of discrepencies in replicate which are being in the mailing lists recently. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Fixes server goes into infinite loop on Solaris when poll_err is not set.Harshavardhana2009-04-021-2/+3
| | | | | | Server goes into infinite loop when poll_err is not set. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* mount/fuse to silently send fresh lookup for ESTALEd revalidates. log only ↵Basavanagowda Kanur2009-04-021-1/+4
| | | | | | in DEBUG level. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* cluster/stripe to propogate ESTALE to parent.Basavanagowda Kanur2009-04-021-2/+4
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* cluster/unify propogates ESTALE to parent translator, if any subvolume ↵Basavanagowda Kanur2009-04-021-4/+30
| | | | | | returns ESTALE during revalidate. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* cluster/replicate should propogate the ESTALE error to parent, when at least ↵Basavanagowda Kanur2009-04-021-4/+14
| | | | | | one subvolume returns ESTALE. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* cluster/{dht,nufa} propogate ESTALE (when at least one subvolume returns ↵Basavanagowda Kanur2009-04-021-1/+10
| | | | | | ESTALE for revalidate) to parent translator. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* cluster/{nufa,dht} fail revalidates with ESTALE, in case a stale layout is ↵Basavanagowda Kanur2009-04-022-4/+4
| | | | | | found in inode->ctx. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Review comment from Krishna was missed out in previous commit of fix for ↵Anand V. Avati2009-04-021-1/+1
| | | | sending first_lookup in 2nd call
* use (fgetc() != EOF) instaed of feof() in parserAnand V. Avati2009-04-011-2/+1
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Bug fix in posix-init(), when span-devices is set above 1Amar Tumballi2009-04-011-1/+1
| | | | | | removed the extra '!' in if statement, which was a typo earlier. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* fix a segfault with io-threads when iot-schedule is called with NULL inodeAmar Tumballi2009-04-011-1/+2
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Enable glusterfs client to exit after a configured number of failed connects ↵Raghavendra G2009-04-015-1/+30
| | | | | | \ while fetching volume specification file from server Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Avoid infinite loop while parsing volume specification files on Linux/ARM.Raghavendra G2009-04-011-2/+4
| | | | | | - patch submitted by anonymous user (ref: bug #26006 on savannah). Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Add new type of option type INTERNET_ADDRESS for validationRaghavendra G2009-04-015-7/+157
| | | | | | | | - used to validate options like remote-host, bind-address. - Also validate options of translators created during fetch of volume specification file from remote server. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* log message changes in mount/fuse for SETLK, GETLK, GETXATTR, SETXATTR fopsBasavanagowda Kanur2009-04-011-5/+14
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Add support for log-level NORMAL in fuse mount helper script.Raghavendra G2009-03-312-6/+14
| | | | | | | | | - patch submitted by John Feuerstein <john@feurix.com>. - copying changes in the patch verbatim to xlators/mount/fuse/utils/mount.glusterfs.in and xlators/mount/fuse/utils/mount_glusterfs.in Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* first call of fuse is INIT internal call, and not first system call. 2nd ↵Anand V. Avati2009-03-281-2/+6
| | | | | | call is the system call where first_lookup() has to be done. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* memory leak (of header) when frame is attempted to be xfer'ed when transport ↵Anand V. Avati2009-03-281-0/+2
| | | | | | is disconnected Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* ping-pong timer: - share last_sent and last_received between channels so ↵Anand V. Avati2009-03-282-33/+29
| | | | | | that any activity ensures the remote host being alive (useful under heavy loads) - timer expiry disconnects both transports Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* fix duplicate setting of values in inode->ctx and fd->ctxAnand V. Avati2009-03-262-10/+26
| | | | | | | | this patch avoids setting of duplicate key/value pairs in the context. note that consumers have to explicitly check for previous existance of key to avoid any kind of resource leak resulting from this overwrite. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* libglusterfsclient: Fix NULL argument bugShehjar Tikoo2009-03-261-0/+1
| | | | | | | | | | inode_ctx_get was being passed a xlator_t type that was initialized to NULL resulting in a EINVAL return from glusterfs_fstat. Reported on gluster-devel Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* posix_unlink - open/unlink/close only regular filesAnand V. Avati2009-03-261-7/+10
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Enhancements to distribute selfhealAnand V. Avati2009-03-263-51/+117
| | | | | | | | | | - create missing directories instead of creating linkfiles when entry missing on hashed subvol - detect cases where there are dirs and linkfiles for a name and make them all dirs Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* make the location of the mount utility tunable at configure timeCsaba Henk2009-03-262-1/+7
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Fixed typo in warning string in afr.cVikas Gorur2009-03-261-1/+1
| | | | | | Fixed typo. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Changed the gf_log warning for return of null via CALLOC from 'old' to 'newdata'Bharat Shetty Barkur2009-03-261-1/+1
| | | | | | Fixed the warning message to be more clearer for return of the null by CALLOC, by changing old to newdata. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* fix to rm of large file blocking other operations on the same directory ↵Raghavendra G2009-03-241-0/+15
| | | | | | | | | | | | | containing file (ref: rt #779) posix_unlink follows the below procedure to avoid client noticing delay during unlink of large file 1. open file 2. unlink file 3. stack_unwind 4. close file Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Made self heal logic more precise.Vikas Gorur2009-03-241-22/+233
| | | | | | | | | Discard earlier patch sent for the same error. This patch fixes it more comprehensively. This solves the spurious split-brain seen by many users. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* dht memory leak fixRaghavendra G2009-03-241-1/+1
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* fixes crash in write-behindAmar Tumballi2009-03-221-2/+3
| | | | | | | in wb_flush, there was a chance that wb_process_queue() was called with NULL frame, which causes crash. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* when the both channels in client protocol is disconnected, fd's are marked ↵Amar Tumballi2009-03-211-35/+64
| | | | | | | | | as bad patch solves the problem of fds being valid even in the case of server disconnection, which causes operations on wrong fd when server comes back up. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* fixes issue of hashing to wrong subvolumes in case when a subvolume is downAmar Tumballi2009-03-211-2/+2
| | | | | | | When a hashed subvolume is down, variable 'subvol' was NULL, but was sent to itransform. This patch solves this, and readdir is sent to proper subvolume now. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* fixed sys_<fops> related warnings. (on mac os x and opensolaris)Amar Tumballi2009-03-193-3/+4
| | | | | | The fix in posix will fix 'unresolved' symbol errors in Mac/Solaris/FreeBSD Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* dht_layout_dir_cmp - if xattr is missing, it is an error only if cached ↵Anand V. Avati2009-03-191-11/+18
| | | | layout has entry for that subvolume.
* Add return after STACK_UNWINDShehjar Tikoo2009-03-181-0/+2
| | | | | | | | We must add a 'return' after a STACK_UNWIND due to a stub creation failure, because if we dont, we'll end up adding a NULL stub to the worker thread request queue. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Moving few translators which are not well tested, are in beta stage to ↵Amar Tumballi2009-03-187-7/+7
| | | | | | | | | | | | | 'testing/' directory. This way, users will be aware which are in 'beta' stage, and we can keep on adding new translators (if any) seemlessly to stable codebase and once tested can move them to proper places. To use these translators, everyone will have to prefix 'testing/' to existing type of translator (in volumefile) Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* ib-verbs recv-size and send-size argument takes SIZET arguments now.Amar Tumballi2009-03-182-11/+31
| | | | | | | With this patch, to specify recv-size and send-size of ib-verbs to <n>KB, we need not give the option as integer value of 'n * 1024' value. This is neater to do deployments. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* afr data self heal bug fixAmar Tumballi2009-03-181-3/+3
| | | | | | fixes the issue of corrupting self-healed copy in AFR Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Merge branch 'master' of ssh://avati@git.sv.gnu.org/srv/git/glusterAnand V. Avati2009-03-170-0/+0
|\
| * write behind preserves order of fops with respect to writesRaghavendra G2009-03-121-404/+947
| | | | | | | | | | | | | | - the execution order of fops like read, stat, fsync, truncate etc whose results are affected by writes, are preserved. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* | IO-threads Cleanup: Remove useless data structures.Shehjar Tikoo2009-03-172-109/+0
| | | | | | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* | IO-threads Cleanup: Clean-up request scheduling and queueing interface.Shehjar Tikoo2009-03-171-216/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch does two things: 1. Cleans up the request scheduling and queueing interface so that all fops only need to call iot_schedule and not iot_queue and in some cases iot_schedule. 2. Till now, we've had open and create calls go through the main glusterfsd thread when sending open and create fops. This patch makes them also go through the worker threads. But since the open and creates requests would not be called with a valid inode number in the loc_t, these requests will get assigned to the worker at index 0. This will be fixed RSN, when we introduce various techniques of distributing the inodes(..not requests..) over the worker threads. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* | IO-threads Cleanup: Change workers list to dynamically allocated arrayShehjar Tikoo2009-03-172-28/+51
| | | | | | | | | | | | | | | | | | | | Worker threads were represented as a list in iot_conf_t which made us traverse the list of workers in order to decide which thread gets the request. Now we represent the workers as a dynamically allocated array so that we can just index into the array to schedule the file. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* | IO-threads Cleanup: Change request queue into a struct list_headShehjar Tikoo2009-03-172-24/+20
| | | | | | | | | | | | | | | | This patch changes the per-thread request queue from a custom circular linked list, into the standard list.h list which is easier to understand and has a cleaner interface. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* | Add system call abstraction layerVikas Gorur2009-03-176-45/+663
| | | | | | | | | | | | | | | | | | - syscall.c provides platform-independent system calls - previous code for this from compat.c removed - posix xlator uses new functions from syscall.c - solaris_flistxattr added to compat.c Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* | write behind preserves order of fops with respect to writesRaghavendra G2009-03-131-404/+947
| | | | | | | | | | | | | | - the execution order of fops like read, stat, fsync, truncate etc whose results are affected by writes, are preserved. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* | implement forget for cluster/unifyBasavanagowda Kanur2009-03-131-0/+18
| | | | | | | | | | | | inode_ctx_put() would set a list allocated on heap and would not be free()ed anywhere. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>