question about FileStore read()/write()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Keep in mind that this coordination is largely happening above the
FileStore layer, so you are indeed not seeing any code within the
FileStore to support it. :) But operations within the OSD are ordered
on a per-PG basis, and while in-progress writes can overlap, a read
will be blocked until the writes are applied (and subsequent writes
will be blocked behind the read).
-Greg
Software Engineer #42 @ http://inktank.com | http://ceph.com


On Tue, Jul 22, 2014 at 8:58 PM, Haomai Wang <haomaiwang at gmail.com> wrote:
> Read will get the newest content. If the read arrives during the write
> interval, it will wait for the write applied.
>
> On Wed, Jul 23, 2014 at 10:22 AM, James Pan <devjmp at yahoo.com> wrote:
>> Hi everyone,
>>
>> I am reading the FileStore source code and confused with the read() and write() process.
>>
>> If journal is enable, write() will be acknowledged after the changes are committed to the journal device but before they are applied to the file system. However read() is always satisfied from the OSD file on the file system, so if a read arrives during this interval. Will the read get the stale data? Does this behavior break the read-after-write posix semantics? Shouldn't the read go to the journal for the latest data?
>>
>> Please point me out if my understanding is incorrect, thanks very much.
>>
>> Best regards,
>> James Pan
>>
>> _______________________________________________
>> ceph-users mailing list
>> ceph-users at lists.ceph.com
>> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>
>
>
> --
> Best Regards,
>
> Wheat
> _______________________________________________
> ceph-users mailing list
> ceph-users at lists.ceph.com
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com


[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux