<br><div class="gmail_quote">On Sat, Sep 24, 2011 at 7:09 AM, Michael Monnerie <span dir="ltr">&lt;<a href="mailto:michael.monnerie@is.it-management.at">michael.monnerie@is.it-management.at</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">On Freitag, 23. September 2011 Christoph Hellwig wrote:<br>
&gt; As far as standards are concerned it is.  As far as the current XFS<br>
&gt; implementation is concerned you don&#39;t need it as the file fsync will<br>
&gt; also force out all transactions that belong to the create.<br>
<br>
</div>Aren&#39;t you giving O_PONIES to the users? ;-)<br>
<br>
I understand your description, but we should always tell people to use a<br>
directory fsync to be sure. Their applications might run on other<br>
filesystems, or run for 10 years, and maybe XFS&#39;s implementation changes<br>
in between. And maybe in historical kernels even XFS&#39;s implementation<br>
wasn&#39;t like it&#39;s now?<br></blockquote><div><br>Thank you all. <br><br>I see the importance of following the standard. But I am glad to know the current implementation of XFS enforce more strict fsync semantic, just as every application developer wishes.<br>
<br>What I worry is not much applications syncs the directory after new files are created, even if PostgreSQL[1] and many other NoSQL database.  If the current implementation forces more strict semantic, it makes our mind much much more peaceful.<br>
<br>And , not many runtime supports sync of directory, e.g. java ecosystem does not have such support... So it is very very hard to follow this standard. <br><br>For God&#39;s sake, the right semantic of fsync should be &quot;The users wants to assure the file is retrievable after system crash or power failure if fsync returned successfully&quot;.  <br>
<br>[1]  <a href="http://postgresql.1045698.n5.nabble.com/fsync-reliability-td4330289.html">http://postgresql.1045698.n5.nabble.com/fsync-reliability-td4330289.html</a><br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

<br>
@schumi: If your application should be able to run in a safe way on<br>
other filesystems, or other kernel releases, or other unixes, it&#39;s best<br>
to fsync the directory inode too. It&#39;s better to use it always, then<br>
nothing won&#39;t break.<br>
<br>
--<br>
mit freundlichen Grüssen,<br>
Michael Monnerie, Ing. BSc<br>
<br>
it-management Internet Services: Protéger<br>
<a href="http://proteger.at" target="_blank">http://proteger.at</a> [gesprochen: Prot-e-schee]<br>
Tel: <a href="tel:%2B43%20660%20%2F%20415%206531" value="+436604156531">+43 660 / 415 6531</a><br>
<br>
// Haus zu verkaufen: <a href="http://zmi.at/langegg/" target="_blank">http://zmi.at/langegg/</a><br>
</blockquote></div><br>