2012-04-04 18:49:18 |
Robert Collins |
description |
I just got this traceback with version 0.0.17-0ubuntu1: http://paste.ubuntu.com/911037/
The problem happens in this bit of uniquefileallocator.py:
for filename in os.listdir(directory):
logid = filename.rsplit('.', 1)[1]
if not logid.startswith(prefix):
continue
This would, I suppose, break whenever some file or subdirectory in the log directory has no dot in its name. I do see one thing in the log directory that doesn't have a dot in it: an oops directory seemingly created by python-oops-datedir-repo itself!
What gives? |
I just got this traceback with version 0.0.17-0ubuntu1: http://paste.ubuntu.com/911037/
The problem happens in this bit of uniquefileallocator.py:
for filename in os.listdir(directory):
logid = filename.rsplit('.', 1)[1]
if not logid.startswith(prefix):
continue
This would, I suppose, break whenever some file or subdirectory in the log directory has no dot in its name. I do see one thing in the log directory that doesn't have a dot in it: an oops directory seemingly created by python-oops-datedir-repo itself!
What gives?
Analysis
========
Our best theory is that two components of MaaS were sharing the same datedir repository and one was using an instanceid and one was not. This should allow trivial reproduction.
We could add code to handle this, or we could delete the instanceid based code entirely. AFAIK at this point nothing stops us deleting the code, which would be preferrable, as the non-instanceid code was written because the instanceid based code was architecturally slow and unreliable. |
|