On 09/02/2017 06:27 PM, Mark Sapiro wrote:
> On 09/02/2017 12:30 PM, Barry Warsaw wrote:
>> It would be interesting to know if the problem is in the init script or
>> Mailman. You may have to crank up logging of both to find out. Also, I
>> wonder if the same problem occurs if you use systemd?
>
>
> It appears to be in Mailman.
This get's stranger and stranger.
I removed the logging from the init.d script which invokes
/opt/mailman/mailman-bundler/bin/mailman with the appropriate start/stop
option. I then added logging to it. Here it is:
#!/bin/bash
unset PYTHONSTARTUP
echo `date` At bundler/bin/mailman >> /opt/mailman/temp_log
exec /opt/mailman/mailman-bundler/venv-3.4/bin/mailman \
-C "/opt/mailman/mailman-bundler/deployment/mailman.cfg" \
$@
so when invoked it prints a timestamp and 'At bundler/bin/mailman'.
I also added logging to
/opt/mailman/mailman-bundler/venv-3.4/bin/mailman as follows:
#!/usr/local/bin/python3
# EASY-INSTALL-ENTRY-SCRIPT: 'mailman==3.2.0a1','console_scripts','mailman'
__requires__ = 'mailman==3.2.0a1'
import re
import sys
import time
from pkg_resources import load_entry_point
if __name__ == '__main__':
with open('/opt/mailman/temp_log', 'a') as fp:
print('{} At venv bin/mailman __main__'.format(time.asctime()),
file=fp)
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(
load_entry_point('mailman==3.2.0a1', 'console_scripts', 'mailman')()
)
so it prints a time stamp and 'At venv bin/mailman __main__' in the if
__name__ == '__main__': block.
Finally, I added a bit to the main() function in mailman/bin/mailman.py
so it reads (a bunch of decorators omitted):
def main(ctx, config_file):
# XXX https://github.com/pallets/click/issues/303
"""\
The GNU Mailman mailing list management system
Copyright 1998-2017 by the Free Software Foundation, Inc.
http://www.list.org
"""
# click handles dispatching to the subcommand via the Subcommands class.
import time
with open('/opt/mailman/temp_log', 'a') as fp:
print('{} At mailman.main'.format(time.asctime()), file=fp)
Then I rebooted and subsequently manually ran sudo service mailman
start. I got this in temp_log
Tue Sep 5 03:10:57 UTC 2017 At bundler/bin/mailman
Tue Sep 5 03:10:58 2017 At venv bin/mailman __main__
Tue Sep 5 03:11:57 UTC 2017 At bundler/bin/mailman
Tue Sep 5 03:11:58 2017 At venv bin/mailman __main__
Tue Sep 5 03:15:17 UTC 2017 At bundler/bin/mailman
Tue Sep 5 03:15:18 2017 At venv bin/mailman __main__
Tue Sep 5 03:15:22 2017 At mailman.main
The 03:10:.. entries are from the 'stop' from the reboot. The absence of
'At mailman.main' may be significant. All the normal shutdown messages
are in mailman.log about 6-7 seconds later. But, if I do 'sudo service
mailman stop' there is an 'At mailman.main' message logged.
Then the 3:11:.. entries are from init running the init.d/mailman script
and indicate that /opt/mailman/mailman-bundler/bin/mailman and
/opt/mailman/mailman-bundler/venv-3.4/bin/mailman were both invoked, but
there is nothing in mailman.log and no 'At mailman.main' message. Then
the 03:15:.. entries are from when I manually started Mailman.
It appears that
load_entry_point('mailman==3.2.0a1', 'console_scripts', 'mailman')()
is being executed by /opt/mailman/mailman-bundler/venv-3.4/bin/mailman,
but either somehow the 'start' argument is lost or something after that
fails. I don't know how the 'start' argument could be getting lost, but
I don't know what else could be failing either.
Any hints?
--
Mark Sapiro The highway is for gamblers,
San Francisco Bay Area, Californiabetter use your sense - B. Dylan
signature.asc
Description: OpenPGP digital signature
___
Mailman-Developers mailing list
Mailman-Developers@python.org
https://mail.python.org/mailman/listinfo/mailman-developers
Mailman FAQ: http://wiki.list.org/x/AgA3
Searchable Archives:
http://www.mail-archive.com/mailman-developers%40python.org/
Unsubscribe:
https://mail.python.org/mailman/options/mailman-developers/archive%40jab.org
Security Policy: http://wiki.list.org/x/QIA9