[issue8828] Atomic function to rename a file
Charles-François Natali
report at bugs.python.org
Mon Oct 24 08:56:17 CEST 2011
Charles-François Natali <neologix at free.fr> added the comment:
> MoveFileTransacted is only available under Vista or later. You should be able to use MoveFileEx for the same effect.
Nice.
> "The solution? Let's remember that metadata changes are atomic. Rename is such a case."
>
Hmmm.
Is he referring to the "standard" rename? The blog doesn't evoke a
specific function, but if it was the case, then why bother at all?
By the way:
"""
- MoveFileEx() with MOVEFILE_REPLACE_EXISTING and
MOVEFILE_WRITE_THROUGH flags: not atomic (eg. "If the file is to be
moved to a different volume, the function simulates the move by using
the CopyFile and DeleteFile functions."), version >= Windows 2000
"""
There's exactly the same limitation with the POSIX version (except
that it'll fail with EXDEV instead of silently doing the copy+unlink).
----------
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue8828>
_______________________________________
More information about the Python-bugs-list
mailing list