| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
without which, if a peer is added after volume of type 'stripe-replica'
is created, it won't be reflected in the newly added peer.
Change-Id: I77ee6aa3f33994bd4c6dbfefd853cc7e7491c1db
BUG: 3523
Reviewed-on: http://review.gluster.com/369
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
so 'gluster peer probe' command doesn't hang till timeout (120s),
instead it will send the proper error msg to client.
Change-Id: I398fa16d526f869f1d27eeb57aeb7ee4451fbecd
BUG: 1852
Reviewed-on: http://review.gluster.com/342
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Earlier:
step 1: copy the existing <xdr>.x files to /tmp
step 2: generate '.[ch]' files using 'rpcgen <xdr>.x'
step 3: check diff with the to the existing files, add only your part
of changes back to the original file. (ignore other changes).
step 4: there is another file to write wrapper functions to convert
structures to/from XDR buffers, update it with your new structure.
step 5: use these wrapper functions in the newly written procedures.
step 6: commit :-|
Now:
step 1: update (mostly adding only) the <xdr>.x file
step 2: run '<path-to-src>/extras/generate-xdr-files.sh <xdr>.x' command
step 3: implement rpc procedure to handle the request/response.
step 4: commit :-)
Change-Id: I219f9159fc980438c86e847c6b030be96e595ea2
BUG: 3488
Reviewed-on: http://review.gluster.com/341
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
is a step towards reducing glusterfs memory footprint. should also
help a bit in overall performance.
Change-Id: I074d5813602b2c960d59562e792b3dc6e43d2f42
BUG: 3475
Reviewed-on: http://review.gluster.com/322
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The steps in normal data self heal:
1) take big lock by self-heal frame. Get the xattrs/stat to decide
source, sink information.
2) spawn loop frames which perform self-heal by taking small locks on
the file. Every time a new lock is taken and the old lock is released.
3) Before releasing the final small lock a big lock is taken by the
self-heal frame, and unlock on small-lock. Erasing of the pending xattrs
happen then the big unlock happen and that is the end of the data self-heal.
When a data self-heal is needed for a file and the fop
that triggers the self-heal is open with O_TRUNC. Fuse sends open then
an explicit truncate for this. Open triggers the self-heal but by the
time it tries to spawn the loops the file size is truncated to 0, so
no loops are formed.
These are the steps:
1) Take big lock by self-heal frame. Get the xattrs/stat to decide
source, sink information.
2) loop frames are not spawned. The big lock is not released.
3) One more big lock is taken by the same self-heal frame, Erasing of
the pending xattrs etc happen, now it does two big unlocks, but after
the first unlock, the information on which the locks were performed is
forgotten, so the next unlock becomes a no-op. So there is a stale big
lock on that file preventing further writes.
As a fix, if the loops are not spawned, use the previous big lock to
perform the rest of the operations needed in completing the data
self-heal. No need to have one more big lock.
Change-Id: Id03171269594e447b2b6d1331e362d83bd1e3430
BUG: 3506
Reviewed-on: http://review.gluster.com/339
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is brought in an effort to be nice to the system resources when
self-heal is in progress.
Change-Id: I123f1eb4d8000613a35c0117f0aa27f926f3a921
BUG: 3503
Reviewed-on: http://review.gluster.com/333
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
| |
created new files per operations, (or group of operations)
Change-Id: Iccb2a6a0cd9661bf940118344b2f7f723e23ab8b
BUG: 3158
Reviewed-on: http://review.gluster.com/281
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change contains,
- removal of the local cli lock used to serialize
cli ops to a glusterd.
- glusterd's state-machine can handle competing 'lockers' with
guaranteed progress.
- flush cluster lock on 'owner' disconnecting and as 'owner',
send unlock to all on first peer disconnect.
Change-Id: I25961436b0790b4196f2b3438b105c37279399ad
BUG: 3320
Reviewed-on: http://review.gluster.com/123
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
| |
Change-Id: I7b4e7c467b833bc5896808e6e1d1b1a0322c4fdb
BUG: 3483
Reviewed-on: http://review.gluster.com/318
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The header of the ptr returned from mem-pool will now store the
mem-pool ptr it belongs to. mem_put will now take only the pointer
to be freed.
Also, changing MALLOC call to GF_CALLOC in mem_get when we run out
of entries in mem-pool. This also will have the header information
saved.
Change-Id: I3de182663a7f5b49c9e9425e9531775b70bdff67
BUG: 3390
Reviewed-on: http://review.gluster.com/205
Reviewed-by: Amar Tumballi <amar@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use subprocess module instead of os.spawn* / ad-hoc fork/exec.
With this, we do now:
- close uneeded files in children
- watch childrens' stderr:
- have a thread which collects childrens' stderr into a ring buffer
(so that stderr pipe doesn't get stuffed)
- on command failure show stderr
- distinguish between rsync exit values, tolerate only partial errors
- if connection is broken to slave, show ssh/slave gsycd's stderr
Change-Id: Ia92f57b5bdfa47f8c44375c50cf279006a0bf69b
BUG: 2946
Reviewed-on: http://review.gluster.com/85
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Tested-by: Kaushik BV <kaushikbv@gluster.com>
Reviewed-by: Kaushik BV <kaushikbv@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I28de4cce140faf1b35ecdc5cbd408f21c9926341
BUG: 3231
Reviewed-on: http://review.gluster.com/96
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Id8613f9641f748f996062342878070ba8fb27339
BUG: 2473
Reviewed-on: http://review.gluster.com/312
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Pranith Kumar Karampuri <pranithk@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ie. instead of writing out the fully expanded canonical URL like
ssh://root@192.168.3.4:gluster://127.0.0.1:bar
we just display
ssh://root@starship::bar
Change-Id: I2bd70650cbc9973d925f652bccb163d391e406c9
BUG: 2536
Reviewed-on: http://review.gluster.com/79
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Kaushik BV <kaushikbv@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I84580e297ba93a9a093c2e3432ea52e3c0db4a1a
BUG: 3467
Reviewed-on: http://review.gluster.com/307
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
| |
without which, quota would get confused about the total size
Change-Id: I0fb822ee67e3c1585f783ae35292fe71c47ee249
BUG: 3421
Reviewed-on: http://review.gluster.com/304
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Icc1e9dc039f1f2d7ee94c689779a715a69d373fa
BUG: 3389
Reviewed-on: http://review.gluster.com/296
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I84b4f7c9c2787334ce67e5c3e0534953b691c8e0
BUG: 3460
Reviewed-on: http://review.gluster.com/295
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I66362a3087a635fb7b759d7836a1f6564a6a7fc9
BUG: 3456
Reviewed-on: http://review.gluster.com/294
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code is checking for priv->child_up[i], which can change while the fop
is in progress. Since pending[child][id-of-transaction] alone is enough
to tell if the child became stale or not, use just that.
Change-Id: I494bf02cca66f4fd41526195fafce86a202c6bd1
BUG: 3455
Reviewed-on: http://review.gluster.com/293
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Idce22a6266c354e327d5d717715d2e62533eec58
BUG: 3448
Reviewed-on: http://review.gluster.com/292
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I38ddfab200d59dd4c8e9f9dd964a98f3d7aa7ab7
BUG: 3389
Reviewed-on: http://review.gluster.com/289
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Ic227781760a5f6dbf8aad69a19f90e45d4aaec13
BUG: 3415
Reviewed-on: http://review.gluster.com/288
Reviewed-by: Krishnan Parthasarathi <kp@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I5aa6ee7509a8f730ca64e2f7bada56d502785a6c
BUG: 3415
Reviewed-on: http://review.gluster.com/287
Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Ia2d89fd919b077232a37debc2aebe1bc72150856
BUG: 3432
Reviewed-on: http://review.gluster.com/285
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
| |
Change-Id: Ie026ebed98cf5ff75ae1a13437d29f67d0e0254a
BUG: 3448
Reviewed-on: http://review.gluster.com/286
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I8e5b8841705b161068bdb2ccd2ac119d6b250c88
BUG: 3415
Reviewed-on: http://review.gluster.com/284
Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|
|
|
|
|
|
|
|
|
| |
Change-Id: I861b3c4494735b0ba6e038cdc39c50b9866747a8
BUG: 3448
Reviewed-on: http://review.gluster.com/283
Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I206571c77f2d7b3c9f9d7bb82a936366fd99ce5c
BUG: 3182
Reviewed-on: http://review.gluster.com/141
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: If3db4f81215271072030d7119081de5d8b1b3d78
BUG: 3414
Reviewed-on: http://review.gluster.com/279
Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|
|
|
|
|
|
|
|
|
|
| |
GF_NFS3_PORT
Change-Id: I6c0db600ba2010b0a0272f58b16c4955b4b570f2
BUG: 3308
Reviewed-on: http://review.gluster.com/273
Reviewed-by: Vijay Bellur <vijay@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I626893fd16094742869d4abfa488b66924c2796e
BUG: 3445
Reviewed-on: http://review.gluster.com/276
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If write/truncate fails we should remove the child that failed the fop
from the fresh children. The previous code assumes that the children
that succeeded the fop are fresh children, which is wrong. Fixed that
in this patch.
Change-Id: I1e6e21e20faea00516a0fdd2e95f2d7e9cf9076d
BUG: 3411
Reviewed-on: http://review.gluster.com/263
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
Change-Id: Iea835b9e448e736016da2e44e3c9bfff93f2fa78
BUG: 3439
Reviewed-on: http://review.gluster.com/259
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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>
|
|
|
|
|
|
|
|
|
|
| |
keys for allowing insecure client ports.
Change-Id: Iae755d1460f2c7296fc7980b5257afcf778e7767
BUG: 3296
Reviewed-on: http://review.gluster.com/247
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes problem caused by race between glusterd and glusterfsd
occuring when they try to unlink pidfile during volume stop, which led
to the volume being stopped, but the status of the volume remained in
started state.
Change-Id: Ia99bb1a1fc6c78db138211538dfd10c577e82917
BUG: 3147
Reviewed-on: http://review.gluster.com/206
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
We use strcat to concat pathinfo strings. strcat appends a \0 at
the end. Therefore allocate extra bytes for the same to avoid
asserts being hit during gf_free call
Change-Id: I582f5858e7375a5bacfc5c702c612ee09c3bb355
BUG: 3413
Reviewed-on: http://review.gluster.com/249
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amar@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 1dade36a6dfc6cae5559d5139f6b733e1b6fded1
This commit breaks glusterd. The insertion of --xlator-option=<transport family> in between --brick-port and <port> fails command line validation during glusterfsd start.
Change-Id: I40186ca89d1d16cf798404747771353b1f1a3e1d
Reviewed-on: http://review.gluster.com/251
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 6ab425e4f3d34b1467f694ada9a36eacfac9bf3c
Dependency revert for http://review.gluster.com/229
Change-Id: I7c4fcc45a6c25aedf4f06cbdeedc1fecbe424f45
Reviewed-on: http://review.gluster.com/250
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I7dc26b64a177ce5d30352cf7c531f38517c0368a
BUG: 3308
Reviewed-on: http://review.gluster.com/155
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Shehjar Tikoo <shehjart@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I646c0c8e70268de6a20bb23dc3834ac6f5d2bbf2
BUG: 3422
Reviewed-on: http://review.gluster.com/245
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
NB: This was heavily tested on 3.2.2, but code has changed a lot
in the area. This patch itself is untested.
Change-Id: Ie472f04b0804276c2d8a9efc5c96106c33029498
BUG: 3422
Reviewed-on: http://review.gluster.com/229
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
size of the allocated length is incorrectly calculated which could
cause memory overrun while filling the buffer
Change-Id: I4fbdbd1fff937ca15bae9f634ef5757dda52caa8
BUG: 3413
Reviewed-on: http://review.gluster.com/236
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I447fb6a93cdd77de322cd5ded30673411c4cf79e
BUG: 3251
Reviewed-on: http://review.gluster.com/233
Reviewed-by: Vijay Bellur <vijay@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
non Linux systems
- Also use mkfifo to create FIFO on NetBSD: it does not wotk with mknod
Change-Id: I19ffd22b4d79009ef5f9d4a50fc6dd556c3c3ff4
BUG: 2923
Reviewed-on: http://review.gluster.com/226
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
|
|
|
| |
therefore ((flags & O_DIRECTORY) == O_DIRECTORY) is always true even
if the flag is not set.
Change-Id: Ie7837d521ea20b36ed70cf93c1763c226ff0e9f0
BUG: 2923
Reviewed-on: http://review.gluster.com/213
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: Ie05751aa8d96a2f7996843a914e1a66df2777eba
BUG: 2923
Reviewed-on: http://review.gluster.com/222
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@gluster.com>
|
|
|
|
|
|
|
|
| |
Change-Id: I7234909eecdc6af1b8482465f19d0490fcba94ad
BUG: 3166
Reviewed-on: http://review.gluster.com/210
Reviewed-by: Vijay Bellur <vijay@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|