summaryrefslogtreecommitdiffstats
path: root/xlators
Commit message (Collapse)AuthorAgeFilesLines
* protocol/client: use translated flags in protocol/client open and create fopsAnand Avati2009-07-071-2/+2
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* write-behind: set default window-size to 1MB.Raghavendra G2009-07-071-1/+2
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* use fuse_reply_iov() in fuse_readv_cbkBasavanagowda Kanur2009-07-071-0/+4
| | | | | | | | | | | | changes come in two places. configure.ac - define HAVE_FUSE_REPLY_IOV if fuse_reply_iov is available in libfuse. mount/fuse - use fuse_reply_iov() in place of fuse_reply_vec(), if HAVE_FUSE_REPLY_IOV is defined. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* filter: use O_ACCMODE for checking file access modes.Raghavendra G2009-07-071-3/+6
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* read-ahead: use O_ACCMODE for checking file access modes.Raghavendra G2009-07-071-2/+2
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* write-behind: Use O_ACCMODE while checking for access modes.Raghavendra G2009-07-071-2/+2
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* Set timestamps properly when creating missing entries.Vikas Gorur2009-07-061-3/+37
| | | | | | | In AFR self-heal set timestamp of a freshly created missing entry to that of the source entry. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* cluster/afr - replace ZR_FILENAME_MAX by NAME_MAXBasavanagowda Kanur2009-07-061-4/+4
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* cluster/unify - replace ZR_FILENAME_MAX by NAME_MAXBasavanagowda Kanur2009-07-062-14/+14
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* protocol/server - replace ZR_FILENAME_MAX by NAME_MAXBasavanagowda Kanur2009-07-061-7/+7
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* protocol/client - replace ZR_FILENAME_MAX by NAME_MAXBasavanagowda Kanur2009-07-061-1/+1
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* storage/bdb - replace ZR_FILENAME_MAX by NAME_MAXBasavanagowda Kanur2009-07-061-2/+2
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* storage/posix - replace ZR_FILENAME_MAX by NAME_MAXBasavanagowda Kanur2009-07-061-2/+2
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* Modified mount.glusterfs to print usage in case of no mountpoint provided ↵Harshavardhana Ranganath2009-07-061-20/+47
| | | | | | and "-o" options to be agnostic of their position. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* performance/write-behind - bug fix in open() and create().Basavanagowda Kanur2009-07-021-1/+5
| | | | | | | | open() & create() calls should reset frame->local to NULL. bz# 104 Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* server protocol forget cleanupAmar Tumballi2009-07-011-71/+4
| | | | | | | | | as client now doesn't send forget at all to server, it should take care of forgetting the inode when there is a successful unlink and rmdir fops. also cleaned up unwanted forget fop's code. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* cleanup client_forgetAmar Tumballi2009-07-012-179/+2
| | | | | | | | | | | upon detailed inspection of 'forget' behavior, it became evident that forgets from client should not goto server side, as server keeps its own purging mechanism to forget its inodes. if client sends all forget to server, many highly used required inodes may get freed up (it will surely effect io-cache buffers on server side) Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* fuse 2.8 support for xlator/fuseHarshavardhana2009-07-012-0/+23
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* build warning fixesAmar Tumballi2009-06-301-2/+2
| | | | | | integer typecast warnings fixed Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* enhancement in write-behindAmar Tumballi2009-06-301-18/+22
| | | | | | | | | Write calls should not be pushed to background only when the mandatory locking is enabled, in all other cases (eg: O_SYNC, O_DIRECT etc), we should not be 'caching' any data, but the calls can be pushed to the background. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* client_xattrop: use dict_allocate_and_serialize during serializing xattrRaghavendra G2009-06-301-10/+7
| | | | | | | | - though the previous commit fixes bug #29, this patch fixes bugs arising in similar situations where xattrop is initiated by xlators other than afr. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* cluster/afr - use different dictionaries for sending xattrop requests to ↵Basavanagowda Kanur2009-06-301-24/+50
| | | | | | | | | | | | | | | | each of the subvolume - This patch fixes bug #29. - Using separate copies of dictionaries also eliminates a potential bug in a setup consisting of afr with a posix and client, each having io-threads on top as children. Since posix_xattrop after performing required operations on the xattr array passed in dictionary, sets the result at the same key and in the same dictionary passed as input argument, there can be race conditions where in the results of the operation on posix-child can be sent to the other child as input argument for xattrop, which ofcourse is wrong. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* Fix some trivial typos.Erick Tryzelaar2009-06-291-1/+1
| | | | | | | I noticed that there were some minor spelling mistakes/typos in some of the source files. This patch fixes the ones I've found. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* Added new options for log-server and log-server-portHarshavardhana Ranganath2009-06-291-2/+16
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* version check between client/server made more specific to protocol only.Amar Tumballi2009-06-292-9/+9
| | | | | | | | | This patch is a step towards giving compatibility between the versions of GlusterFS. Now onwards, the protocol-version won't depend on release versions. In general, multiple glusterfs versions can have common protocol-version. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* dht_readdir_cbk: use stat attributes in the READDIRPLUS dirents toAnand V. Avati2009-06-261-22/+21
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* rename dht_first_up_child to dht_first_up_subvolAnand V. Avati2009-06-262-2/+3
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* posix_readdir: fill stat structure into dir entryAnand V. Avati2009-06-261-0/+23
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* mount script to take arguments like nfsAmar Tumballi2009-06-241-17/+34
| | | | | | | | | | | | | | | | | Ref: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=37 earlier instead of path, it used to take port number, which is an option (-o server-port=<port>), now. new syntax is bash# mount -t glusterfs <hostname>:<path/key> [mountpoint] [This patch is backward compatible with earlier syntax] bash# mount -t glusterfs <hostname>:<port> [mountpoint] Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* server-protocol: interpret the 'op' value properly when a packet is received.Amar Tumballi2009-06-231-4/+3
| | | | | | | | | Ref: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=35 The check done earlier was not handling the case when a 'op' is == MAX_VALUE (which is not defined), and used to skip to the next array (like gf_mops[MAX] == gf_cbks[0]) Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* check if the 'key' is the volume file name itself.Amar Tumballi2009-06-231-14/+34
| | | | | | | | With this patch, one can fetch any volumefile which is not pre-defined in volume file with 'option' in server protocol volume, instead clients can fetch the volume files based on the key name itself [From the confdir only] Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* mount.glusterfs.in correctness in case of duplicate mountAmar Tumballi2009-06-231-2/+2
| | | | | | | | mount.<fstype> script/program should return success in case when it finds duplicate mounts. It was returning failure earlier. Someversions of automount programs had issues with this behavior. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* Fix typos in my previous commit 6010e2a4eCsaba Henk2009-06-231-2/+2
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* fuse: instead of having a fixed option list, assemble it using ↵Csaba Henk2009-06-221-56/+40
| | | | | | | | "fuse_opt_add_arg" This makes it easier to adjust the option list, and also reduces redundancy. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* Avoid accessing local unconditionally in trash_common_*_cbk functions.Vijay Bellur2009-06-221-0/+8
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* local->loc should be filled in dht-mknod()Amar Tumballi2009-06-181-0/+9
| | | | | | | local->loc should be properly filled while creating a linkfile. otherwise this causes the segfault in underlying volume layer (mostly client-protocol). Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* making dht and nufa's 'min-free-disk' option to take both percent and disk-sizeAmar Tumballi2009-06-184-38/+90
| | | | | | | | | | | Originally from Paul Rawson <plrca2@gmail.com> http://patches.gluster.com/patch/391/ : patch re-submitted with patching guidelines. cluster/distribute, and cluster/nufa uses new option PERCENT_OR_SIZET for its option 'min-free-disk'. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* change the log level of disk full message in dht-diskusageAmar Tumballi2009-06-181-3/+3
| | | | | | | | the current msg is getting printed in warning level. Instead changed it to debug, as the msg specific each node being full is already getting printed in higher priority, hence this msg looks excessive. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* change ha-statfs() to handle the case of loc->inode being NULLAmar Tumballi2009-06-172-27/+44
| | | | | | | | | | This fix is needed in ha_statfs(), as the current code doesn't handle the case of loc->inode being NULL, which is a valid case in statfs() [Remember its stateless call]. This was causing 100% disk full logs in distribute or nufa as the logic of checking whether the subvolumes have enough disk space on them used to fail. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* client: Replace saved_fds dict with listShehjar Tikoo2009-06-152-158/+177
| | | | | | | | | | | Thhie change removes a huge inefficiency in file open path where every open resulted in dictionary operations in order to let the client maintain a list of fd_t's being used over a particular client context. Resolves: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=16 Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* libglusterfs: Turn fd-table O(1)Shehjar Tikoo2009-06-151-16/+16
| | | | | | | | | This commit reduces CPU usage of gf_fd_unused_get drastically by making it O(1) instead of O(n). Related to: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=16 Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* write-behind: fix memory corruptionRaghavendra G2009-06-151-0/+1
| | | | | | | | - wb_sync did not set local = NULL after stack_wind. It also used to free local if its not NULL as part of cleanup process. Hence there was a double free in STACK_DESTROY done in wb_sync_cbk. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* write-behind: check for memory allocation failures and take appropriate actionRaghavendra G2009-06-151-78/+434
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* Do stat to check mode of the export directory in storage/posix.Vikas Gorur2009-06-151-1/+1
| | | | | | | Doing an lstat means init fails if the export directory is a symlink pointing to a directory. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* io-cache: fix warning by initializing conf = NULLAnand V. Avati2009-06-151-1/+1
|
* read-ahead: fix warning by initializing conf = NULLAnand V. Avati2009-06-151-1/+1
|
* strict check of extended attribute flags while opening a striped fileAmar Tumballi2009-06-112-68/+223
| | | | | | | | | | Added a fd_ctx structure for stripe, which takes care of understanding the extended attribute flags, and opening the right blocks in order (to make sure the read/write operations happen in order). Helps to handle situations like accidentally adding subvolumes to stripe, etc Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* stripe: don't allow entry modification operations when any node is downAmar Tumballi2009-06-111-5/+13
| | | | | | | | if entry modification operations (like create/mknod/rename) happen when there is a node down, there will be inconsistency in striped fs. rather than curing it, prevent the issue from happening Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* stripe cleanupAmar Tumballi2009-06-113-2621/+2759
| | | | | | | | | | | | | stripe.c: indentation cleanup log messages cleanup coding standard guidelines removed ERR_ABORTs stripe.h moved the structure definitions here Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* io-cache: handle memory allocation failuresRaghavendra G2009-06-114-65/+373
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>