package libvirtodbc0 6.1.0-0ubuntu3 failed to install/upgrade:

Bug #529562 reported by Deniz Postaci
18
This bug affects 2 people
Affects Status Importance Assigned to Milestone
virtuoso-opensource (Ubuntu)
Fix Released
High
Jonathan Thomas
Lucid
Won't Fix
High
Jonathan Thomas

Bug Description

##SRU info added by Jonathan Thomas##
Impact: This package will always fail to install unless the user has odbcinst already installed.
Addressed by: Adding a dependency on the odbcinst package to libvirtodbc0
Testcase: with odbcinst uninstalled, do a "sudo apt-get install libvirtodbc0"
Regression potential: Zero, it's just adding a missing dependency.

TEST CASE:
1. install libvirtodbc0 and odbcinst
  $ sudo apt-get install libvirtodbc0 odbcinst
2. Answer 'Yes' to the debconf question 'Do you want to register the Virtuoso ODBC driver?'
If the debconf prompt doesn't popup run the command:
  $ dpkg-reconfigure -pmedium libvirtodbc0
3. remove odbcinst
  $ sudo apt-get remove odbcinst
4. remove libvirtodbc0
  $ sudo apt-get remove libvirtodbc0

Testing the upgrade is not possible in Lucid but you can reproduce the same behavior with the following steps:
1. install libvirtodbc0 and odbcinst
  $ sudo apt-get install libvirtodbc0 odbcinst
2. Answer 'Yes' to the debconf question 'Do you want to register the Virtuoso ODBC driver?'
If the debconf prompt doesn't popup run the command:
  $ dpkg-reconfigure -pmedium libvirtodbc0
3. remove odbcinst and libvirtodbc0
  $ sudo apt-get remove odbcinst libvirtodbc0
4. install libvirtodbc0
  $ sudo apt-get install libvirtodbc0

VERIFICATION SUCCEEDED:
- libvirtodbc0 install cleanly with or without odbcinst previously installed on the system.

##########################

Binary package hint: virtuoso-opensource

hi

ProblemType: Package
Architecture: i386
Date: Sun Feb 28 19:24:27 2010
DistroRelease: Ubuntu 10.04
ErrorMessage:
 ErrorMessage: subprocess installed post-installation script returned error exit status 127
InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release i386 (20091028.5)
NonfreeKernelModules: wl
Package: libvirtodbc0 6.1.0-0ubuntu3
ProcVersionSignature: Ubuntu 2.6.32-13.18-generic
SourcePackage: virtuoso-opensource
Title: package libvirtodbc0 6.1.0-0ubuntu3 failed to install/upgrade:
Uname: Linux 2.6.32-13-generic i686

Revision history for this message
Deniz Postaci (mdpostaci) wrote :
Revision history for this message
Obey Arthur Liu (arthurliu) wrote :

FYI, I believe this is fixed in the Debian package.

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

The libvirtodbc0 library is trying to use odbcinst inside its postinst file, and the library doesn't have a dependency on it.
Luckily it's not pulled in to the default install, or else everybody would get this error...
We can merge this package with Debian for 10.10 most likely, but I'll get on an SRU for lucid.

Changed in virtuoso-opensource (Ubuntu):
assignee: nobody → Jonathan Thomas (echidnaman)
importance: Undecided → High
status: New → Triaged
Changed in virtuoso-opensource (Ubuntu Lucid):
status: New → Triaged
importance: Undecided → High
assignee: nobody → Jonathan Thomas (echidnaman)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package virtuoso-opensource - 6.1.0-0ubuntu4

---------------
virtuoso-opensource (6.1.0-0ubuntu4) maverick; urgency=low

  * Add a dependency on odbcinst to libvirtodbc0. It needs to use it for its
    postinst script. (LP: #529562)
 -- Jonathan Thomas <email address hidden> Sun, 09 May 2010 08:40:18 -0400

Changed in virtuoso-opensource (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
Jonathan Thomas (echidnaman) wrote :
description: updated
Revision history for this message
Jonathan Thomas (echidnaman) wrote :

Sorry for subscribing ubuntu-archive. I had meant to subscribe ubuntu-mir. :)

Revision history for this message
Obey Arthur Liu (arthurliu) wrote : Re: [Bug 529562] Re: package libvirtodbc0 6.1.0-0ubuntu3 failed to install/upgrade:

Thanks!
http://alioth.debian.org/plugins/scmgit/cgi-bin/gitweb.cgi?p=pkg-virtuoso/pkg-virtuoso.git;a=commitdiff;h=bc7ab509dd2362321600349f845807dca26f3ae5

On Sun, May 9, 2010 at 2:37 PM, Jonathan Thomas <email address hidden>wrote:

> The libvirtodbc0 library is trying to use odbcinst inside its postinst
> file, and the library doesn't have a dependency on it.
> Luckily it's not pulled in to the default install, or else everybody would
> get this error...
> We can merge this package with Debian for 10.10 most likely, but I'll get
> on an SRU for lucid.
>
> ** Changed in: virtuoso-opensource (Ubuntu)
> Importance: Undecided => High
>
> ** Changed in: virtuoso-opensource (Ubuntu)
> Status: New => Triaged
>
> ** Changed in: virtuoso-opensource (Ubuntu)
> Assignee: (unassigned) => Jonathan Thomas (echidnaman)
>
> ** Also affects: virtuoso-opensource (Ubuntu Lucid)
> Importance: Undecided
> Status: New
>
> ** Changed in: virtuoso-opensource (Ubuntu Lucid)
> Status: New => Triaged
>
> ** Changed in: virtuoso-opensource (Ubuntu Lucid)
> Importance: Undecided => High
>
> ** Changed in: virtuoso-opensource (Ubuntu Lucid)
> Assignee: (unassigned) => Jonathan Thomas (echidnaman)
>
> --
> package libvirtodbc0 6.1.0-0ubuntu3 failed to install/upgrade:
> https://bugs.launchpad.net/bugs/529562
> You received this bug notification because you are subscribed to
> virtuoso-opensource in ubuntu.
>
> Status in “virtuoso-opensource” package in Ubuntu: Fix Released
> Status in “virtuoso-opensource” source package in Lucid: Triaged
>
> Bug description:
> ##SRU info added by Jonathan Thomas##
> Impact: This package will always fail to install unless the user has
> odbcinst already installed.
> Addressed by: Adding a dependency on the odbcinst package to libvirtodbc0
> Testcase: with odbcinst uninstalled, do a "sudo apt-get install
> libvirtodbc0"
> Regression potential: Zero, it's just adding a missing dependency.
> ##########################
>
> Binary package hint: virtuoso-opensource
>
> hi
>
> ProblemType: Package
> Architecture: i386
> Date: Sun Feb 28 19:24:27 2010
> DistroRelease: Ubuntu 10.04
> ErrorMessage:
> ErrorMessage: subprocess installed post-installation script returned error
> exit status 127
> InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release i386 (20091028.5)
> NonfreeKernelModules: wl
> Package: libvirtodbc0 6.1.0-0ubuntu3
> ProcVersionSignature: Ubuntu 2.6.32-13.18-generic
> SourcePackage: virtuoso-opensource
> Title: package libvirtodbc0 6.1.0-0ubuntu3 failed to install/upgrade:
> Uname: Linux 2.6.32-13-generic i686
>
>
>
>
>

Revision history for this message
Jonathan Riddell (jr) wrote :

Actually I think it's ubuntu-sru you want.

Jonathan: feel free to upload, it'll get held in lucid-proposed unapproved queue until an ubuntu-sru ACKs it

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

Hmm, quite. Uploading now.

Revision history for this message
Colin Watson (cjwatson) wrote : Please test proposed package

Accepted into lucid-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Changed in virtuoso-opensource (Ubuntu Lucid):
status: Triaged → Fix Committed
tags: added: verification-needed
Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :

I think that the problem is rather a configuration issue than a missing dependency.

If you look at the upgrade log:
- The reporter installed odbcinst and libvirt 6.1.0-0ubuntu2 (pre-release version of Lucid)
- Then he removed odbcinst somewhere between 2010-02-15 and 2010-02-28.
- And finally upgraded to libvirt 6.1.0-0ubuntu3 resulting in the installation failure.
The debconf value libvirtodbc0/register-odbc-driver was set to 'true' during the first installation and remained 'true' after the removal of odbcinst breaking the postinst and prerm scripts.

There is a logical problem there:
- in libvirtodbc0.config, it tests if odbcinst exists to ask and set the debconf value libvirtodbc0/register-odbc-driver
- then the maintainer scripts use this debconf value to decide if it must register the driver with odbcinst.
- So, if odbcinst is removed, and libvirtodbc0 is removed or upgraded afterwards, the prerm or postinst script will fail.

Firstly, we should be consistent here, and the fix would be to use the same logic in the postinst and prerm than in the .config file. I mean testing the availability of odbcinst before calling it.
Secondly, odbcinst is just a helper and should be recommended rather than a strong dependency.

Changed in virtuoso-opensource (Ubuntu Lucid):
status: Fix Committed → Incomplete
description: updated
Revision history for this message
Martin Pitt (pitti) wrote :

Jonathan, what do you think about Jean-Baptiste's testing from above? Should we remove/wontfix this SRU? Or is there something real to be fixed/tested here?

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

I don't think I know enough about the problem to fix it anymore.

Revision history for this message
Martin Pitt (pitti) wrote :

OK, thanks. I removed the SRU.

Changed in virtuoso-opensource (Ubuntu Lucid):
status: Incomplete → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.