On Tue, 21 Apr 2009, Panu Matilainen wrote:
On Tue, 21 Apr 2009, Richard Hughes wrote:
On Tue, 2009-04-21 at 08:35 -0400, Seth Vidal wrote:
Safe how? It's likely the package won't be rebuilt properly but it
shouldn't damage anything other than the pkg it is trying to rebuild.
Cool, that's what I wanted to know. PackageKit allows the user to cancel
the transaction when the package is being rebuilt, and I wondered if
this could cause the rpmdb corruption people are seeing. I guess this
isn't the case.
Well... that all depends whether the rpmdb is open when the packages are
getting rebuilt or not.
Or actually more to the point: sending SIGINT or SIGTERM is fine, rpm
blocks that when the db is open. But sending a SIGKILL (like PK does if
the backend doesn't terminate quickly) is just Russian roulette -
sometimes you get away with it, sometimes you dont.
If SIGKILL happens while rpm is running inside db4 code, with current rpm
+ db4 combination you'll get one of these:
rpmdb: Thread/process 16507/3086059200 failed: Thread died in Berkeley DB
library
error: db4 error(-30975) from dbenv->failchk: DB_RUNRECOVERY: Fatal error,
run database recovery
Previously (eg in F9) you'd just have a dead rpm which hangs when you try
to access it.
- Panu -
--
fedora-test-list mailing list
fedora-test-list@xxxxxxxxxx
To unsubscribe:
https://www.redhat.com/mailman/listinfo/fedora-test-list