Ticket #1038 (closed defect: fixed)
Audit TimerService / other looping calls
| Reported by: | catlee | Owned by: | |
|---|---|---|---|
| Priority: | major | Milestone: | 0.8.8 |
| Version: | 0.8.1 | Keywords: | simple |
| Cc: |
Description (last modified by dustin) (diff)
Uncaught exceptions in TimerServices cause the service to stop running. Most of the time this isn't what you want to happen, and causes things like ticket #1035.
We need to check for other instances where uncaught exceptions break these loops.
Fixing this bug entails looking for all uses of TimerService or LoopingCall, and make sure that the function they're calling is not allowed to raise an exception or errback.
Change History
comment:4 Changed 8 months ago by tom.prince
Needing fixing in d3c9e142c56bcc667d68b611d78bbc494452a3fd:
- buildbot.util.maildir.MaildirService
- buildbot.process.builder.Builder.updateStatusService
- buildbot.clients.tryclient.printStatus
- buildbot.process.metrics.periodicCheck
- buildbot.status.words.IrcStatusBot._keepAliveCall
- contrib/bzr_buildbot.py -- this should use the PollingChageSource instead
- contrib/googlecode_atom.py -- this should use the `PollingChangeSource? instead
comment:8 Changed 4 months ago by Tom Prince
Wrap looping calls in try-except blocks.
LoopingCall? cancels anything after it raises an exception, so catch them before they reach it.
Refs #1038.
Changeset: e394314c3d5e5be8f31022ec927d4be6b901f84d
comment:9 Changed 4 months ago by Tom Prince
Make contributed pollers use PollingChangeSource?.
Refs #1038.
Changeset: 305b227724a6bd5093f3e37b9be37af0818ac7f5
comment:11 Changed 3 months ago by Tom Prince
Wrap looping calls in try-except blocks.
LoopingCall? cancels anything after it raises an exception, so catch them before they reach it.
Refs #1038.
Changeset: e394314c3d5e5be8f31022ec927d4be6b901f84d
comment:12 Changed 3 months ago by Tom Prince
Make contributed pollers use PollingChangeSource?.
Refs #1038.
Changeset: 305b227724a6bd5093f3e37b9be37af0818ac7f5
comment:13 Changed 3 months ago by dustin
tom, is there anything left here?
comment:14 Changed 3 months ago by dustin
- Status changed from new to closed
- Resolution set to fixed
A grep shows nothing left. I added a spot of docs, but otherwise this is done.
comment:15 Changed 3 months ago by Dustin J. Mitchell
add warning about LoopingCall? and TimerService?; refs #1038
Changeset: ff2acf8cb58489a82811b4b5891f00ac36e63e35
comment:16 Changed 2 months ago by Dustin J. Mitchell
add warning about LoopingCall? and TimerService?; refs #1038
Changeset: ff2acf8cb58489a82811b4b5891f00ac36e63e35
![[Buildbot Logo]](/chrome/site/header-text-transparent.png)