Skip to content

Instantly share code, notes, and snippets.

@leroux
Last active December 24, 2015 23:19
Show Gist options
  • Save leroux/066482dd0083fe6e5370 to your computer and use it in GitHub Desktop.
Save leroux/066482dd0083fe6e5370 to your computer and use it in GitHub Desktop.

Mailman Chaos

Injection Fix

./inject-newer-mail.sh <bin/inject> <old-mbox> <new-mbox> <listname> # (new-mbox) // (old-mbox) is injected into archive queue.
bin/qrunner -v -r ARch # start Archive queue runner (Processes the archive queue).
  • Logs: error, smtp, fail, and vette.
  • Pipeline

Migrate

Simple. Lock the lists (queues will still be receiving things, just not processing), inject all lists, unlock lists. Tada.


  • Everytime archives are regenerated, this message somehow screws the parsing up...
  • http://www.haskell.org/pipermail/haskell-cafe/2013-July/001921.html (one example of many)
    • It shows up as being sent to the list the next day (in the future!).
    • I am sure there are many more occurences of this in the lists.
    • Possibly MIME format related?

Possible fixes

  • Fix the parsing script.
  • Clean mbox (still don't know exactly what to clean)
  • Message-Id: <871y6ixw8x.fsf@syntax.syntaxpolice.org> is missing the Date field.
    • This may be another possible reason...
  • I suspect that this a problem with MIME formatted messages.
  • Temporary fix: Copy all list stuff from lambda, append new mbox to old mbox, regenerate with arch -s <start-index>.
    • This is hackish and bound to give trouble later on.
  • Keep old archives from lambda, split "newer than lambda" mbox messages into single files and bin/inject into the lists.
    • formail | bin/inject ~ something like that.
  • ARCHIVER_CLOBBER_DATE_POLICY = 0 in /etc/mailman/mm_cfg.py.

grep "This is a multi-part message in MIME format" haskell-cafe.mbox/haskell-cafe.mbox | wc -l
938
cat ~/var/lib/mailman/archives/private/haskell-cafe.mbox/haskell-cafe.mbox | formail -ds -c 'bin/inject -l haskell-cafe'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment