| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Possible situation is a forget call which unref's the inode, and the
layout gets freed before we access it in stat.
By taking a ref before we call ctx get, the layout is going to be
persistent till we unref it.
Also use local call_cnt var instead of layout->cnt when wind is
involved
Change-Id: Ie04a7afd9e2c89cc14c08dd923d06c5f0193beb8
BUG: 3730
Reviewed-on: http://review.gluster.com/687
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If mkdir fails on a subvolume, layout is set taking into account
only the subvols where it was successful. stat does not trigger
selfheal, as its layout based.
Revalidate on directories needs to be sent to all subvols, to fix
the error, and not just on the layout.
Change-Id: Ia3ce2e5a042b2d55cddd7bd8cf31a94de6023234
BUG: 3793
Reviewed-on: http://review.gluster.com/688
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the read request, does not fall to the subvolume with the largest
file size set, then we never return the correct size. This leads to
clients seeing a truncated file error.
The work around is to wipe stat being returned as part of read call.
Change-Id: I4e76d09d7919fd0be616fe140e08f89a0dbcc444
BUG: 3774
Reviewed-on: http://review.gluster.com/682
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
|
|
|
|
|
|
|
|
|
|
| |
as posix layer itself sends inode numbers based on gfid now
Change-Id: I184d4598cf541eadb0471c39e598f14d6ac9390a
BUG: 3042
Reviewed-on: http://review.gluster.com/632
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I57fe8db82425a064ca01b23a47baca297c67560c
BUG: 3783
Reviewed-on: http://review.gluster.com/676
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
any child
Currently if no open is required on any child of replicate, we are
returning directly instead of unwinding and returning. This is leading
to the frame loss, which results in application hang. Unwind and then
return if no open is to be done on any child.
Change-Id: Ib59535b63751d9e98a4ceca39b4b73b14d850680
BUG: 3443
Reviewed-on: http://review.gluster.com/674
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
*) removed uuid_generate usage in pump and afr
*) filled the gfids for the fops which were sending no gfid in loc
Change-Id: Id6780da76c3ae18ae5130368b687ea026e338ac0
BUG: 3760
Reviewed-on: http://review.gluster.com/673
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I8a43b5fbe7a90344f490090df853d47b651bc0ff
BUG: 3760
Reviewed-on: http://review.gluster.com/672
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
inode
without which, the 1:1 mapping of inode from old graph to new graph
is not complete
Change-Id: Idea14bc65ff74aa13fc53ebe2caa50410ccefc44
BUG: 3770
Reviewed-on: http://review.gluster.com/658
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the rpc implementation of nfs suppose the transmission buffer list
is empty for the nfs server, -1 is being returned which is treated as
an error and the socket fd is closed to handle it. Because of this the
reply submission of the server will be failed. Thus if the transmission
buffer list is empty error should not be returned.
Change-Id: I42d0dada8fe0473daf4db085da10681d4926e1ae
BUG: 3765
Reviewed-on: http://review.gluster.com/671
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Improves alignment and width of columns in the output of "top
read-perf/write-perf".
Change-Id: I96904fb10e10c184473d5224fb09093721d93f88
BUG: 3719
Reviewed-on: http://review.gluster.com/649
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rotating geo-replication master/monitor log files from cli.
On invocation, the log file for a given master-slave session
is backed up with the current timestamp suffixed to the file
name and signal is sent to gsyncd to start logging to a new
log file.
Sample commands:
* Rotate log file for this <master>:<slave> session:
gluster volume geo-replication <master> <slave> log-rotate
* Rotate log files for all session for master volume <master>
gluster volume geo-replication <master> log-rotate
* Rotate log files for all sessions:
gluster volume geo-replication log-rotate
Change-Id: If801743e9f37bd282e68d262203141626ce77e55
BUG: 3519
Reviewed-on: http://review.gluster.com/653
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Csaba Henk <csaba@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fork'ing causes child to inherit the signal mask of the parent. Hence
executables invoked from glusterd will inherit glusterd's signal mask.
Thus, utilities like gsyncd will have some signals (SIG{USR1,USR2,..})
masked, which are needed for gsyncd log-rotate command to function
properly.
Change-Id: Id66d185c8497cd8947f32769fa7ea62dc34e1100
BUG: 2787
Reviewed-on: http://review.gluster.com/657
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Csaba Henk <csaba@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
stat returned in setattr_cbk can be cached by the kernel. Hence it is
always necessary that we return correct stat, which implies that setattr
should not be out of order with respect to write fops.
Change-Id: Iaac1c79545760ac77ba3eae1ac2fee9f4e446fb9
BUG: 3711
Reviewed-on: http://review.gluster.com/665
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We were passing the stbuf returned by the first child/index, which
can be different to the size/blocks returned by stat. This led to
applications viewing the file as being truncated.
The stbuf size needs to be the largest of all results, and blocks
the aggregation from all subvolumes. (similar to stat)
Change-Id: I0782f2d0d48b53c5c507a2b1fc62a6132a31ce12
BUG: 3774
Reviewed-on: http://review.gluster.com/664
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Id8cf3cbc8297b5f24f67c152d789b7c2ac299ccc
BUG: 3729
Reviewed-on: http://review.gluster.com/652
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
| |
Change-Id: Ib99f751d9404d9369944475bb0c70ec001857c94
BUG: 3767
Reviewed-on: http://review.gluster.com/661
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Ic7a7b344bc62bf4c78e092c34c4c9cb3e0ba6cdc
BUG: 3770
Reviewed-on: http://review.gluster.com/660
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
|
|
|
|
|
|
|
|
|
| |
Change-Id: I1d3b2028f1db7db32266827bd0ba9b2a73474e3e
BUG: 3770
Reviewed-on: http://review.gluster.com/659
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
| |
Removes a wrong and unneeded log message in afr-open.c
Change-Id: I682c9e1281867e6ccbed7099268e4015f9783ccd
BUG: 3443
Reviewed-on: http://review.gluster.com/648
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Pranith Kumar Karampuri <pranithk@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes self-heal of special files like device files, fifo files, socket files
etc. Does it by doing the following:
* Prevent setting of pending data xattr on a special file during entry self-heal
when a new file is created.
* Allow data self-heal to be started on all file types other than directories.
During data self-heal, for special files just erase pending xattrs, if those
xattrs were set by previous releases of glusterfs.
Change-Id: I1a36670b7287292d579b53852e25cdd452d55605
BUG: 3525
Reviewed-on: http://review.gluster.com/647
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Pranith Kumar Karampuri <pranithk@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I41e6f39c5d0621942a310f550250034fd520ec76
BUG: 3761
Reviewed-on: http://review.gluster.com/644
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
"count" key is not set if no brick in the volume (located across peers) is
running. Sending "count" even when zero bricks are running from originator
glusterd to client, simplifies "are all bricks down?" algo.
Change-Id: I3a8db48c4c61cd31ba96031638a3c3d26efd2887
BUG: 3553
Reviewed-on: http://review.gluster.com/641
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
if info
Change-Id: Ic4cd16618925656a12049f28f9b30bcac2242d4b
BUG: 2346
Reviewed-on: http://review.gluster.com/621
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Earlier we would wait until brick disconnect or 5s whichever was earlier,
before we move op sm from brick op stage to commit stage. This involves a race
where both the above mentioned events can happen 'concurrently' and result in
double free of the event context.
Change-Id: Ia369994448e71a052679d2373b8ab9177d56a541
BUG: 3700
Reviewed-on: http://review.gluster.com/626
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I895574dd6fa411784eb5282c799ccf3ff7c65625
BUG: 3747
Reviewed-on: http://review.gluster.com/635
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Afr needs to send the xattr_req without gfid so instead of modifying
the xattr_req that comes from parent xlators take a copy and then
modify.
Change-Id: I7ee9e941eb931d67f3c89feb664a257edd01803b
BUG: 3747
Reviewed-on: http://review.gluster.com/634
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I1904aa63d9365ebda3e979449454ac08db85d93d
BUG: 3747
Reviewed-on: http://review.gluster.com/633
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I9bbdfe79664c1339b66819a6c7ea4b7698beb5c6
BUG: 3757
Reviewed-on: http://review.gluster.com/640
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Output of profile info was not self explanatory.
Change-Id: Iaab0ce055b7e0548645a0a77921e608497c15e43
BUG: 3028
Testcase: run 'profile info' and see if all the fields and columns are self explanatory.
Reviewed-on: http://review.gluster.com/620
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Performing inode_ref inside the critical section of pl_update_refkeeper
(around pl_inode_t->mutex) causes a deadlock with inode_table_t->lock.
The other thread (process state dump) holds the inode_table_t->lock first
to loop over inodes and then while dumping an inode's lock context, tries
to acquire pl_inode_t->mutex thereby completing the deadlock.
The fix is to perform inode_ref outside the critical section in
pl_update_refkeeper
Change-Id: I689ab4a9b46b36287740279fdec6159182c86119
BUG: 3753
Reviewed-on: http://review.gluster.com/629
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
When running rm -rf from mount point, quota-updation process may endup in a state where the
inode is already removed from the gluster inode table, but the updation has process is still in
progress. This is not a error condition because the updation is done asynchronously.
Change-Id: I2d3aad716bb1c971115004a70ca76e2dd5088e44
BUG: 3609
Reviewed-on: http://review.gluster.com/603
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
add-brick, stop-volume, remove-brick are the operations that are explicitly
'failed' when attempted while replace-brick is in progress.
Change-Id: Ia8034177e03a9ab10f9e8d5c8bc417427a1218e3
BUG: 3738
Reviewed-on: http://review.gluster.com/631
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
take the least significant 64bit from gfid and assign it to 'ia_ino',
hence for a given file (or directory), the 'ia_ino' number is always
same.
Change-Id: I9bc01576f24a3767999bbe612d047b6849ae1215
BUG: 3042
Reviewed-on: http://review.gluster.com/624
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the current way is very crude method to solve the warning issues with
gcc 4.6.1+ versions. Actual fix is to go through each of such warnings
and fix individually.
added a TODO to remove the 'pragma' once we fix the root cause of
warnings. till then this patch is work around to shift the build
system.
Change-Id: Icffc427b1d736e719e15f40e1dd89330ea395c40
BUG: 2550
Reviewed-on: http://review.gluster.com/625
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This prevents a possible race between mknod(REGULUAR files) and remove.
mknod first creates on the first_child, and only if successful, on other
subvolumes.
Change-Id: I73822a9518a2e80685eff6446506d2c56783d47f
BUG: 3727
Reviewed-on: http://review.gluster.com/623
Reviewed-by: Amar Tumballi <amar@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Id0da5098494cb80e50e7f1693633e0419cbdc06a
BUG: 3737
Reviewed-on: http://review.gluster.com/616
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
| |
Change-Id: Ie14492451cab821e7ed60e68dbaff22d7d78fba9
BUG: 3709
Reviewed-on: http://review.gluster.com/609
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Ie831ae8542c1382c17fb7837cd18b0e4e4d3db75
BUG: 3734
Reviewed-on: http://review.gluster.com/619
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Ib759befe1800bc6fd93bdf44f3a7f89bfffff46e
BUG: 3734
Reviewed-on: http://review.gluster.com/612
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I771045aca9f9a811744aeec0d844609a37ae4792
BUG: 3734
Reviewed-on: http://review.gluster.com/611
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I145c12f529459f5c10ba1b8a28cb64ac07d2d2a9
BUG: 3721
Reviewed-on: http://review.gluster.com/605
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I20d972e4930e65c4468d5da0ca75d60d2806bfa3
BUG: 2744
Reviewed-on: http://review.gluster.com/590
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Pranith Kumar Karampuri <pranithk@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Ibc23fef417bcf613850e03dc4dadcc88f89e2b6f
BUG: 2586
Reviewed-on: http://review.gluster.com/59
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
| |
Some changes to profile info output.
Change-Id: I2e7a5c088fbb29be7df28de79d9817c5a492d775
BUG: 3028
Reviewed-on: http://review.gluster.com/586
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
suppose one gives create volume from a peer whose bricks are
hostname:/a/b hostname:/a/b/c, then send that error information
to the cli.
Change-Id: Ic2149647f753fcf9218e468f13c52d0fc013a5d3
BUG: 2803
Reviewed-on: http://review.gluster.com/582
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
volume top exit status was not zero even when command was successful
Change-Id: I12761cb6f00ad5c851bfee7cf0aaf0b92dfb94f4
BUG: 2882
testcase: run any valid 'volume top' command and check for exit status
Reviewed-on: http://review.gluster.com/587
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
friend_remove_cbk cleans up peerinfo and the unrefs the associated rpc_clnt
obj. When the cbk is run inside call_bail or saved_frames_unwind, we might end
up destroying the rpc_clnt and associated saved_frames_pool while we are still
using saved_frames to iterate through the frames.
Change-Id: I9c43797cb35104d35b011c26d773a0b375248f2d
BUG: 3511
Reviewed-on: http://review.gluster.com/513
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Across glibc implementations, interpretation of argc/argv passed
to makecontext() is different. This patch does away with dependence
on such arguments passed to makecontext(). Instead,synctask reference
is retrieved from pthread_getspecific().
Change-Id: Ib00924ddb115877c643818e22afa8941eceaff76
BUG: 3636
Reviewed-on: http://review.gluster.com/571
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
| |
variable. Also propogate error to the calling functions.
Change-Id: If8ba73ac57bc235a28c1e1cdc7a5e11947e7a52f
BUG: 3526
Reviewed-on: http://review.gluster.com/400
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Shehjar Tikoo <shehjart@gluster.com>
|