Bug 441420

Summary: PackageKit deadlock on installs or updates, rpm database corrupted
Product: [Fedora] Fedora Reporter: Andrew Farris <lordmorgul>
Component: PackageKitAssignee: Robin Norwood <robin.norwood>
Status: CLOSED INSUFFICIENT_DATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: lordmorgul, richard, tim.lauridsen
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-04-21 09:35:02 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Andrew Farris 2008-04-07 22:43:33 UTC
+++ This bug was initially created as a clone of Bug #440190 +++

Description of problem:
PackageKit deadlock on installs or updates, rpm database corrupted

Version-Release number of selected component (if applicable):
PackageKit-0.1.11-1.fc9.i386
gnome-packagekit-0.1.11-1.fc9.i386

Additional info:

-- Additional comment from lordmorgul on 2008-04-03 03:15 EST --
I'm seeing something similar with PK trying to get update information 4 times at
once.  Just before this I had an install fail to complete like above comments,
then rebooted, checked my rpmdb which was corrupt (screen to come) and had to do:
rm /var/lib/rpm/__db*; rpm --rebuilddb

Afterward, I'm seeing these multiple operations occur at once.  I did an update
manually via Update System, but as soon as it completed I clicked the Refresh
Info button and it never completed.  The 4 copies of refresh were found then as
the UI was stuck.


-- Additional comment from lordmorgul on 2008-04-03 03:18 EST --
Created an attachment (id=300183)
pk-update-exception.png

Update error, exception during manually requested update operation.

-- Additional comment from lordmorgul on 2008-04-03 03:20 EST --
Created an attachment (id=300184)
rpmdb broken after install failure


-- Additional comment from lordmorgul on 2008-04-03 03:22 EST --
Created an attachment (id=300185)
PK-multiple-refresh-ops-2.png

Showing refresh operations attempting to happen at once, I tried canceling
these by opening each and selecting cancel one at a time, but none of them
managed to stop.  The VM eventually locked up completely.

-- Additional comment from lordmorgul on 2008-04-07 18:31 EST --
I'm seeing this issue continue on both i686 and x64 where about once a day I get
operations hanging (both yum and packagekit) due to the corrupted __db.xxx
files.  Removing them temporarily fixes the problem but it keeps returning.

Comment 1 Andrew Farris 2008-04-08 02:11:45 UTC
I think there may be two things going on here:
- packagekit getting operations stuck due to 'cannot access database'

For instance when this happens in gpk-application:
TI:18:46:07	TH:0x21115a0	FI:pk-extra.c	FN:pk_extra_set_database,601
 - trying to open database '/var/lib/PackageKit/extra-data.db'
TI:18:46:07	TH:0x21115a0	FI:pk-extra.c	FN:pk_extra_set_database,604
 - Can't open database: unable to open database file
...
 - emit progress-changed 101, 98, 52974, 0
TI:18:47:07	TH:0x21115a0	FI:pk-client.c	FN:pk_client_progress_changed_cb,621
 - emit progress-changed 101, 99, 53281, 0
TI:18:47:10	TH:0x21115a0	FI:pk-client.c	FN:pk_client_progress_changed_cb,621
 - emit progress-changed 101, 100, 56811, 0
TI:18:47:10	TH:0x21115a0	FI:pk-client.c	FN:pk_client_progress_changed_cb,621
 - emit progress-changed 101, 0, 56813, 0
TI:18:47:12	TH:0x21115a0	FI:pk-client.c	FN:pk_client_error_code_cb,862
 - emit error-code 16, Package cache was invalid and has been rebuilt.
TI:18:47:12	TH:0x21115a0	FI:gpk-application.c	FN:gpk_application_error_message,158
 - error No package cache is available.:Package cache was invalid and has been
rebuilt.

The multiple 'refresh software list' operations I see queued in the context menu
may be due to each of them getting hung with that problem?


The second issue is be the corrupted rpm __db files, and I'm not sure how thats
happening.  Seth Vidal mentioned checking whether yum-updatesd and packagekit
are both installed, but I don't have yum-updatesd installed.  When this happened
there was a different error dialog as shown in the screenshots above.

The exception dialog of attachment 300183 [details] was running PackageKit-0.1.10-1.  It
has not been seen again.

However, sometimes an operation (install/update, not just a software list
refresh) hangs in PK or yum.  When that happens no new operations will work. 
Removing the __db files will let new operations finish in that situation.

So I might have 3 problems in one bug here I guess.

Comment 2 Richard Hughes 2008-04-10 18:36:58 UTC
Yup, I think you might have some sort of rpm corruption going on here.

Comment 3 Richard Hughes 2008-04-18 11:56:05 UTC
Any more information you can add to this bugreport? It seems a bit dead in the
water at the moment.

Comment 4 Andrew Farris 2008-04-21 09:35:02 UTC
Unfortunately no it seems not to be a problem right now; I've not had to delete
the rpmdb files since around the 10th.  However.. there have been few updated
packages since then anyway with the freeze being over that time.  I think there
could still be some potential for problems since the rpm corruption had occurred
due to failed/partial updates applied, but lets hope it doesn't plague the
release, and wait and see post F9.

I still don't have this machine clean installed with Preview to clean out any
beta badness, and may not have time before release to do so.  But since several
small updates have succeeded in the last two days as it is => closed.