Bug 763259 (GLUSTER-1527) - mount time defunct window with remote volumes
Summary: mount time defunct window with remote volumes
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: GLUSTER-1527
Product: GlusterFS
Classification: Community
Component: fuse
Version: mainline
Hardware: All
OS: Linux
low
high
Target Milestone: ---
Assignee: Amar Tumballi
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-09-04 09:29 UTC by Csaba Henk
Modified: 2015-12-01 16:45 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:


Attachments (Terms of Use)

Description Csaba Henk 2010-09-04 06:30:34 UTC
(In reply to comment #0)
>  # glusterfs -f /dev/stdin /mnt/gluster0 <<EOF

s@/mnt/gluster0@/mnt/gluster@

Comment 1 Csaba Henk 2010-09-04 09:29:27 UTC
Do the following:

prior to mounting glusterfs on /mnt/gluster, start this:

 $ while :; do touch /mnt/gluster/x || break; done

then mount a remote glusterfs volume, eg.

 # glusterfs -f /dev/stdin /mnt/gluster0 <<EOF
volume client
    type protocol/client
    option transport-type tcp
    option remote-host localhost
    option remote-subvolume brick-0
end-volume
EOF

The mount will be succesfull and soon you can use the fs. However, in the shell where you had the loop, you'll see it has terminated with

 touch: cannot touch `/mnt/gluster/x': Transport endpoint is not connected

That is, there was an interim period when the mount was already in place but not yet usable. (Note, remote subvolume is needed for this, a simple posix mount does not have the defunct window).

Access to the fs should be synchronized with connection to the server. If we fail to do this, a lot of stuff, automount, SELinux hooks, various event notification systems might break havoc (yet again).

Comment 2 Amar Tumballi 2010-09-06 04:16:55 UTC
patch http://patches.gluster.com/patch/4566/ fixes this issue. It was happening because the fuse_thread_proc() was started before handshake is complete.

Comment 3 Vijay Bellur 2010-09-06 06:47:11 UTC
PATCH: http://patches.gluster.com/patch/4566 in master (changes in fuse proc thread initialization)

Comment 4 Vijay Bellur 2010-09-07 15:40:19 UTC
PATCH: http://patches.gluster.com/patch/4641 in master (in case of failures, don't hang fuse mount)

Comment 5 Vijay Bellur 2010-09-08 06:36:28 UTC
PATCH: http://patches.gluster.com/patch/4650 in master (fuse: suppress wrong/confusing log message about graph setup failure)


Note You need to log in before you can comment on or make changes to this bug.