summaryrefslogtreecommitdiffstats
path: root/libglusterfs
Commit message (Collapse)AuthorAgeFilesLines
* while validating options, make sure memory accounting is init()ed.Amar Tumballi2011-08-201-0/+9
| | | | | | | | Change-Id: Ifad5827c6b022de7d84e081ce77effda0c245a13 BUG: 3415 Reviewed-on: http://review.gluster.com/277 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* libglusterfs: Fix a crash in gluster volume set helpVijay Bellur2011-08-202-1/+9
| | | | | | | | Change-Id: I585e8e685f5c23b6fa632ef708adf2e349ba6704 BUG: 3415 Reviewed-on: http://review.gluster.com/274 Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* option validation: further fixesAnand Avati2011-08-191-4/+3
| | | | | | | | | | fixes in option handling changes Change-Id: I0a44cdb088e3f08cd43d583a580736d0903fa88c BUG: 3415 Reviewed-on: http://review.gluster.com/261 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* xlator options: revamp xlator option validation/reconfigure codeAnand Avati2011-08-187-1505/+1391
| | | | | | | | | | | | | | | | | - move option handling to options.c (new file) - remove duplication of option validation code - remove duplication of gf_log / sprintf - get rid of xlator_t->validate_options - get rid of option validation in rpc-transport - get rid of validate_options() in every xlator - use xlator_volume_option_get to clean up many functions - introduce primitives to init/reconfigure option types Change-Id: I51798af72c8dc0a2b9e017424036eb3667dfc7ff BUG: 3415 Reviewed-on: http://review.gluster.com/235 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Build fix for NetBSDEmmanuel Dreyfus2011-08-121-1/+13
| | | | | | | | Change-Id: Icb0163d61bfbd3bad520c06a655f80ec05fc3fb2 BUG: 2923 Reviewed-on: http://review.gluster.com/214 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* WORM: Write Once Read Many times xlator supportshishir2011-08-102-0/+22
| | | | | | | | | | | | This xlator will allow files to be opened for write in append mode only. Mount with --worm(glusterfs) or -o worm (mount) option to enable worm xlator Change-Id: I1be02fcf2aee2182ea2c66b514357918136fabeb BUG: 3166 Reviewed-on: http://review.gluster.com/23 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Change Copyright current yearPranith Kumar K2011-08-1064-64/+64
| | | | | | | | Change-Id: I2d10f2be44f518f496427f257988f1858e888084 BUG: 3348 Reviewed-on: http://review.gluster.com/200 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-101-0/+9
| | | | | | | | | | | | | | | | | | 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/195 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Shishir Gowda <shishirng@gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* LICENSE: s/GNU Affero General Public/GNU General Public/Pranith Kumar K2011-08-0667-201/+201
| | | | | | | | Change-Id: I3914467611e573cccee0d22df93920cf1b2eb79f BUG: 3348 Reviewed-on: http://review.gluster.com/182 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Replace mktemp(3) with mkstemp(3).Sachidananda Urs2011-08-051-1/+1
| | | | | | | | | | | | | | | Man page states: Some implementations follow 4.3BSD and replace XXXXXX by the current process ID and a single letter, so that at most 26 different names can be returned. Since on the one hand the names are easy to guess, and on the other hand there is a race between testing whether the name exists and opening the file, every use of mktemp() is a security risk. The race is avoided by mkstemp(3). Change-Id: Ida95403b55024ecd07ef811a0835e01a9a7f092b BUG: 3331 Reviewed-on: http://review.gluster.com/163 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* IOBUF: Bring in variable iobuf supportshishir gowda2011-07-315-106/+273
| | | | | | | | | | | Rebasing Raghavendra's patch to master Change-Id: Ie7a0c9a7b8e73cfe48c4573a5153460d5126208e BUG: 2472 Reviewed-on: http://review.gluster.com/12 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* libglusterfs: Bring in os_daemon_* routines to replace modified FreeBSD codeVijay Bellur2011-07-283-3/+103
| | | | | | | | Change-Id: I41f4635b1b75adb6d22e2e325b99941f8d7a0b42 BUG: 3206 Reviewed-on: http://review.gluster.com/100 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* Glusterd: Remove dependency on AI_ADDRCONFIG for AF_UNSPECGaurav2011-07-271-1/+0
| | | | | | | | | Change-Id: I0a22b2cc5a0ea1a57633fddabad54aca7b3d4e86 BUG: 2456 Reviewed-on: http://review.gluster.com/102 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Csaba Henk <csaba@gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* glusterfsd: check for process mode before performing mountKaushal M2011-07-211-0/+1
| | | | | | | | | | | | | create_fuse_mount() now checks if it is a client process before performing mount. If not a client process, it returns an error. Added changes suggested Change-Id: If8548ad60d345bb8cd09686ceed0d83522799761 BUG: 2469 Reviewed-on: http://review.gluster.com/5 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* debug/io-stats: allow log-level to be set to INFORaghavendra Bhat2011-07-201-1/+1
| | | | | | | | Change-Id: Ieba6591b0641dcb7dad724c1d8199dc5e91b6bfd BUG: 3198 Reviewed-on: http://review.gluster.com/43 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Glusterd: IPV6 support for glusterfs.Gaurav2011-07-142-0/+42
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2456 (IPv6 support for glusterd) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2456
* mgmt/Glusterd: Implementation volume set help/help-xmlKaushik BV2011-07-122-3/+110
| | | | | | | | Signed-off-by: Kaushik BV <kaushikbv@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2041 (volume set help option) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2041
* afr/stripe: collect pathinfo xattrs from all childsVenky Shankar2011-07-122-0/+98
| | | | | | | | Signed-off-by: Venky Shankar <venky@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3046 (getxattr for afr should returns realpath from all childs) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3046
* libglusterfs/logging: Added functions to set sys-log-level.Junaid2011-07-112-3/+12
| | | | | | | | Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3044 (provide option to set syslog loglevel through CLI) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3044
* fd: put the fd back to fd_mem_pool of inode table instead of freeing in case ↵Raghavendra Bhat2011-07-111-1/+1
| | | | | | | | | | of failure Signed-off-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3103 (memleak in inode table creation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3103
* libglusterfs/syncop: add more functionsAmar Tumballi2011-07-112-7/+59
| | | | | | | | | | do proper 'ref's and implement 'write()' and 'ftruncate()' Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3081 (synchronous operations should be enhanced) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3081
* glusterfs: add --acl command line option to load ACLs on the client sideAnand Avati2011-07-082-0/+24
| | | | | | | | | also set the turn off filtering of ACL keys in FUSE xattr FOPs. Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2815 (Server-enforced ACLs) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2815
* byte-order: htole*/letoh* and htobe*/betoh* for forced endian conversionsAnand Avati2011-07-081-6/+166
| | | | | | | Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2815 (Server-enforced ACLs) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2815
* inode table: avoid memleak by freeing the allocated structures incase of failureRaghavendra Bhat2011-07-012-33/+28
| | | | | | | | Signed-off-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3103 (memleak in inode table creation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3103
* spelling corrections in glusterfs codeVishwanath2011-06-231-14/+14
| | | | | | | | Signed-off-by: Vishwanath S Bhat <vishwanath@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2903 (Last spelling errors in source code) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2903
* libglusterfs: added syncop_* functionsAmar Tumballi2011-06-232-2/+260
| | | | | | | | | | | | * implemented open,close,readv,writev,listxattr,create,unlink * also fixed a dictionary ref issue with lookup_cbk Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3081 (synchronous operations should be enhanced) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3081
* CLI : Display possible options in proper format.Gaurav2011-06-191-4/+12
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2598 (Volume access option suceeds with any string value) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2598
* stack: make process state dump more debug friendlyAnand Avati2011-06-192-0/+30
| | | | | | | | | | store points of stack wind and unwind (function names) for each frame and dump them in process state dump Signed-off-by: Anand Avati <avati@gluster.com> BUG: 1059 (enhancements for getting statistics from performance translators) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1059
* logging: fill proper domain names at places where it is missingAmar Tumballi2011-06-165-72/+63
| | | | | | | | | | also changed some error messages where it was not explicit Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2346 (Log message enhancements in GlusterFS - phase 1) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2346
* build: fixes to work on solarisAmar Tumballi2011-06-162-0/+21
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3002 (build issues on solaris) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3002
* libglusterfs/call-stub: Allow unwinding of frames for rename during ↵Raghavendra G2011-06-161-2/+0
| | | | | | | | | | call_resume_unwind. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2697 (Quota: add-brick creates the size go awkward, though it was perfect earlier) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2697
* build warning fixesAmar Tumballi2011-06-162-1/+8
| | | | | | | | | | mainly fixes all the sockaddr related 'strict aliasing' warnings Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2550 (build warnings) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2550
* syncop: Modified to accept one 'non-frame' arg.Krishnan P2011-06-162-7/+44
| | | | | | | | | | | | | Earlier syncops used to accept one argument which was a call frame to carry out the fops synchronously. Now we have two args passed to synctask function, one call frame and another void pointer. Signed-off-by: Krishnan Parthasarathi <kp@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3033 (Changes to replace-brick and syntask interface.) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3033
* rbthashtable: implement traverser procedure.Raghavendra G2011-06-142-2/+55
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 1059 (enhancements for getting statistics from performance translators) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1059
* libglusterfs/inode.c: Add version of inode_path which can be called holding ↵Raghavendra G2011-06-142-54/+75
| | | | | | | | | | inode->lock. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 1059 (enhancements for getting statistics from performance translators) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1059
* libglusterfs/common-utils: Added gf_uint64_2human_readable function.Junaid2011-06-142-0/+38
| | | | | | | | | | | This function converts the given number to its corresponding representation in KB, MB, etc. Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2829 (Display the quota limit as it is configured) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2829
* DHT: check for mis-matching user xattrsshishir gowda2011-06-142-0/+21
| | | | | | | | Signed-off-by: shishir gowda <shishirng@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2717 (Detect user_xattr mismatches for dir's) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2717
* fix multiple transport portmap issues in client handshakeAmar Tumballi2011-06-081-0/+1
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2294 (Currently there is no way through cli to make a volume listen on both the transports (socket/rdma)) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2294
* syncop: Increase stack size for deep call stack.Krishnan Parthasarathi2011-06-081-1/+1
| | | | | | | | | | | | pump performs a depth-first traversal of directories using the syncop stack and this necessitates a larger stack when handling deeper directory trees. Signed-off-by: Krishnan Parthasarathi <kp@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2489 (GlusterFS crashing with replace-brick) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2489
* glusterfsd: prevent giving '-s' option without '--volfile-id' optionAmar Tumballi2011-05-311-1/+1
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2934 (for glusterfs binary, -s option without --volfile-id will fail without any notice to user) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2934
* fuse: NetBSD portability fixesAnand Avati2011-05-301-3/+3
| | | | | | | | | | | | On NetBSD use libperfuse(3), rename umount2(2) as unmount(2), and skip inexistant /etc/mtab management. Thanks to: Emmanuel Dreyfus <manu@netbsd.org> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2923 (NetBSD port) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2923
* errno: NetBSD does not have EDOOFUSAnand Avati2011-05-301-0/+2
| | | | | | | | | | | Thanks to: Emmanuel Dreyfus <manu@netbsd.org> [avati@gluster.com: check for EDOOFUS instead of !NetBSD] Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2923 (NetBSD port) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2923
* rpc: use AI_ADDRCONFIG selectivelyAnand Avati2011-05-301-0/+4
| | | | | | | | | | | | | NetBSD does not have AI_ADDRCONFIG. This patch has a side effect: glusterfsd listens on IPv6 adresses only by default. Option transport.socket.bind-address in volume server-tcp must be used to listen on an IPv4 address. Thanks to: Emmanuel Dreyfus <manu@netbsd.org> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2923 (NetBSD port) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2923
* reimplement invocation of external programs with run APICsaba Henk2011-05-264-60/+7
| | | | | | | | Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2562 (invoke external commands precisely with fork + exec) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2562
* libglusterfs: add 'run' sub-lib for safe and convenient invocation of ↵Csaba Henk2011-05-264-3/+678
| | | | | | | | | | | | | | | | | | | | | | | external programs Summary: - arguments first collected, then the invocation happens with fork + exec - flexible specification of arguments (besides si{mp,ng}le argument addition, support for adding multiple of them at a time / specifying one with printf style formatting) [ ==> goodbye printf percentage soup when composing commands ] - single point of error check - simple command runs are done in just one line - support for redirection, popen(3) like functionality API is documented in details in libglusterfs/src/run.h Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2562 (invoke external commands precisely with fork + exec) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2562
* libglusterfs: clean up memory typesCsaba Henk2011-05-266-74/+15
| | | | | | | | | | Unify them in one header, weed out overlap. Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2562 (invoke external commands precisely with fork + exec) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2562
* cli log level command and per translator log levelVenky Shankar2011-05-201-21/+18
| | | | | | | | Signed-off-by: Venky Shankar <venky@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2714 (implement cli log level command) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2714
* upon daemonizing, wait on mtab update to terminate in parentCsaba Henk2011-05-191-0/+1
| | | | | | | | | | | | | | This fixes the race in between the mtab update attempts of mount and umount when we do a lazy umount right after mounting, in order to hide the given fs instance; yet this way we still avoid the deadlock of the fs and mount which we can hit if we wait unconditionally for the mtab update to terminate (cf. bz #511). Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2690 (race between mtab updates of mount and umount) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2690
* loc_t: add 'gfid' and 'pargfid' fieldsAmar Tumballi2011-05-032-1/+14
| | | | | | | | | | | | | | these fields are used mainly in case of selfheal path, where 'inode->gfid'||'parent->gfid' is not yet set. These fields in 'loc' will have lower precedence than 'inode->gfid' in client protocol. Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2346 (Log message enhancements in GlusterFS - phase 1) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2346
* use "geo-replication" all over as the official name of this featureCsaba Henk2011-04-151-0/+1
| | | | | | | | | | Use GEOREP macro if you want to refer to the feature in code. Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2757 (refactory gsync/gsyncd/syncdaemon/whatever to geo-replication) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2757