Re: Read IO to object while new data still in journal

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

 



Regards,
Zhi Zhang (David)
Contact: zhang.david2011@xxxxxxxxx
              zhangz.david@xxxxxxxxxxx


On Thu, Dec 31, 2015 at 11:08 AM, min fang <louisfang2013@xxxxxxxxx> wrote:
> thanks, so ceph can guarantee after write commit call back, read IO can get
> the new written data, right?

yep :-)

>
> 2015-12-31 10:55 GMT+08:00 Zhi Zhang <zhang.david2011@xxxxxxxxx>:
>>
>> If the data has not been written to filestore, as you mentioned, it is
>> still in journal, your following read op will be blocked until the
>> data is written to filestore.
>>
>> This is because when writing this data, the related object context
>> will hold ondisk_write_lock. This lock will be released in a callback
>> after data is in filestore. When ondisk_write_lock is held, read op to
>> this data will be blocked.
>>
>>
>> Regards,
>> Zhi Zhang (David)
>> Contact: zhang.david2011@xxxxxxxxx
>>               zhangz.david@xxxxxxxxxxx
>>
>>
>> On Thu, Dec 31, 2015 at 10:33 AM, min fang <louisfang2013@xxxxxxxxx>
>> wrote:
>> > yes, the question here is, librbd use the committed callback, as my
>> > understanding, when this callback returned, librbd write will be looked
>> > as
>> > completed. So I can issue a read IO even if the data is not readable. In
>> > this case, i would like to know what data will be returned for the read
>> > IO?
>> >
>> > 2015-12-31 10:29 GMT+08:00 Dong Wu <archer.wudong@xxxxxxxxx>:
>> >>
>> >> there are two callbacks: committed and applied, committed means write
>> >> to all replica's journal, applied means write to all replica's file
>> >> system. so when applied callback return to client, it means data can
>> >> be read.
>> >>
>> >> 2015-12-31 10:15 GMT+08:00 min fang <louisfang2013@xxxxxxxxx>:
>> >> > Hi, as my understanding, write IO will committed data to journal
>> >> > firstly,
>> >> > then give a safe callback to ceph client. So it is possible that data
>> >> > still
>> >> > in journal when I send a read IO to the same area. So what data will
>> >> > be
>> >> > returned if the new data still in journal?
>> >> >
>> >> > Thanks.
>> >> >
>> >> > _______________________________________________
>> >> > ceph-users mailing list
>> >> > ceph-users@xxxxxxxxxxxxxx
>> >> > http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>> >> >
>> >
>> >
>> >
>> > _______________________________________________
>> > ceph-users mailing list
>> > ceph-users@xxxxxxxxxxxxxx
>> > http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>> >
>
>
_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com



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


  Powered by Linux