upgrade fails to calculate if gnuradio-dev is installed

Bug #1898152 reported by Neil Leslie
454
This bug affects 57 people
Affects Status Importance Assigned to Milestone
ubuntu-release-upgrader (Ubuntu)
Fix Released
Undecided
Brian Murray
Focal
Fix Released
High
Brian Murray

Bug Description

Impact
------
Users with the package gnuradio-dev installed on their system are unable to upgrade from Ubuntu 18.04 LTS to Ubuntu 20.04 LTS as the upgrade is not calculatable. Given that changes to the python to python2 quirk have been previously made to ubuntu-release-upgrader we should ensure those previous test cases (LP: #1887544) still work. It isn't necessary to run the full upgrade go though, just calculating it should be sufficient.

Test Case
---------
[gnuradio-dev]
1) On an Ubuntu 18.04 LTS system install gnuradio-dev (or some set of packages which depend on it)
2) Run do-release-upgrade
3) Observe a message regarding the failure to calculate the upgrade

With the dist-upgrader from -proposed there will be no such failure to calculate the upgrade.

[python-dbg]
1) On an Ubuntu 18.04 LTS system install python-qt4-dbg (or some set of packages which depend on it)
2) Run do-release-upgrade
3) The upgrade will be calculable.

With the dist-upgrader from -proposed the upgrade should still be calculable.

[python-doc]
1) On an Ubuntu 18.04 LTS system install python-doc
2) Run do-release-upgrade
3) Say Y to removing obsolete packages
4) Observe that python-doc is still installed on the system

With the version of the dist-upgrader from -proposed python-doc will not be installed after the upgrade and python2-doc will be.

[python-dev]
1) On an Ubuntu 18.04 LTS system install python-dev
2) Run do-release-upgrade
3) Say Y to removing obsolete packages
4) Observe that python-dev is still installed on the system

With the version of the dist-ugprader from -proposed python-dev will not be installed after the upgrade and python2-dev will be installed. Additionally, python-dev-is-python2 will be installed.

Where Problems Could Occur
--------------------------
As mentioned previously we could cause working upgrade paths with python- packages installed to failed. However, test cases have been added which cover those scenarios.

SRU Team Special Note
---------------------
This has not been fixed in Groovy because the code is not relevant for the upgrade path to Groovy.

Original Description
--------------------
Fails complaining about possible issue with PPAs. When these are removed fails with no complaints about PPAs or anything else. Just asks for bug to be reported.

ProblemType: BugDistroRelease: Ubuntu 18.04
Package: ubuntu-release-upgrader-core 1:18.04.38
ProcVersionSignature: Ubuntu 4.15.0-118.119-generic 4.15.18
Uname: Linux 4.15.0-118-generic x86_64
ApportVersion: 2.20.9-0ubuntu7.17
Architecture: amd64
CrashDB: ubuntu
CurrentDesktop: ubuntu:GNOME
Date: Fri Oct 2 17:14:41 2020
InstallationDate: Installed on 2016-09-07 (1485 days ago)
InstallationMedia: Ubuntu 16.04 LTS "Xenial Xerus" - Release amd64 (20160420.1)
PackageArchitecture: allSourcePackage: ubuntu-release-upgrader
UpgradeStatus: Upgraded to bionic on 2020-10-02 (0 days ago)
VarLogDistupgradeTermlog:

Revision history for this message
Neil Leslie (neil-leslie-x) wrote :
Revision history for this message
Neil Leslie (neil-leslie-x) wrote :

Looks like a duplicate of Bug #1875523 and Bug #1875599.

Problem seems to be with python-is-python2 / python-minimal:

2020-10-03 08:28:12,888 INFO installing python-is-python2 because python-minimal was installed
2020-10-03 08:28:12,889 DEBUG Installing 'python-is-python2' (python-minimal was installed on the system)
2020-10-03 08:28:42,073 ERROR Dist-upgrade failed: 'E:Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.'

Revision history for this message
Brian Murray (brian-murray) wrote :

The gnuradio-dev package installed on your system is causing the upgrade to fail to calculate. If you want to upgrade before this bug is fixed please remove the gnuradio-dev package and then try the upgrade again.

summary: - upgrade fails
+ upgrade fails to calculate if gnuradio-dev is intalled
tags: added: rls-ff-incoming
Revision history for this message
Brian Murray (brian-murray) wrote : Re: upgrade fails to calculate if gnuradio-dev is intalled

The following bugs could be duplicates of this one:

 $ for alog in $(find . -name VarLogDistupgradeAptlog.txt); do grep -H -m1 'Investigating.*gnuradio-dev' $alog | sed 's/.*bug-\([0-9]\)/LP: #\1/'; done
LP: #1898109/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898112/VarLogDistupgradeAptlog.txt:Investigating (0) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1890878/VarLogDistupgradeAptlog.txt:Investigating (0) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898425/VarLogDistupgradeAptlog.txt:Investigating (4) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1897956/VarLogDistupgradeAptlog.txt:Investigating (0) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898399/VarLogDistupgradeAptlog.txt:Investigating (3) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898191/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898079/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1897724/VarLogDistupgradeAptlog.txt:Investigating (0) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898331/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1895028/VarLogDistupgradeAptlog.txt:Investigating (0) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1897368/VarLogDistupgradeAptlog.txt:Investigating (0) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898619/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1896344/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898350/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898341/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898216/VarLogDistupgradeAptlog.txt:Investigating (0) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898343/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898337/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898152/VarLogDistupgradeAptlog.txt:Investigating (0) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >
LP: #1898379/VarLogDistupgradeAptlog.txt:Investigating (1) gnuradio-dev:amd64 < 3.7.11-10 | 3.8.1.0~rc1-2build2 @ii umH Ib >

Balint Reczey (rbalint)
summary: - upgrade fails to calculate if gnuradio-dev is intalled
+ upgrade fails to calculate if gnuradio-dev is installed
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ubuntu-release-upgrader (Ubuntu):
status: New → Confirmed
Revision history for this message
Neil Leslie (neil-leslie-x) wrote :

Thanks for the suggestion. I did a complete removal of gnuradio-dev using synaptic package manager, and then tried doing an upgrade. Unfortunately I got the same result.

I then did a complete removal of gnuradio, and all installed libgnuradio packages (they were 3.7.11-10, if that is any use). I then tried a tried doing an upgrade. Unfortunately I got the same result.

I then did sudo apt-get autoremove from the command line. The following packages were removed:

The following packages will be REMOVED:
  libcodec2-0.7 libcomedi0 liblog4cpp5v5 libqt5designer5 libqt5help5 libqwt-qt5-6 librtlsdr0 libuhd003.010.003 libvolk1-bin libvolk1-dev libvolk1.3
  python-backports.functools-lru-cache python-certifi python-cheetah python-cycler python-dateutil python-decorator python-gobject python-matplotlib python-networkx
  python-olefile python-opengl python-pil python-pyparsing python-pyqt5 python-requests python-scipy python-sip python-subprocess32 python-tz python-urllib3
  python-yaml python-zmq rtl-sdr uhd-host

I then tried a tried doing an upgrade. Unfortunately I got the same result.

So, it looks like gnuradio-dev is not the only culprit. Any further suggestions welcome!

Revision history for this message
Neil Leslie (neil-leslie-x) wrote :

Having not had any success with removing gnuradio, I tried removing other things, including the PPAs I had removed before (I was aiming to make one change at a tie to pin down the issue). It turns out that I had a non-Ubunutu standard versions of sane and some associated libraries. When I forced the version to be the one in bionic-update I was able to update successfully.

Thanks for the assistance. As always when one find the solution one wonders why one did not do that first :-(

tags: added: fr-806
Lukas Märdian (slyon)
tags: removed: rls-ff-incoming
Changed in ubuntu-release-upgrader (Ubuntu Focal):
status: New → Confirmed
Revision history for this message
Turker YILMAZ (tyilmaz) wrote :

in my case, purging just the "gnuradio-dev" led to the successful upgrade calculation.

Revision history for this message
Robert DeShazer (redeshazer) wrote : Re: [Bug 1898152] Re: upgrade fails to calculate if gnuradio-dev is installed

Success! I have removed GNU radio, and successfully upgraded the OS. Thanks
for the assistance!

On Thu, Nov 26, 2020 at 1:40 PM Turker YILMAZ <email address hidden>
wrote:

> in my case, purging just the "gnuradio-dev" led to the successful
> upgrade calculation.
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (1901722).
> https://bugs.launchpad.net/bugs/1898152
>
> Title:
> upgrade fails to calculate if gnuradio-dev is installed
>
> Status in ubuntu-release-upgrader package in Ubuntu:
> Confirmed
> Status in ubuntu-release-upgrader source package in Focal:
> Confirmed
>
> Bug description:
> Fails complaining about possible issue with PPAs. When these are
> removed fails with no complaints about PPAs or anything else. Just
> asks for bug to be reported.
>
> ProblemType: Bug
> DistroRelease: Ubuntu 18.04
> Package: ubuntu-release-upgrader-core 1:18.04.38
> ProcVersionSignature: Ubuntu 4.15.0-118.119-generic 4.15.18
> Uname: Linux 4.15.0-118-generic x86_64
> ApportVersion: 2.20.9-0ubuntu7.17
> Architecture: amd64
> CrashDB: ubuntu
> CurrentDesktop: ubuntu:GNOME
> Date: Fri Oct 2 17:14:41 2020
> InstallationDate: Installed on 2016-09-07 (1485 days ago)
> InstallationMedia: Ubuntu 16.04 LTS "Xenial Xerus" - Release amd64
> (20160420.1)
> PackageArchitecture: all
> SourcePackage: ubuntu-release-upgrader
> UpgradeStatus: Upgraded to bionic on 2020-10-02 (0 days ago)
> VarLogDistupgradeTermlog:
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/1898152/+subscriptions
>
--
Robert DeShazer
KE5FTJ
903-733-1376

Revision history for this message
Daniel Pranner (danielpranner) wrote :

I removed gnuradio-dev too, upgrade works now.

Changed in ubuntu-release-upgrader (Ubuntu Focal):
importance: Undecided → High
tags: added: bugpattern-written
Revision history for this message
Brian Murray (brian-murray) wrote :

Disabling the _install_python_is_python2() quirk allows the upgrade to be calculated.

Changed in ubuntu-release-upgrader (Ubuntu):
status: Confirmed → In Progress
assignee: nobody → Brian Murray (brian-murray)
Changed in ubuntu-release-upgrader (Ubuntu Focal):
assignee: nobody → Brian Murray (brian-murray)
status: Confirmed → In Progress
description: updated
description: updated
Revision history for this message
Steve Langasek (vorlon) wrote : Please test proposed package

Hello Neil, or anyone else affected,

Accepted ubuntu-release-upgrader into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntu-release-upgrader/1:20.04.31 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 on 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, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

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

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in ubuntu-release-upgrader (Ubuntu Focal):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-focal
Revision history for this message
Brian Murray (brian-murray) wrote :

I tested the gnuradio-dev test case from the bug description using the version of the dist-upgrader from -proposed and the calculation succeeded.

2021-04-01 10:05:24,173 INFO Using config files '['./DistUpgrade.cfg.bionic']'
2021-04-01 10:05:24,173 INFO uname information: 'Linux clean-bionic-amd64 5.4.0-70-generic #78~18.04.1-Ubuntu SMP Sat Mar 20 14:10:07 UTC 2021 x86_64'
2021-04-01 10:05:24,556 INFO apt version: '1.6.12ubuntu0.2'
2021-04-01 10:05:24,556 INFO python version: '3.6.9 (default, Jan 26 2021, 15:33:00)
[GCC 8.4.0]'
2021-04-01 10:05:24,559 INFO release-upgrader version '20.04.31' started
2021-04-01 10:05:24,563 INFO locale: 'en_US' 'UTF-8'
2021-04-01 10:05:24,631 DEBUG Using 'DistUpgradeViewText' view
2021-04-01 10:05:24,671 DEBUG enable dpkg --force-overwrite
2021-04-01 10:05:24,697 DEBUG creating statefile: '/var/log/dist-upgrade/apt-clone_system_state.tar.gz'

Revision history for this message
Brian Murray (brian-murray) wrote :

I tested the python-dbg scenario with the dist-upgrader from -proposed and that scenario continues to work and the upgrade is calculable.

description: updated
Revision history for this message
Brian Murray (brian-murray) wrote :

I tested the python-doc test case with the version of the dist-upgrader from -proposed and it passed.

bdmurray@clean-bionic-amd64:~$ head /var/log/dist-upgrade/main.log
2021-04-01 12:01:19,195 INFO Using config files '['./DistUpgrade.cfg.bionic']'
2021-04-01 12:01:19,196 INFO uname information: 'Linux clean-bionic-amd64 5.4.0-70-generic #78~18.04.1-Ubuntu SMP Sat Mar 20 14:10:07 UTC 2021 x86_64'
2021-04-01 12:01:19,594 INFO apt version: '1.6.12ubuntu0.2'
2021-04-01 12:01:19,594 INFO python version: '3.6.9 (default, Jan 26 2021, 15:33:00)
[GCC 8.4.0]'
2021-04-01 12:01:19,597 INFO release-upgrader version '20.04.31' started
2021-04-01 12:01:19,601 INFO locale: 'en_US' 'UTF-8'
2021-04-01 12:01:19,671 DEBUG Using 'DistUpgradeViewText' view
2021-04-01 12:01:19,713 DEBUG enable dpkg --force-overwrite
2021-04-01 12:01:19,741 DEBUG creating statefile: '/var/log/dist-upgrade/apt-clone_system_state.tar.gz'
bdmurray@clean-bionic-amd64:~$ apt-cache policy python-doc
python-doc:
  Installed: (none)
  Candidate: (none)
  Version table:
bdmurray@clean-bionic-amd64:~$ apt-cache policy python2-doc
python2-doc:
  Installed: 2.7.17-2ubuntu4
  Candidate: 2.7.17-2ubuntu4
  Version table:
 *** 2.7.17-2ubuntu4 500
        500 http://ubuntu.osuosl.org/ubuntu focal/universe amd64 Packages
        500 http://ubuntu.osuosl.org/ubuntu focal/universe i386 Packages
        100 /var/lib/dpkg/status

Revision history for this message
Brian Murray (brian-murray) wrote :

The python-dev test case also continues to pass with the dist-upgrader from -proposed.

bdmurray@clean-bionic-amd64:/tmp/ubuntu-release-upgrader-j0n9zh89$ head /var/log/dist-upgrade/main.log
2021-04-01 13:38:43,120 INFO Using config files '['./DistUpgrade.cfg.bionic']'
2021-04-01 13:38:43,120 INFO uname information: 'Linux clean-bionic-amd64 5.4.0-70-generic #78~18.04.1-Ubuntu SMP Sat Mar 20 14:10:07 UTC 20
21 x86_64'
2021-04-01 13:38:43,503 INFO apt version: '1.6.12ubuntu0.2'
2021-04-01 13:38:43,503 INFO python version: '3.6.9 (default, Jan 26 2021, 15:33:00)
[GCC 8.4.0]'
2021-04-01 13:38:43,507 INFO release-upgrader version '20.04.31' started
2021-04-01 13:38:43,511 INFO locale: 'en_US' 'UTF-8'
2021-04-01 13:38:43,558 DEBUG Using 'DistUpgradeViewText' view
2021-04-01 13:38:43,597 DEBUG enable dpkg --force-overwrite
2021-04-01 13:38:43,620 DEBUG creating statefile: '/var/log/dist-upgrade/apt-clone_system_state.tar.gz'
bdmurray@clean-bionic-amd64:/tmp/ubuntu-release-upgrader-j0n9zh89$ apt-cache policy python-dev
python-dev:
  Installed: (none)
  Candidate: (none)
  Version table:
bdmurray@clean-bionic-amd64:/tmp/ubuntu-release-upgrader-j0n9zh89$ apt-cache policy python2-dev
python2-dev:
  Installed: 2.7.17-2ubuntu4
  Candidate: 2.7.17-2ubuntu4
  Version table:
 *** 2.7.17-2ubuntu4 500
        500 http://ubuntu.osuosl.org/ubuntu focal/universe amd64 Packages
        100 /var/lib/dpkg/status
bdmurray@clean-bionic-amd64:/tmp/ubuntu-release-upgrader-j0n9zh89$ apt-cache policy python-dev-is-python2
python-dev-is-python2:
  Installed: 2.7.17-4
  Candidate: 2.7.17-4
  Version table:
 *** 2.7.17-4 500
        500 http://ubuntu.osuosl.org/ubuntu focal/universe amd64 Packages
        500 http://ubuntu.osuosl.org/ubuntu focal/universe i386 Packages
        100 /var/lib/dpkg/status

tags: added: verification-done verification-done-focal
removed: verification-needed verification-needed-focal
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for ubuntu-release-upgrader has completed successfully and the package is now being 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.

Revision history for this message
Launchpad Janitor (janitor) wrote :

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

---------------
ubuntu-release-upgrader (1:20.04.31) focal; urgency=medium

  * DistUpgrade/DistUpgradeQuirks.py: use apt's problem resolver to better
    calculate upgrades where python is replaced by python-is-python2 thereby
    resolving a host of upgrade failures. Thanks to Julian for the initial
    patch. (LP: #1898152)

 -- Brian Murray <email address hidden> Wed, 31 Mar 2021 10:13:14 -0700

Changed in ubuntu-release-upgrader (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

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

---------------
ubuntu-release-upgrader (1:21.04.7) hirsute; urgency=medium

  * DistUpgrade/DistUpgradeController.py: Only rewrite archive.u.c and
    security.u.c to ports.
  * test/test_sources_list.py: update the tests for the changes regarding
    rewriting uris for ports.u.c.
  * Run pre-build.sh.

 -- Brian Murray <email address hidden> Thu, 08 Apr 2021 13:02:02 -0700

Changed in ubuntu-release-upgrader (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.