Hello,
I have recently come across a problem that prevents the creation of any new lists for our site.
Problem manifests as an inability of the create list process being able to make the archiving directories. The number appears to be when the directory count approaches 32,000 separate directories.
How did it happen?
We have close to 15,000+ lists but the archive directories houses two directories per list normally:
/var/mailman/archives/private/<listname>
/var/mailman/archives/private/<listname>.mbox
So the number of directories are essentially doubled and then Linux has trouble with having any more.
My temp solution:
I have altered Site.py line 52 to add the list name again into the path for the archives. This halved the number of directories in the /var/mailman/archives/private/ level and pushed the extra directories into their own named sub directory. Now we can create new lists again (in our situation we have the list population updated daily and the lists themselves are added/deleted as required)
def get_archpath(listname, domain=None, create=False, public=False):
if public:
subdir = mm_cfg.PUBLIC_ARCHIVE_FILE_DIR
else:
subdir = mm_cfg.PRIVATE_ARCHIVE_FILE_DIR
path = os.path.join(subdir, listname, listname)
if create:
_makedir(path)
return path
Related problems (from the 'fix'):
The HTML links are not working for the archive site, but it would be nice to have them functioning.
Possible larger ramifications from the alteration of this function that I cannot see yet.
Advice from the folks who are a lot more familiar with mailman would be great to point us at a more eloquent solution.
Antony Somerville
Network Programmer / Project Manager: QUT AD Upgrade Project
Network Applications
Queensland University of Technology, Brisbane Australia
Phone +61 7 38644434 Fax +61 7 38642921