[Mailman-Developers] Issues with archiving directory and OS limitations
AE Somerville
a.somerville at qut.edu.au
Tue Oct 25 01:52:37 CEST 2005
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'):
1. The HTML links are not working for the archive site, but it would be
nice to have them functioning.
2. 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
More information about the Mailman-Developers
mailing list