[Bugs] [Bug 1376757] New: Data corruption in write ordering of rebalance and application writes

bugzilla at redhat.com bugzilla at redhat.com
Fri Sep 16 10:41:41 UTC 2016


            Bug ID: 1376757
           Summary: Data corruption in write ordering of rebalance and
                    application writes
           Product: GlusterFS
           Version: mainline
         Component: locks
          Assignee: bugs at gluster.org
          Reporter: ksubrahm at redhat.com
                CC: bugs at gluster.org, rgowdapp at redhat.com

Description of problem:

Lack of atomicity b/w read-src and write-dst of rebalance process.

If a rebalance process has read the data from a region but, before writing to
the destination, an application writes/modifies data on the same region. Then
the rebalance process completes but it will not have the modified data on the
destination even though the application write was successful.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:

1. Attach gdb to rebalance process.
2. Break after reading from src but before you write to dst.
3. While break point is hit in gdb, initiate a write from an application on
mount to the same region on which read is done.
4. Wait till the write is complete (better still do an fsync so that write
would be reached the disk).
5. Resume rebalance process from gdb and let the file migration complete.
6. Once the migration is complete you would see the write done by application
in step 3 is not seen in destination file. Since write/fsync from application
was complete, this is a data corruption.

Actual results:

Write done by application is not seen in the destination file.

Expected results:

Write done by application should be reflected in the destination file.

Additional info:

You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.

More information about the Bugs mailing list