Edgewall Software
Modify

Opened 10 years ago

Closed 10 years ago

#8865 closed defect (worksforme)

rename transaction triggers a test failure on Windows7,

Reported by: Christian Boos Owned by: Remy Blank
Priority: normal Milestone:
Component: general Version: none
Severity: normal Keywords: windows7 rename needrblank
Cc: Remy Blank Branch:
Release Notes:
API Changes:

Description

Seen in Tim's buildbot:

http://buildbot.timhatch.com/trac/builders/win7%20py26/builds/62

ERROR: Test for regression of http://trac.edgewall.org/ticket/3833 c
----------------------------------------------------------------------
Traceback (most recent call last):
  File "c:\Users\buildbot\Desktop\tracbb\t35\build\trac\tests\functional\testcases.py", line 93, in runTest
    env.config.save()
  File "c:\Users\buildbot\Desktop\tracbb\t35\build\trac\config.py", line 233, in save
    fileobj.close()
  File "c:\Users\buildbot\Desktop\tracbb\t35\build\trac\util\__init__.py", line 178, in commit
    rename(self._temp, self._path)
  File "c:\Users\buildbot\Desktop\tracbb\t35\build\trac\util\__init__.py", line 113, in rename
    raise ctypes.WinError()
WindowsError: [Error 6701] The requested operation was made in the context of a transaction that is no longer active.

Related to code introduced in r8635.

Gc issue? Timeout issue?

Attachments (0)

Change History (4)

comment:1 by Christian Boos, 10 years ago

Cc: Remy Blank added
Keywords: windows7 rename added

comment:2 by Christian Boos, 10 years ago

Keywords: needrblank added

in reply to:  2 comment:3 by Remy Blank, 10 years ago

Milestone: 0.11.7
Owner: set to Remy Blank

Replying to cboos:

Keywords needrblank added

Very funny :)

Now that I have a Windows 7 VM, I should look into this. A timeout sounds likely, maybe we should set the transaction timeout to a larger value than 1 second. Maybe 5 or 10 seconds.

comment:4 by Remy Blank, 10 years ago

Milestone: 0.11.7
Resolution: worksforme
Status: newclosed

Unfortunately, I'm not able to reproduce the issue. I tried adding delays at various points during the rename and in the rename test cases, but no joy.

I increased the transaction timeout to 10 seconds anyway in [9244]. Also, the code has changed since then (it doesn't raise a WinError anymore, and tries os.rename() instead), so the issue might have been fixed (or made more unlikely to happen) with that change.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Remy Blank.
The resolution will be deleted. Next status will be 'reopened'.
to as closed The owner will be changed from Remy Blank to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.