<br><br><div class="gmail_quote">On Mon, Jul 9, 2012 at 8:24 PM, John Nagle <span dir="ltr"><<a href="mailto:nagle@animats.com" target="_blank">nagle@animats.com</a>></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 7/8/2012 2:52 PM, Christian Heimes wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
You are contradicting yourself. Either the OS is providing a fully<br>
atomic rename or it doesn't. All POSIX compatible OS provide an atomic<br>
rename functionality that renames the file atomically or fails without<br>
loosing the target side. On POSIX OS it doesn't matter if the target exists.<br>
</blockquote>
<br></div>
Rename on some file system types (particularly NFS) may not be atomic.<br></blockquote><div><br>Actually, ISTR that rename() is one of the few things on NFS that is atomic. <br><br><a href="http://bugs.python.org/issue8828">http://bugs.python.org/issue8828</a><br>
<br></div></div>