On Mon, Oct 23, 2017 at 12:50 PM, 陶冬冬 <tdd21151186@xxxxxxxxx> wrote: > Dear Cephers, > > I have one issue about cephfs, suppose we got below scenario: > client A write one file with interval1 (offset1, length1) > then client B read the same file with interval2 (offset2, length2). > but due to capability system controlled by mds, client B have to wait until client A finish its write operation (including flushing its buffer to osd) Client B only need to wait until Client A finishes flush buffer to osd. If Client B keeps the file descriptor open, writing to page cache gets disabled on client A, reading from client B does not need to wait for writing on client A (different object). > Even if interval1 and interval2 belongs to two different object of that file, client B still have to wait client A. > > I’m wondering why mds doesn’t try to control the caps based on object rather than whole file? because mds can't foresee which offset client want to read/write. the overhead for issuing caps for each read/write syscall is too high. > > Thanks, > Dongdong -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html