[Bugs] [Bug 1138970] file corruption during concurrent read/write

bugzilla at redhat.com bugzilla at redhat.com
Mon Oct 27 04:37:10 UTC 2014


https://bugzilla.redhat.com/show_bug.cgi?id=1138970



--- Comment #18 from Raghavendra G <rgowdapp at redhat.com> ---
Update on the script hang when run on glusterfs mounted with direct-io-mode on:

<read_record>
    if not header_data:
      return None
    data_len, checksum = struct.unpack(self.record_header_format, header_data)
    data = self._read(data_len)
</read_record>

Seems like we are getting an invalid header_data which when unpacked gives out
data_len and checksum as 0. _read function goes into an infinite loop when
called with size 0. Though this is a bug to be fixed in _read, more interesting
question is why we got a non-NULL header_data which has 0 length and checksum. 

The reason is:
Even though glusterfs returns 0 bytes in read reply (also checked file-size in
stat, which was 0), read call on file object is returning an object which gives
a length of 8 bytes on invoking len () on that object. Checked through the
2.7.8 python src code, but couldn't find anything suspicious. Will try to work
around this problem and get the script running with direct-io-mode on.

-- 
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=s07m9q3IoR&a=cc_unsubscribe


More information about the Bugs mailing list