Quick guide to Queues:
Mailman uses the traditional "store and forward" approach to data handling. Each process accepts a message (either via LMTP or in its queue), and it remains in the queue until successfully processed. This guarantees that if something goes wrong, the message data will not be lost.
Queues are directories under Mailman's $var/queue directory. Objects in queues are files containing a pair of Python objects (email.Message and a metadata dict) in the standard Python serialization format "pickle". The "mailman qfile <file>" program prints them in a readable format.
archive briefly stored, usually immediately picked up by an plugin provided by an archive application (HyperKitty is the usual) bad messages that Mailman parsed and couldn't figure out what to do with them (approximately permanent failures) messages in this queue will never be automatically processed, they must be handled by the site admin (usually deleted) bounces messages that fit one of the bounce formats known to Mailman, the subscription's bounce data is updated and the message deleted command messages to the administrative addresses, treated as commands to the Mailman application such as subscribe digest message to be added to the next edition of a list's digest in messages accepted from the MTA via LMTP are stored here nntp messages to processed via a newsgroup out posts being delivered to subscribers, these will remain until all addresses are either delivered or have been rejected by Mailman's outgoing SMTP gateway pipeline (some internal function, I'll document it later) retry (some internal function, I'll document it later) shunt messages that cause an uncaught Python exception, often this can be retried with "mailman unshunt" and delivery may succeed ("exception" means we can't really say what might have happened, sometimes it's a permanent failure, sometimes an admin could edit the message and delivery would succeed, fairly often there is a configuration or other problem that once resolved allows delivery via unshunt virgin messages to users, the queue file remains until successful delivery or permanent failure
Most queues should be empty "most of the time". The 'bad' and 'shunt' queues contain files that will not be automatically retried. Administrator action is required to deliver these files (including the "unshunt" command), otherwise they'll stay there forever. The 'out' queue may back up under heavy loads because of connection and throughput overhead in the SMTP protocol. It is often useful to configure multiple "slices" of the 'out' queue so that large messages or slow remotes don't block the whole queue. Possibly the MTA may not be running. When the 'nntp' and 'archive' queues back up, that almost always indicates that a companion application (the news gateway or the archiver application) is down.
Steve
-- GNU Mailman consultant (installation, migration, customization) Sirius Open Source https://www.siriusopensource.com/ Software systems consulting in Europe, North America, and Japan