<div class="gmail_quote">On Mon, Feb 14, 2011 at 21:05, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div id=":3dj">Then we need a PetscFOpen() to be able to return a flag indicating that it cannot open the file.<br>
<br>
   But I don't think it is right to call it a "race condition", it is just a non-atomic operation and it is possible that after the test succeeds the open may fail. But I don't think we should be using algorithms/approaches that rely on checking that a file exists and opening it be an atomic operation we don't use the filesystem in such a dynamic way so I think checking then opening is fine for PETSc.</div>
</blockquote></div><br><div>The question is whether any users that we care to support may have multiple processes trying to open the same file or somehow otherwise communicating through the file system. At the moment, I can't think of a use case where it is important.</div>