ResumeAll doesn't resume 'aborting' transactions
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Triaged
|
Low
|
Unassigned |
Bug Description
One bit of digging from the production controller is that they have a few (~500) transactions that are in state 3 == aborting, some of which are more than a year old.
Looking into ResumeAlL():
func (r *Runner) ResumeAll() (err error) {
debugf("Resuming all unfinished transactions")
iter := r.tc.Find(
That means it looks for 1, 2, 4, but not state 3.
One of these *will* get applied if another transaction touches the document that has an aborting transaction, so they probably aren't serious, but it does mean that we have a growing number of transactions that won't ever be progressed to Aborted, which means they won't get pruned.
It may be as simple as just adding taborting to the above list.
This bug has not been updated in 2 years, so we're marking it Low importance. If you believe this is incorrect, please update the importance.