Bug 764298 (GLUSTER-2566)
Summary: | NFS read hangs when arequal-checksum script is run | ||
---|---|---|---|
Product: | [Community] GlusterFS | Reporter: | shishir gowda <sgowda> |
Component: | nfs | Assignee: | Shehjar Tikoo <shehjart> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | mainline | CC: | anush, gluster-bugs, nsathyan |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Solaris | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | Type: | --- | |
Regression: | RTP | Mount Type: | nfs |
Documentation: | DNR | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
shishir gowda
2011-03-21 07:19:29 UTC
arequal script hangs because the read replies are not being sent by the NFS server running on Solaris. NFS, on seeing the first read call, opens the file and then handles the read request in a second step. If the open call fails, the error is supposed to be returned to the NFS client as part of the READ reply. This is not happening and is a bug. A patch has been sent. The second part of the problem is in quick-read where the use of O_DIRECTORY in open is not a portable piece of code. Solaris does not have O_DIRECTORY and is defined to 0 by our build scripts. The zero value results in the failure of the open fop in quick-read. This prevents the open fop from even reaching the brick. This is the second bug and is pending a fix. *** Bug 2545 has been marked as a duplicate of this bug. *** PATCH: http://patches.gluster.com/patch/6556 in release-3.1 (Solaris: redefine O_DIRECTORY flag to the correct value) PATCH: http://patches.gluster.com/patch/6531 in release-3.1 (nfs3: Flush file I/O call states on open failure) PATCH: http://patches.gluster.com/patch/6532 in master (nfs3: Flush file I/O call states on open failure) |