DistUpgradeViewNonInteractive except hook hides the traceback
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ubuntu-release-upgrader (Ubuntu) |
Fix Released
|
High
|
Brian Murray | ||
Xenial |
Fix Released
|
Medium
|
Brian Murray | ||
Yakkety |
Fix Released
|
High
|
Brian Murray |
Bug Description
Test Case
---------
This is a pretty obvious fix to just log more information when there is a crash.
Regression Potential
-------
Little as we are just logging more information.
The non-interactive version of the dist upgrade process has its own special except hook handler, but that handler ends up hiding the traceback. This should be fixed so that we have more details about why the upgrade failed. Here's the code in question:
249 class DistUpgradeView
250 " non-interactive version of the upgrade view "
251 def __init__(self, datadir=None, logdir=None):
252 DistUpgradeView
253 self.config = DistUpgradeConf
254 self._acquirePr
255 self._installPr
256 self._opProgress = apt.progress.
257 sys.__excepthook__ = self.excepthook
258 def excepthook(self, type, value, traceback):
259 " on uncaught exceptions -> print error and reboot "
260 logging.
261 #sys.excepthook
262 self.confirmRes
Notice nothing is done with traceback in line 260.
Related branches
Changed in ubuntu-release-upgrader (Ubuntu): | |
status: | New → Triaged |
importance: | Undecided → High |
Changed in ubuntu-release-upgrader (Ubuntu Yakkety): | |
assignee: | nobody → Brian Murray (brian-murray) |
description: | updated |
Changed in ubuntu-release-upgrader (Ubuntu Xenial): | |
status: | New → Triaged |
importance: | Undecided → Medium |
assignee: | nobody → Brian Murray (brian-murray) |
Changed in ubuntu-release-upgrader (Ubuntu Yakkety): | |
status: | Triaged → In Progress |
Changed in ubuntu-release-upgrader (Ubuntu Xenial): | |
status: | Triaged → In Progress |
tags: | removed: verification-failed |
tags: | removed: verification-failed |
This should be SRU'ed to Trusty and Xenial for automatic upgrade testing.