[Bugs] [Bug 1297300] New: Stale stat information for corrupted objects (replicated volume)
bugzilla at redhat.com
bugzilla at redhat.com
Mon Jan 11 06:24:18 UTC 2016
https://bugzilla.redhat.com/show_bug.cgi?id=1297300
Bug ID: 1297300
Summary: Stale stat information for corrupted objects
(replicated volume)
Product: Red Hat Gluster Storage
Version: 3.1
Component: glusterfs
Sub Component: bitrot
Assignee: rhs-bugs at redhat.com
Reporter: vshankar at redhat.com
QA Contact: rmekala at redhat.com
CC: bugs at gluster.org, khiremat at redhat.com
Depends On: 1296399
Blocks: 1297213, 1297284
+++ This bug was initially created as a clone of Bug #1296399 +++
Description of problem:
Stale stat information returned when an object is corrupted on a replicated
volume.
Version-Release number of selected component (if applicable):
mainline
How reproducible:
always
Steps to Reproduce:
1. Create a replicated volume, enable bitrot, mount, perform I/O
2. Wait for files to get signed
3. Corrupt an object (modify form brick directly) from one of the replica
(preferably first replica)
4. Wait till scrubber marks the object as corrupted
5. Perform I/O on the file again
6. stat to check object size
Actual results:
Stale (+ incorrect) stat information (size, mtime, etc..) reported
Expected results:
Correct stat information (updated size, mtim, etc..) should be returned
Additional info:
--- Additional comment from Vijay Bellur on 2016-01-07 02:22:37 EST ---
REVIEW: http://review.gluster.org/13120 (features/bitrot: add check for
corrupted object in f{stat}) posted (#3) for review on master by Venky Shankar
(vshankar at redhat.com)
--- Additional comment from Vijay Bellur on 2016-01-10 07:43:33 EST ---
COMMIT: http://review.gluster.org/13120 committed in master by Venky Shankar
(vshankar at redhat.com)
------
commit d5d6918ce7dc9f54496da435af546611dfbe7d5c
Author: Venky Shankar <vshankar at redhat.com>
Date: Wed Dec 30 14:56:12 2015 +0530
features/bitrot: add check for corrupted object in f{stat}
Check for corrupted objects is done bt bitrot stub component
for data operations and such fops are denied processing by
returning EIO. These checks were not done for operations such
as get/set extended attribute, stat and the likes - IOW, stub
only blocked pure data operations.
However, its necessary to have these checks for certain other
fops, most importantly stat (and fstat). This is due to the
fact that clients could possibly get stale stat information
(such as size, {a,c,m}time) resulting in incorrect operation
of the application that rely on these fields. Note that, the
data that replication would take care of fetching good (and
correct) data, but the staleness of stat information could
lead to data inconsistencies (e.g., rebalance, tier).
Change-Id: I5a22780373b182a13f8d2c4ca6b7d9aa0ffbfca3
BUG: 1296399
Signed-off-by: Venky Shankar <vshankar at redhat.com>
Reviewed-on: http://review.gluster.org/13120
Reviewed-by: Kotresh HR <khiremat at redhat.com>
Reviewed-by: mohammed rafi kc <rkavunga at redhat.com>
Reviewed-by: Raghavendra Bhat <raghavendra at redhat.com>
Tested-by: NetBSD Build System <jenkins at build.gluster.org>
Tested-by: Gluster Build System <jenkins at build.gluster.com>
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1296399
[Bug 1296399] Stale stat information for corrupted objects (replicated
volume)
https://bugzilla.redhat.com/show_bug.cgi?id=1297213
[Bug 1297213] Stale stat information for corrupted objects (replicated
volume)
https://bugzilla.redhat.com/show_bug.cgi?id=1297284
[Bug 1297284] Too many "failed to get the inode context for the inode"
errors in brick logs
--
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=q5wKREtnry&a=cc_unsubscribe
More information about the Bugs
mailing list