Opened 14 years ago

Last modified 10 years ago

#1393 defect new

trial -u fills working directory with old _trial_temp directories on NFS

Reported by: Jean-Paul Calderone Owned by:
Priority: low Milestone:
Component: trial Keywords:
Cc: Jean-Paul Calderone, Jonathan Lange Branch:
Author:

Description


Change History (11)

comment:1 Changed 14 years ago by Jean-Paul Calderone

At each run, it says "could not remove path, caught OSError [Errno 39]:
Directory not empty" and then renames the previous _trial_temp aside.

comment:2 Changed 14 years ago by Jonathan Lange

Which tests? Windows or *nix?

comment:3 Changed 14 years ago by Jean-Paul Calderone

Any tests.  Unix.  NFS filesystem.

comment:4 Changed 14 years ago by Jean-Paul Calderone

This isn't actually a regression, I guess.

comment:5 Changed 13 years ago by Jonathan Lange

Component: coretrial

comment:6 Changed 13 years ago by Jonathan Lange

Do I need to set up NFS to teest this?

comment:7 Changed 13 years ago by Jonathan Lange

Keywords: waiting added

comment:8 Changed 13 years ago by Jean-Paul Calderone

Keywords: waiting removed

I dunno, do you? The initial message gives the errno with which os.remove (I suppose) fails.

comment:9 Changed 13 years ago by Jonathan Lange

Priority: highlow

comment:10 Changed 10 years ago by TimAllen

I can't reproduce this with an SVN build of Twisted and my own test running on an NFS share.

For what it's worth, the problem is that while POSIX demands that the kernel keep a reference count for each open file (so that if the file is deleted, it can be kept around until after the last handle is closed), NFS is a stateless protocol - there's no open handles to be reference counted. NFS typically gets around this by implementing "delete open file" as "move open file to a randomly-generated filename", which means that if a test suite leaks file handles, you might wind up with these "deleted" files lying around, which means trial can't delete the containing directory between runs.

Ticket #3215 is another example of the 'fun' caused by stateless NFS.

comment:11 Changed 9 years ago by <automation>

Owner: Jonathan Lange deleted
Note: See TracTickets for help on using tickets.