package update-manager 1:0.93.1 failed to install/upgrade: ErrorMessage: SystemError in cache.commit(): E:Sub-process /usr/bin/dpkg returned an error code (1)

Bug #254953 reported by g-rob
254
This bug affects 4 people
Affects Status Importance Assigned to Milestone
freetds (Ubuntu)
Fix Released
High
Michael Vogt
Intrepid
Fix Released
Undecided
Unassigned
Jaunty
Fix Released
High
Michael Vogt

Bug Description

Binary package hint: update-manager

TEST CASE:
1. use hardy (e.g. server or chroot)
2. install tdsodbc
3. upgrade to intrepid (e.g. via "sudo do-release-upgrade -d")
4. verify that installing tdsodbc fails

5. enable intrepid-proposed
6. upgrade and verify that this fixes the tdsodbc failure

crashed when tdsodbc tried to remove a non-existant directory

ProblemType: Package
Architecture: i386
Date: Tue Aug 5 12:55:32 2008
DistroRelease: Ubuntu 8.10
ErrorMessage: ErrorMessage: SystemError in cache.commit(): E:Sub-process /usr/bin/dpkg returned an error code (1)

Package: update-manager 1:0.93.1
PackageArchitecture: all
SourcePackage: update-manager
Title: package update-manager 1:0.93.1 failed to install/upgrade: ErrorMessage: SystemError in cache.commit(): E:Sub-process /usr/bin/dpkg returned an error code (1)
Uname: Linux 2.6.26-5-generic i686

Revision history for this message
g-rob (robert-gibbon) wrote :
Revision history for this message
Michael Vogt (mvo) wrote :

Here is what is causing the error:

Setting up tdsodbc (0.82-3) ...
rmdir: failed to remove `/var/lib/odbc': No such file or directory
dpkg: error processing tdsodbc (--configure):
 subprocess post-installation script returned error exit status 1

I reassign.

Changed in update-manager:
importance: Undecided → High
status: New → Triaged
Revision history for this message
Ian Enticott (ian-enticott) wrote :

I created the folder it was trying to remove - so it could remove it!

Michael Vogt (mvo)
description: updated
Revision history for this message
Martin Pitt (pitti) wrote :

Accepted into intrepid-proposed, please test and give feedback here. Please see https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Changed in freetds:
status: New → Fix Committed
Revision history for this message
Martin Pitt (pitti) wrote :

Can't copy intrepid-proposed to jaunty, since jaunty has a never version. Michael, please apply SRU fix to jaunty, too.

Changed in freetds:
assignee: nobody → mvo
Revision history for this message
Ronnie Redd (cruzit) wrote :

I removed the package tdsodbc. Did the 8.04.1 to 8.10 upgrade. Afterwards it installed without incident.

Revision history for this message
Steve Langasek (vorlon) wrote :

This fix is already applied in the Debian version in jaunty:

freetds (0.82-4) unstable; urgency=low

  * Fix a typo in the freetds-common description, ugh
  * Versioned replaces of libct4 by freetds-common, since the current one
    obviously doesn't have overlapping files.
  * tdsodbc: check for /var/lib/odbc existence before removing it in the
    postinst, since there are cases where it won't exist on upgrade (i.e.,
    if the driver was never enabled in the first place). Closes: #493303.

 -- Steve Langasek <email address hidden> Sat, 02 Aug 2008 11:49:53 -0700

Changed in freetds:
status: Triaged → Fix Released
Revision history for this message
Martin Pitt (pitti) wrote :

Any testers on this?

Revision history for this message
Ronnie Redd (cruzit) wrote : Re: [Bug 254953] Re: package update-manager 1:0.93.1 failed to install/upgrade: ErrorMessage: SystemError in cache.commit(): E:Sub-process /usr/bin/dpkg returned an error code (1)

On Wednesday 28 January 2009 03:43:06 Martin Pitt wrote:
> Any testers on this?
>
I can get to it this weekend.
--
Thank You,
Ronnie Redd

Fingerprint:
7B9430791CE3066D944D1C8CB0A22F3A1B4998F0

Revision history for this message
CFMunster (cfmunster) wrote :

I got the same error Michael Vogt mentioned

rmdir: failed to remove `/var/lib/odbc': No such file or directory
dpkg: error processing tdsodbc (--configure):
 subprocess post-installation script returned error exit status 1

Synaptic then showed the package as installed.

I then created the /var/lib/odbc directory, dropped to the shell and ran:

apt-get install tdsodbc

And got this:

Reading package lists... Done
Building dependency tree
Reading state information... Done
tdsodbc is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0B of additional disk space will be used.
Setting up tdsodbc (0.82-3) ...

So it looks like adding that directory allowed apt to finish and report success.

Revision history for this message
Matt Walker (matthaeus123) wrote :

dpkg: parse error, in file `/var/lib/dpkg/available' near line 49729 package `liblockfile1':
 EOF after field name `Installed-'
E: Sub-process /usr/bin/dpkg returned an error code (2)

I get this message every time I try to install or uninstall a package.

Steve Langasek (vorlon)
description: updated
Revision history for this message
Albert Damen (albrt) wrote :

Successfully tested in a hardy pbuilder.

A. with only hardy and hardy-updates enabled in the pbuilder the update failed:
Setting up tdsodbc (0.82-3) ...
rmdir: failed to remove `/var/lib/odbc': No such file or directory
<snip>
The upgrade is completed but there were errors during the ugprade process.

B. with hardy, hardy-updates and hardy-proposed enabled in the pbuilder the update completed successfully:
Setting up tdsodbc (0.82-3ubuntu1) ...

Setting up update-inetd (4.30) ...
<snip>
System upgrade is complete.

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

This bug was fixed in the package freetds - 0.82-3ubuntu1

---------------
freetds (0.82-3ubuntu1) intrepid-proposed; urgency=low

  * debian/tdsodbc.postinst:
    - check if the directory actually exists before trying to
      remove it (LP: #254953)

 -- Michael Vogt <email address hidden> Mon, 03 Nov 2008 16:56:44 +0100

Changed in freetds:
status: Fix Committed → Fix Released
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.