Librarian garbage collector does not cope with symlinks
Bug #562828 reported by
Stuart Bishop
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
High
|
Gary Poster |
Bug Description
The Librarian garbage collector traverses the file store using os.walk(). We have recently split this over multiple disks using symlinks. Unfortunately, os.walk() does not follow symlinks. This generates a lot of ERROR messages, as the garbage collector does not find files on disk that exist in the database.
A followlinks argument was added to os.walk() in Python 2.6. If we can switch to 2.6 quickly, using this option is the best solution.
Otherwise, we need an os.walk() replacement that follows symlinks.
Related branches
lp:~gary/launchpad/bug562828
Merged
into
lp:launchpad
- Aaron Bentley (community): Approve
-
Diff: 170 lines (+129/-2)2 files modifiedlib/canonical/librarian/ftests/test_gc.py (+31/-0)
lib/canonical/librarian/librariangc.py (+98/-2)
Changed in launchpad-foundations: | |
importance: | Undecided → High |
Changed in launchpad-foundations: | |
status: | New → Triaged |
tags: |
added: qa-untestable removed: qa-needstesting |
Changed in launchpad-foundations: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
<stub> Can you run it again? I need to know the first id reported
<stub> If it is 67108865 then it is safe to leave it enabled
2010-04-14 08:24:11 ERROR LibraryFileContent 67108865 exists in the database but was not found on disk.
1st entry off the manual re-run