<div dir="ltr"><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Feb 19, 2014 at 2:00 PM, Jean-Yves Avenard <span dir="ltr">&lt;<a href="mailto:jyavenard@gmail.com" target="_blank">jyavenard@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">I&#39;ve summarised the issue being seen in this question:<br>

<a href="http://stackoverflow.com/questions/21868812/what-does-a-call-to-read-blocks-forever" target="_blank">http://stackoverflow.com/questions/21868812/what-does-a-call-to-read-blocks-forever</a><br>
<br>
So at some stage, once the reader reach the end of the file, it<br>
returns with just the amount of bytes there&#39;s left between the current<br>
position and EOF.<br>
Immediately after you have another read for the remaining of the<br>
block. Only then will the writer write again.<br>
The following read is now blocking for a very long time.<br>
<div class=""><div class="h5"></div></div></blockquote><div><br></div><div>Have you considered that the problem may be that we are flushing with fdatasync and the metadata not being flushed may be causing the problem for the reader thread?</div>
<div>It would be s simple thing to try by changing sync to a full sync.</div><div><br></div><div><br></div></div></div></div>