<div dir="auto">Hi Gao,<div dir="auto"><br></div><div dir="auto">No no. What I am saying is - in the current code (excluding all my changes) the block lookup will happens in constant time. with only hole list it won't be O(1) time but rather we have to traverse the holes list. (say in binary search way).</div><div dir="auto">what I don't understand is - what is the purpose of tracking data extents.</div><div dir="auto">hope you get it.</div><div dir="auto"><br></div><div dir="auto">--Pratik.</div><div dir="auto"><br></div><div dir="auto"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Dec 24, 2019, 3:35 PM Gao Xiang <<a href="mailto:gaoxiang25@huawei.com">gaoxiang25@huawei.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Pratik,<br>
<br>
On Tue, Dec 24, 2019 at 03:05:53PM +0530, Pratik Shinde wrote:<br>
> Hello Gao,<br>
> <br>
> Thanks for the review.<br>
> If I understand correctly , you wish to keep track of every extent assigned<br>
> to the file.<br>
> in case of file without any holes in it, there will single extent<br>
> representing the entire file.<br>
> <br>
> Also, the current block no. lookup happens in constant time. (since we only<br>
> record the start blk no.)<br>
> If we use extent record for finding given block no. it can't be done in<br>
> constant time correct ? (maybe in LogN)<br>
<br>
<br>
Could I ask a question?<br>
In short, how can we use the proposal approach to read random blocks<br>
in constant time O(1)?<br>
<br>
e.g.<br>
 if you have two holes 2...4  7...10 in a file with 12 blocks.<br>
<br>
 if we want to random access block 11, only block number 1,5,6,11 were<br>
 saved one by one (maybe p1,p2,p3,p4).<br>
<br>
 How can we get the physical address (p4) of block 11 directly without<br>
 scanning the previous holes?<br>
<br>
Thanks,<br>
Gao Xiang<br>
<br>
<br>
> <br>
> I think I don't fully understand reason for recording extents assigned to a<br>
> file.Since the current design<br>
> is already time and space optimized & there are no deletions happening.<br>
> Is it for some future requirement ?<br>
> <br>
> --Pratik.<br>
<br>
</blockquote></div>