[Bugs] [Bug 1467010] Fd based fops fail with EBADF on file migration
bugzilla at redhat.com
bugzilla at redhat.com
Thu Jul 20 09:33:24 UTC 2017
https://bugzilla.redhat.com/show_bug.cgi?id=1467010
--- Comment #6 from Worker Ant <bugzilla-bot at gluster.org> ---
COMMIT: https://review.gluster.org/17829 committed in release-3.10 by
Raghavendra Talur (rtalur at redhat.com)
------
commit 7eff3f644b67fdb7a44174f836ffe1a84b6f479e
Author: N Balachandran <nbalacha at redhat.com>
Date: Mon Jul 10 09:38:54 2017 +0530
cluster/dht: Fix fd check race
There is a another race between the cached subvol
being updated in the inode_ctx and the fd being opened on
the target.
1. fop1 -> fd1 -> subvol0
2. file migrated from subvol0 to subvol1 and cached_subvol
changed to subvol1 in inode_ctx
3. fop2 -> fd1 -> subvol1 [takes new cached subvol]
4. fop2 -> checks fd ctx (fd not open on subvol1) -> opens fd1 on subvol1
5. fop1 -> checks fd ctx (fd not open on subvol0)
-> tries to open fd1 on subvol0 -> fails with "No such file on
directory".
Fix:
If dht_fd_open_on_dst fails with ENOENT or ESTALE, wind to old subvol
and let the phase1/phase2 checks handle it.
Change-Id: I34f8011574a8b72e3bcfe03b0cc4f024b352f225
BUG: 1467010
> BUG: 1465075
> Signed-off-by: N Balachandran <nbalacha at redhat.com>
> Reviewed-on: https://review.gluster.org/17731
> Smoke: Gluster Build System <jenkins at build.gluster.org>
> CentOS-regression: Gluster Build System <jenkins at build.gluster.org>
> Reviewed-by: Raghavendra G <rgowdapp at redhat.com>
> Reviewed-by: Amar Tumballi <amarts at redhat.com>
(cherry picked from commit f7a450c17fee7e43c544473366220887f0534ed7)
Signed-off-by: N Balachandran <nbalacha at redhat.com>
Reviewed-on: https://review.gluster.org/17829
Smoke: Gluster Build System <jenkins at build.gluster.org>
CentOS-regression: Gluster Build System <jenkins at build.gluster.org>
Reviewed-by: Raghavendra Talur <rtalur at redhat.com>
--
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=W6YSNqollg&a=cc_unsubscribe
More information about the Bugs
mailing list