On Aug 3, 2016, at 13:38, Dave Huang <[email protected]> wrote:
> And this is logged to the Trac log file:
> 
> 2016-08-03 13:24:36,312 Trac[admin] ERROR: Error writing to trac.ini: 
> WindowsError: [Error 6800] The function attempted to use a name that is 
> reserved for use by another transaction: 'd:\\trac\\conf\\trac.ini-623nrz'

As a side note, it sounds like MS is discouraging the use of Transactional NTFS 
now: 
https://msdn.microsoft.com/en-us/library/windows/desktop/aa363764(v=vs.85).aspx 
says "Microsoft strongly recommends developers utilize alternative means to 
achieve your application’s needs. Many scenarios that TxF was developed for can 
be achieved through simpler and more readily available techniques. Furthermore, 
TxF may not be available in future versions of Microsoft Windows."

And I haven't analyzed this guy's reasoning, 
http://stupidpythonideas.blogspot.com/2014/07/getting-atomic-writes-right.html 
says that for simply doing an atomic replace of a file, using ReplaceFile or 
MoveFileEx is a better option.

So, while it seems like using transactional NTFS *should* work, perhaps the 
better solution is for _rename() in trac/util/__init__.py to just use the 
existing MoveFileEx code and not bother with the _rename_atomic() that uses 
transactional NTFS?
-- 
Name: Dave Huang         |  Mammal, mammal / their names are called /
INet: [email protected] |  they raise a paw / the bat, the cat /
FurryMUCK: Dahan         |  dolphin and dog / koala bear and hog -- TMBG
Dahan: Hani G Y+C 40 Y++ L+++ W- C++ T++ A+ E+ S++ V++ F- Q+++ P+ B+ PA+ PL++

-- 
You received this message because you are subscribed to the Google Groups "Trac 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/trac-users.
For more options, visit https://groups.google.com/d/optout.

Reply via email to