[Mailman-Users] mmarch mbox-splitting weird...

Mark Sapiro mark at msapiro.net
Tue Mar 17 17:25:43 CET 2009


IEM - network operating center (IOhannes m zmoelnig) wrote:
>
>however, this leaves me with one remaining problem:
>rebuilding the archives will rename several tenthousands of emails.
>while our archives do have a search functionality, this will still break 
>links to most archived emails.


This is a known issue with rebuilding old archives. You may find that
fixing the .mbox solves this because you will no longer be assigning
message numbers to spurious partial messages, but probably this won't
completely solve the problem.


>how would i rebuild only the last month of an archive?


This is only a suggestion to try. I haven't actually tried it.

0) backup everything
1) remove all the archives/private/LISTNAME/* files and directories for
the last month
2) remove all the archives/private/LISTNAME/database/* files for the
last month.
3) consider removing the archives/private/LISTNAME/attachments/*
directories for the last month, but don't do it if you are concerned
about attachments scrubbed from the plain digest as you will break
those links.
4) using bin/withlist, unpickle the the
archives/private/LISTNAME/pipermail.pck data, and update 'archive',
'archivedate', 'archives', 'firstdate', 'lastdate', 'sequence' and
'size' to make it look like the last message in the archive is the
last message for the prior month, and pickle it back.
5) copy the last months messages from
archives/private/LISTNAME.mbox/LISTNAME.mbox to a separate file.
6) run bin/arch without the --wipe option and with the separate last
month's .mbox as input.


>and: is there a way to rebuld an archive in a "sandbox"; that is: can i 
>somehow specify the destination directory of the archive-building 
>process? (so i can rebuild the entire archive till it fits my needs and 
>only then swap it with the current one)


This is probably more practical. Just create another Mailman instance
with a different prefix and copy the lists/ and archives/private/
directories to this second instance.


You could probably also do it by putting

PRIVATE_ARCHIVE_FILE_DIR = '/some/path'

in mm_cfg.py in your current installation, but this is risky. It
probably won't affect the running qrunners as long as they don't
restart for any reason, but it will affect any web or command line
accesses so you wouldn't want to do it unless you stopped web access
to Mailman.

-- 
Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan



More information about the Mailman-Users mailing list