DistUpgradeViewNonInteractive except hook hides the traceback

Bug #1632047 reported by Brian Murray on 2016-10-10
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
ubuntu-release-upgrader (Ubuntu)
High
Brian Murray
Xenial
Medium
Brian Murray
Yakkety
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 DistUpgradeViewNonInteractive(DistUpgradeView):
250 " non-interactive version of the upgrade view "
251 def __init__(self, datadir=None, logdir=None):
252 DistUpgradeView.__init__(self)
253 self.config = DistUpgradeConfig(".")
254 self._acquireProgress = NonInteractiveAcquireProgress()
255 self._installProgress = NonInteractiveInstallProgress(logdir)
256 self._opProgress = apt.progress.base.OpProgress()
257 sys.__excepthook__ = self.excepthook
258 def excepthook(self, type, value, traceback):
259 " on uncaught exceptions -> print error and reboot "
260 logging.exception("got exception '%s': %s " % (type, value))
261 #sys.excepthook(type, value, traceback)
262 self.confirmRestart()

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)
Brian Murray (brian-murray) wrote :

This should be SRU'ed to Trusty and Xenial for automatic upgrade testing.

Brian Murray (brian-murray) wrote :

Actually only to Xenial since we aren't testing upgrades from Precise to Trusty.

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
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-release-upgrader - 1:16.10.6

---------------
ubuntu-release-upgrader (1:16.10.6) yakkety; urgency=medium

  * DistUpgradeViewNonInteractive.py: When handling an exception also log what
    the traceback causing the exception was. (LP: #1632047)

 -- Brian Murray <email address hidden> Mon, 10 Oct 2016 11:05:13 -0700

Changed in ubuntu-release-upgrader (Ubuntu Yakkety):
status: In Progress → Fix Released
Changed in ubuntu-release-upgrader (Ubuntu Xenial):
status: Triaged → In Progress

Hello Brian, or anyone else affected,

Accepted ubuntu-release-upgrader into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntu-release-upgrader/1:16.04.17 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in ubuntu-release-upgrader (Ubuntu Xenial):
status: In Progress → Fix Committed
tags: added: verification-needed
Meenesh Kapadia (mhkapadia) wrote :

Regarding comment #2: This affects Trusty to Xenial updates, is there going to be a fix for Trusty as well?

On Thu, Oct 13, 2016 at 06:04:16PM -0000, Meenesh Kapadia wrote:
> Regarding comment #2: This affects Trusty to Xenial updates, is there
> going to be a fix for Trusty as well?

There doesn't need to be because the release upgrade process downloads a
tarball of ubuntu-release-upgrader for the release which you are going
to upgrade to, in this example Xenial.

--
Brian Murray

As a part of the Stable Release Updates quality process a search for Launchpad bug reports using the version of ubuntu-release-upgrader from xenial-proposed was performed and bug 1634357 was found. Please investigate this bug report to ensure that a regression will not be created by this SRU. In the event that this is not a regression remove the "verification-failed" tag from this bug report and add the tag "bot-stop-nagging" to bug 1634357 (not this bug). Thanks!

tags: added: verification-failed
tags: removed: verification-failed

As a part of the Stable Release Updates quality process a search for Launchpad bug reports using the version of ubuntu-release-upgrader from xenial-proposed was performed and bug 1636237 was found. Please investigate this bug report to ensure that a regression will not be created by this SRU. In the event that this is not a regression remove the "verification-failed" tag from this bug report and add the tag "bot-stop-nagging" to bug 1636237 (not this bug). Thanks!

tags: added: verification-failed
tags: removed: verification-failed
Brian Murray (brian-murray) wrote :

I tested an upgrade from Trusty to Xenial using the upgrader tarball from -proposed, version 16.04.17, with DistUpgradeViewNonInteractive and can confirm that there were no regressions. Subsequently, I'm going to mark this as verification-done.

tags: added: verification-done
removed: verification-needed

The verification of the Stable Release Update for ubuntu-release-upgrader has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-release-upgrader - 1:16.04.17

---------------
ubuntu-release-upgrader (1:16.04.17) xenial; urgency=medium

  * DistUpgradeViewNonInteractive.py: When handling an exception also log what
    the traceback causing the exception was. (LP: #1632047)

 -- Brian Murray <email address hidden> Mon, 10 Oct 2016 11:41:01 -0700

Changed in ubuntu-release-upgrader (Ubuntu Xenial):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers