summaryrefslogtreecommitdiff
path: root/Mailman/Handlers/HandlerAPI.py
diff options
context:
space:
mode:
authorbwarsaw2000-06-23 04:14:52 +0000
committerbwarsaw2000-06-23 04:14:52 +0000
commiteb07c3e838bf7cfedba27f43086b407557b2fcfd (patch)
tree672a9b5fb8f14c96f0bb56ceebe99770b148669c /Mailman/Handlers/HandlerAPI.py
parent56f7e668d9e47723046a4a9c59617880748521d6 (diff)
downloadmailman-eb07c3e838bf7cfedba27f43086b407557b2fcfd.tar.gz
mailman-eb07c3e838bf7cfedba27f43086b407557b2fcfd.tar.zst
mailman-eb07c3e838bf7cfedba27f43086b407557b2fcfd.zip
Use syslog() interface instead of writing to stderr. All syslog
errors go to the logs/gate_news file, while any exceptions that percolate to the top would go to logs/error. poll_newsgroup(): Always update the watermark, even if the message has been seen before (i.e. we found an X-BeenThere: header) or if an nntp.error_temp occurred (which can happen if the message has expired). Any other exceptions will not be caught and thus will not update the watermark. process_lists(): Be extra paranoid about the forks and child processes. First of all, the fork could fail and if so, we stop cruising through the mailing lists and return to the parent the dictionary of child pids gathered so far. Second, make absolutely sure that the child process exits without returning control to the caller. If we complete successfully or if a TimeOutError occurred, we exit with status 0, otherwise we print a traceback and exit with status 1. main(): First off, we added a keepalive function to geep the gate_news lock fresh while we're waiting for our child processes to exit. Second, we added a failsafe around process_list() -- which does a fork -- so that in the unlikely situation where the child process could have gotten returned here, we exit immediately.
Diffstat (limited to 'Mailman/Handlers/HandlerAPI.py')
0 files changed, 0 insertions, 0 deletions