diff options
author | Sakshi <sabansal@redhat.com> | 2015-08-05 16:05:22 +0530 |
---|---|---|
committer | Jeff Darcy <jdarcy@redhat.com> | 2016-04-06 08:28:09 -0700 |
commit | 6e3b4eae1ae559d16721f765294ab30a270820d0 (patch) | |
tree | 7bc196f6fc6091dd3b802def3747d28a847cc064 /rpc/rpc-transport/socket | |
parent | 21d8a461ae712539f5a0bf7e6889df29750c5256 (diff) |
dht: lock on subvols to prevent rename and lookup selfheal race
This patch addresses two races while renaming directories:
1) While renaming src to dst, if a lookup selfheal is triggered
it can recreate src on those subvols where rename was successful.
This leads to multiple directories (src and dst) having same gfid.
To avoid this we must take locks on all subvols with src.
2) While renaming if the dst exists and a lookup selfheal is
triggered it will find anomalies in the dst layout and try to
heal the stale layout. To avoid this we must take lock on any
one subvol with dst.
Change-Id: I637f637d3241d9065cd5be59a671c7e7ca3eed53
BUG: 1252244
Signed-off-by: Sakshi <sabansal@redhat.com>
Reviewed-on: http://review.gluster.org/11880
Smoke: Gluster Build System <jenkins@build.gluster.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'rpc/rpc-transport/socket')
0 files changed, 0 insertions, 0 deletions