| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Change-Id: Ib6718da3ecdb4e0fdad0d6855f46c18d8287af41
|
|
|
|
|
|
|
|
| |
Signed-off-by: Raghavendra G <raghavendra@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 2525 ([glusterfs-3.1.3qa8]: inode leak in rdma)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2525
|
|
|
|
|
|
|
|
|
|
| |
Thanks to Emmanuel Dreyfus for sending out the fix.
Signed-off-by: shishir gowda <shishirng@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 3170 (Uninitialized mutex and cond in io-threads)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3170
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When two application threads share an open dir fd (DIR *) and issue
readdirs, storage/posix will receive separate readdir fops in separate
threads in parallel. This has two-fold issues
1. In the following pair of operations -
entry = readdir(dir)
and
strcpy (gf_dirent->name, entry->d_name)
@entry is a static buffer in libc which can get reused by another thread
to get filled with a longer name. This can cause the second operation
to overflow the buffer as the allocation was for the smaller name.
2. In the following pair of operations -
seekdir (dir, offset)
and
entry = readdir(dir)
If two threads are executing these sequence in parallel in separate
threads, then one of them will end up reading wrong/unexpected entries.
It would be sufficient to fix 1. by using readdir_r but that still keeps
the second race open. Hence the patch moves all the set of operations to a
locked region which solves both races.
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 3171 (Crash in server)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3171
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
Signed-off-by: Vijay Bellur <vijay@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 2473 (Support for volume and directory level quota)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2473
|
|
|
|
|
|
|
|
|
|
|
| |
so, there is no need to do a 'setxattr()' after entry creation, which could now
fail due to ACL on server side.
Signed-off-by: Amar Tumballi <amar@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 3164 (set xattr keys while entry creation)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3164
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, we are writing 4096 bytes of value variable to the volinfo file
irrespective of its lenght, thus tampering with the volinfo file structure.
Signed-off-by: Junaid <junaid@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 3154 (glusterd fails to restart)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3154
|
|
|
|
|
|
|
|
|
|
|
|
| |
when the code path enters the 'subvol_filled()' case, local->params is set,
which contains the 'gfid-req' value, but the linkfile creation was not
checking for its existance.
Signed-off-by: Amar Tumballi <amar@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 3159 (mknod (linkfile creation) with no 'gfid-req' key)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3159
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since we moved to a single socket connection b/w client and server,
inherting connection state is unnecessary and can sometimes be
dangerous when clients reconnect even before the server detects
a socket error on the old connection.
Dirty detail: This reassociation results in 'ref count' not decreasing
in tandem with the connection disconnects. This results in a resource
leak.
Signed-off-by: Krishnan Parthasarathi <kp@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 3104 (Self-heal does not work in dis-rep!)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3104
|
|
|
|
|
|
|
|
|
|
| |
so posix-acl xattrs gets rebalanced too.
Signed-off-by: Amar Tumballi <amar@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 3069 ('gluster rebalance' doesn't preserve any of the extended attributes of the migrated file)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3069
|
|
|
|
|
|
|
|
|
| |
let the race get arbitrated at the dst_hashed subvolume.
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 2522 ([glusterfs-3.1.3qa8]: rm -rf shows invalid argument)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2522
|
|
|
|
|
|
|
|
|
|
|
|
| |
detect a race in rename between two clients by checking for
reassigned gfid or presence of dir when not expecting.
checks not necessary for rename of files.
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 2522 ([glusterfs-3.1.3qa8]: rm -rf shows invalid argument)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2522
|
|
|
|
|
|
|
|
| |
Signed-off-by: Amar Tumballi <amar@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 2053 (We need to support the standard *nix 'logrotate' for server and client log files.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2053
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
currently when a file gets migrated, the extended attributes of the
files are getting lost (which should be treated as data-loss).
Change-Id: I7068e6b67e614f2016e6eae92c247990ae01e74a
Signed-off-by: Amar Tumballi <amar@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 3069 ('gluster rebalance' doesn't preserve any of the extended attributes of the migrated file)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3069
|
|
|
|
|
|
|
|
| |
Signed-off-by: Shehjar Tikoo <shehjart@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 3039 (NFS RPC leaks memory in client connection creation on showmount -e)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3039
|