![](https://secure.gravatar.com/avatar/173371753ea2206b9934a9be1bdce423.jpg?s=120&d=mm&r=g)
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Jul 8, 2008, at 10:52 AM, Ian Eiloart wrote:
I'm trying to work out how to report a bug in Mailman 3.0
None seem to be listed at <https://bugs.launchpad.net/mailman>
I've just set Launchpad up to accept bugs for Mailman. At some point
we will get the SourceForge bugs imported, but in the meantime, please
use the above url for bugs in 2.2 and 3.0.
Please continue to use the SourceForge bug tracker for all Mailman 2.1
bugs.
The bug seems to be in the lmtp queue runner. If I try to create a
new list while the queue runner is handling a connection, mailman.db
gets permanently locked.So, if I telnet to the lmtp server, and say:
220 quant.staff.uscs.susx.ac.uk Python LMTP queue runner 1.0 lhlo me 250 quant.staff.uscs.susx.ac.uk mail from:<> 250 Ok rcpt to:<foo@example.com>
then, I switch to another shell, and try to create a list with
create_list:quant:mailman-3.0.0a1 its$ staging/bin/create_list -l baz@example.com -q -o wam221@sussex.ac.uk Traceback (most recent call last): File "staging/bin/create_list", line 8, in <module> load_entry_point('mailman==3.0.0a1', 'console_scripts', 'bin/ create_list')() File "/Users/wam22/mailmantesting/test4/mailman-3.0.0a1/mailman/ bin/create_list.py", line 110, in main config.db.commit() File "/Users/wam22/mailmantesting/test4/mailman-3.0.0a1/mailman/ database/__init__.py", line 79, in commit self.store.commit() File "/Library/Python/2.5/site-packages/storm-0.12-py2.5.egg/ storm/store.py", line 107, in commit self._connection.commit() File "/Library/Python/2.5/site-packages/storm-0.12-py2.5.egg/ storm/databases/sqlite.py", line 125, in commit self.raw_execute("COMMIT", _end=True) File "/Library/Python/2.5/site-packages/storm-0.12-py2.5.egg/ storm/databases/sqlite.py", line 153, in raw_execute return
Connection.raw_execute(self, statement, params) File "/Library/Python/2.5/site-packages/storm-0.12-py2.5.egg/ storm/database.py", line 278, in raw_execute raw_cursor.execute(statement) sqlite3.OperationalError: database is lockedAnd, it stays locked like that for eternity, or until I remove var/ data/mailman.db-journal (whichever comes sooner ;)
The question is, why would the lmtp server need a write lock on the
database?
I'm betting the LMTPRunner needs a config.db.commit() right before the
successful return path in process_message().
- -Barry
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (Darwin)
iEYEARECAAYFAkhz5i8ACgkQ2YZpQepbvXE04ACeOyg+z3Qoouf9lyfg0sVYzP7u odkAniqdTV9EkVoepPZvda4w10UM8eci =GFKI -----END PGP SIGNATURE-----