Bug 991009
Summary: | AFR: changelogs not cleared even after successful writes | ||
---|---|---|---|
Product: | [Red Hat Storage] Red Hat Gluster Storage | Reporter: | spandura |
Component: | replicate | Assignee: | Anuradha <atalur> |
Status: | CLOSED EOL | QA Contact: | spandura |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 2.1 | CC: | nsathyan, pkarampu, rhs-bugs, smohan, storage-qa-internal, surs, vagarwal, vbellur |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2015-12-03 17:11:01 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
spandura
2013-08-01 11:52:14 UTC
Shwetha, Could you attach the logs please. I guess the changelogs are appearing because fsyncs would fail. protocol/client uses anonymous fds to perform writes/fxattrop until the actual fd is re-opened whereas fsyncs are done using the fd that is yet to be re-opened (EBADFD). Using anonymous fds to perform fsyncs just like we do it for write/fxattrop does not work because the files are opened/closed on the brick without mount process' knowledge (I am waiting for response from Avati for confirmation about this fact). It is correct behavior to have the pending xattrs if fsyncs fail because there is a chance of data not reaching disk. Lets take a decision on if this should be treated as bug or not based on Avati's response. Sorry I couldn't find the reason for the dirty xattrs at the time we were debugging, it didn't occur to me then. IMO this bug is *NOT* a severe bug. I guess functionality worked fine, didn't it? Pranith. Shwetha, Avati updated that it can be done. Man page of fsync says the following: " fsync() transfers ("flushes") all modified in-core data of (i.e., modified buffer cache pages for) the file referred to by the file descriptor fd to the disk device (or other permanent storage device) so that all changed information can be retrieved even after the system crashed or was rebooted. This includes writing through or flushing a disk cache if present. The call blocks until the device reports that the transfer has completed. It also flushes metadata information associated with the file (see stat(2))." So it does not matter which fd of the inode does fsync for the data to be written. Pranith. Thank you for submitting this issue for consideration in Red Hat Gluster Storage. The release for which you requested us to review, is now End of Life. Please See https://access.redhat.com/support/policy/updates/rhs/ If you can reproduce this bug against a currently maintained version of Red Hat Gluster Storage, please feel free to file a new report against the current release. |