WorkerSuite.TestUpdatesAfterPeriod timed out
Bug #1607044 reported by
Curtis Hovey
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Fix Released
|
Medium
|
Reed O'Brien |
Bug Description
As seen in
http://
WorkerSuite.
worker_test.go:129:
c.Fatalf("timed out")
... Error: timed out
affects: | juju-core → juju |
Changed in juju: | |
status: | Triaged → In Progress |
assignee: | nobody → Reed O'Brien (reedobrien) |
Changed in juju: | |
status: | In Progress → Fix Committed |
Changed in juju: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
We found that clock.Advance could sometimes happen out of order and lead to this intermittent failure. We had several discussions about solutions in person at hte 9/2016 quality sprint and on IRC <https:/ /irclogs. ubuntu. com/2016/ 09/30/% 23juju- dev.txt>. We also added a wiki page: <https:/ /github. com/juju/ juju/wiki/ Intermittent- failures>.
To solve this issue we added a clock.WaitAdvance method that ensures _n_ timers exist on clock.waiting within a given period before actually advancing the time or exiting with an error. Additionally, we have added a check to the clock.Advance function that logs a debug error if the clock is advanced with no timers in clock.waiting. QA should be able to use this as a rule to tell us when/if other intermittent failures are hitting this same problem. We fully expect that there are other cases.