summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* common-utils: introduce new macro GF_VALIDATE_OR_GOTO_WITH_ERRORRaghavendra G2009-09-081-0/+9
| | | | | | | | | | - the existing macro GF_VALIDATE_OR_GOTO sets errno to EINVAL which may not be appropriate in all cases. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 221 (stat prefetch implementation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221
* stat/prefetch: free cache if it cannot be put into context of fdRaghavendra G2009-09-081-0/+1
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 221 (stat prefetch implementation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221
* performance/stat-prefetch: introduce sp_fd_ctx_t to hold context of fdsRaghavendra G2009-09-082-11/+144
| | | | | | | | | | | | | | - we need following extra members along with cache 1. basename of path on which fd is opened. This is necessary to search for cached entry in fd based fops. 2. inode corresponding to dirname of path on which fd is opened. This is necessary to get cache where entry corresponding to file on which fd is opened. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 221 (stat prefetch implementation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221
* performance/stat-prefetch: implement sp_chmod.Raghavendra G2009-09-081-0/+34
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 221 (stat prefetch implementation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221
* performance/stat-prefetch: implement sp_readdir.Raghavendra G2009-09-082-3/+169
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 221 (stat prefetch implementation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221
* performance/stat-prefetch: implement sp_lookup.Raghavendra G2009-09-082-0/+314
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 221 (stat prefetch implementation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221
* rewriting stat-prefetch translatorRaghavendra G2009-09-086-499/+177
| | | | | | | | | | | - stat-prefetch aims to optimize operations like 'ls -l' where a readdir is immediately followed by stat calls on each of the directory entry read. More details on design can be found in doc/stat-prefetch-design.txt Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 221 (stat prefetch implementation) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221
* mount/fuse: Include missing header files in Makefile.amVijay Bellur2009-09-071-1/+3
| | | | | | | | | | Compilation fails in a new glusterfs tarball due to missing fuse headers. Including them in Makefile.am. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 244 (compilation after make dist fails because of missing headers) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=244
* ib-verbs: handle failure of ibv_create_qp gracefully.Raghavendra G2009-09-021-0/+3
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 217 (crash in ib_verbs_create_qp) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=217
* libglusterfsclient: Compare compcount with path not maxentryShehjar Tikoo2009-09-021-0/+1
| | | | | | | | | | | | | | When searching for an exact entry we need to compare the component counts in the candidate VMP and the count in the path being searched. This is opposite to the current situation where we compare the component count in VMP and the component count in maxentry, which will always be same. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 209 (VMP parsing through fstab has issues) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209
* libglusterfsclient: Enhance VMP searching logicShehjar Tikoo2009-09-021-1/+3
| | | | | | | | | | | | | Another attempt to enhance searching for VMP entries. There was a problem of returning the longest prefix match from all the VMPs without checking whether the number of matched components were same as the number of components in the candidate VMP. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 209 (VMP parsing through fstab has issues) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209
* booster: Support backward compatible optionsShehjar Tikoo2009-09-021-0/+6
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 209 (VMP parsing through fstab has issues) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209
* core: Fix build failure on non-Linux systemsShehjar Tikoo2009-09-021-2/+8
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 230 (Bulid fails on Solaris and Mac OS due to Linux specific flags) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=230
* libglusterfsclient: don't use pointer returned by basename while freeing ↵Raghavendra G2009-09-021-5/+5
| | | | | | | | | allocated memory. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 228 (Segmentation fault in glusterfs_getxattr) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=228
* fuse: protocol fix: fix bogus parsing of MKDIR messageCsaba Henk2009-09-011-1/+1
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 226 (mkdir after rm of regular file of same name fails) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=226
* changed booster fstab to parse the arguments same as mount.glusterfsAmar Tumballi2009-08-201-2/+2
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 209 (VMP parsing through fstab has issues) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209
* protocol/client: 'connecting' event is properly notified.Amar Tumballi2009-08-202-4/+23
| | | | | | | | | | | when there are no servers available to client, and transport init is not successful, send 'connecting' event once to parent so it doesn't hand in there. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 224 (Client hangs if none of the servers are up) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=224
* in server_rename if we do_path_lookup on the newloc and parent directory is ↵Krishna Srinivas2009-08-191-24/+28
| | | | | | not found, the server crashes. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* TAKE2[PATCH BUG:213 1/1] Support for Process State DumpVijay Bellur2009-08-1916-8/+983
| | | | | | | | | Support for process state dump. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 213 (Support for process state dump) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=213
* Merge branch 'fusilli' of /data/git/users/csaba/glusterfs-fusilliAnand V. Avati2009-08-1719-1016/+4146
|\ | | | | | | | | Conflicts: xlators/mount/fuse/src/fuse-bridge.c
| * fuse: a compat fix for older protocol revisionsCsaba Henk2009-08-161-1/+4
| |
| * fuse: optimize request iov aligment for writesCsaba Henk2009-08-161-12/+53
| | | | | | | | Idea by Avati.
| * fuse: switch off direct I/O mode if big writes are supportedCsaba Henk2009-08-143-3/+11
| |
| * update user guide wrt. FUSE requirementsCsaba Henk2009-08-121-8/+34
| |
| * bring in fusermountCsaba Henk2009-08-129-8/+1454
| |
| * fuse: add proper mounting support, based on libfuse routinesCsaba Henk2009-08-124-42/+559
| |
| * fuse: move libfuse derived code over under contrib/Csaba Henk2009-08-126-45/+554
| |
| * upgrade FUSE protocol to 7.12 and add support for older versions of the protocolCsaba Henk2009-08-122-18/+115
| |
| * basic version of direct FUSE interface (ie. not relying on libfuse)Csaba Henk2009-08-126-989/+1472
| |
* | added log message when server fails to send the reply frameAmar Tumballi2009-08-171-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | As of now, if a frame submit fails on server, there are no logs, and clients will have missing frames (which leads to 'hangs'). Supporting situation like this very tricky without proper log messages. As a step to make our log message lean and meaningful, this log is important. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 190 (missing frames due to larger reply message size.. (ib-verbs)) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=190
* | libglusterfsclient: Sync access to VMP list on new entry additionShehjar Tikoo2009-08-171-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some weeks back, I'd separated the big lock into vmplock and mountlock. See commit 304e4274ca9b0339539581c5413e3339078c1182 in mainline. At that time, we did not have a solution to the problem of when to init the vmplist in a thread-safe manner, since there was no lock to protect the vmplock specifically, and that when libgf_vmp_map_ghandle was called inside glusterfs_mount so the "lock" was already being held. Now that we have separate mount and vmp locks, the accesses can be synced correctly. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 211 (libglusterfsclient: Race condition against vmplist in libgf_vmp_map_ghandle) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=211
* | libglusterfsclient: Enhance VMP search loggingShehjar Tikoo2009-08-171-6/+8
| | | | | | | | | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 210 (libglusterfsclient: Enhance logging) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=210
* | libglusterfsclient: Use components for VMP searchesShehjar Tikoo2009-08-171-21/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Till now, we've been doing a character by character comparison between a given path and the VMP, to search for the glusterfs handle for the given path. This does not work for all cases and has been a known bug. This commit changes the byte-by-byte comparison into a more accurate component based comparison to fix search failures. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 209 (VMP parsing through fstab has issues) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209
* | features/locks: Fix reverse logic in posix_lock_to_flockVikas Gorur2009-08-171-2/+2
| | | | | | | | | | | | | | | | | | if the lock's end point is LLONG_MAX, the corresponding struct flock's len must be 0. Previous code had LLONG_MAX and 0 reversed. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* | mount/fuse: Don't log setlk returning EAGAIN as a GF_LOG_ERROR.Vikas Gorur2009-08-171-2/+2
| | | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* | features/locks: Set the right log level in a few places.Vikas Gorur2009-08-172-13/+13
| | | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* | glusterfs log prints "TLA Revision" tag, remove it and reflect git insteadHarshavardhana Ranganath2009-08-171-3/+3
|/ | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* protocol/client: fixed registration of saved_fdsAnand Avati2009-08-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | In client_open_cbk, client_opendir_cbk the list_add_tail macros were invoked with wrong ordered arguments, causing the existing registered fd list to get unlinked from the saved_fds list. The effects of this is far fetched - when transport disconnects, open fds are no more marked bad as they are not reachable from the saved_fds list. After reconnection, resumed access on this fd causes reference to invalid fds on the server. It could appear in the form of 'unresolved fd' error, readdir happening on a file fd, files reading from other files, etc. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 192 (sefault in posix-readdir) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=192 BUG: 126 (Immediate segfault when used for rootfs) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=126 BUG: 173 ([ glusterfs 2.0.6rc1 ] - "server SEG fault") URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=173 BUG: 194 (Apache+Booster results in inconsistent download size using wget) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=194
* Removed BRANCH: tagAnand V. Avati2009-08-061-2/+2
|
* server-lookup: added path info from header to log messageAmar Tumballi2009-08-041-3/+4
| | | | | | | | | | | | in the previous commit, the path info was removed to prevent the segfault, which instead could have been provided from request header directly. More specific information is required for debugging, and hence adding the path log. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 189 (segfault in server-lookup) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=189
* dht_stat_merge - use the highest uid when ambiguousAnand Avati2009-08-041-2/+3
| | | | | | | | | When directories on different subvolumes have different ownerships, use the highest uid/gid till self-heal resolves the inconsistency Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 191 (random Permission denied errors) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=191
* add check for making sure 'fd' belongs to directory in posix-readdirAmar Tumballi2009-08-041-0/+7
| | | | | | | | | | | The root cause of this error is not found yet. But this check will make sure that there is no crash when the situation happens. Segfault can happen when a readdir() call comes over file's fd. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 192 (sefault in posix-readdir) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=192
* logging related bug fix in server_lookup()Amar Tumballi2009-08-041-4/+3
| | | | | | | | | | | | When 'dict_unserialize' failed, the log message was trying to print 'state->loc.path' and 'state->ino', which gets filled in later stages in flow. Caused segmentation fault when there was a failure. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 189 (segfault in server-lookup) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=189
* increased ib-verbs buffer sizeAmar Tumballi2009-08-041-2/+2
| | | | | | | | | | | | | Noticed that in few cases, where ib-verbs doesn't handle a bigger sized buffer to be sent across, which happens without problem in tcp. Caused frame losses in the case where server's reply msg was bigger, hence the msg got dropped at the server end. With this patch ib-verbs buffer size is fixed to 512KB. (4 x page-size) Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 190 (missing frames due to larger reply message size.. (ib-verbs)) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=190
* adding an option to mount.glusterfs for server failover to fetch volume files.Amar Tumballi2009-08-041-20/+32
| | | | | | | | | | | | With this option, 'single point of failure', in case of volfile server can be avoided Thanks to Cory Meyer <cory.meyer@gmail.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 185 (Request to support secondary volfile-server option in mount.glusterfs) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=185
* cluster/afr: inode-read: Check stat buf for NULL before attempting to set ↵Vikas Gorur2009-08-041-3/+4
| | | | | | | | | inode number. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 184 ([ glusterfs 2.0.6rc2 ] - Client Segfault while running fs-perf-test) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=184
* client-protocol: log messages at WARNING loglevel when client_bind on ↵Raghavendra G2009-07-312-2/+2
| | | | | | | | | privileged port fails. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 140 (use appropriate loglevel to log in case of failure to bind to privileged socket) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=140
* libglusterfsclient: Bind fd on fd creation code pathsShehjar Tikoo2009-07-312-3/+9
| | | | | | | | | | | | | | When an fd_t is fd_create'd, we need to call fd_bind on it to ensure that any fd_lookup on the inode gets us this fd. We're not doing this so translators like write-behind were not able to order path-based requests at all resulting in some fops like stat, which could be issued after a writev, overtaking a previous writev which is still being written-behind. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 179 (fileop reports miscompares on read tests) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=179
* libglusterfsclient: Invalidate iattr cache on readsShehjar Tikoo2009-07-311-4/+2
| | | | | | | | | | | Earlier we have invalidated the iattr cache on writes. Now we need to do so for reads also, so that we are not updating the iattr cache with 0-filled stat received from io-cache. Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 180 (fileop fails at chmod with stale file handle error over unfs3) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=180
* replicate: Return ino from first subvolume on inode creation fopsShehjar Tikoo2009-07-301-9/+28
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 177 (replicate: On file/dir creation, replicate returns inode from random subvolumes) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=177