[Rpm-maint] [rpm-software-management/rpm] Enhance the recoverability and location of database exceptions (Issue #2828)

Panu Matilainen notifications at github.com
Thu Feb 8 10:47:40 UTC 2024


> I think the database is abnormal because the verification fails when I run the rpm command, 

You mean 'rpm --verify'? What errors?

> or the "rpm -qa" command cannot find the kernel package, but the "rpm -q" command can find the kernel package. According to the result, the problem is caused by the database. 

If -qa doesn't match with -q then the indexes are out of sync, ie the database is indeed inconsistent then. That can happen with ndb, but AIUI it should also detect that and fix itself. Except of course if it can't, ie you run queries as an unprivileged user who cannot write to the rpmdb.

The sqlite backend is transactional so you're never supposed to see such a state there, it's all handled transparently by sqlite. So if you have an environment where rpm gets forcibly killed at random times a lot then that may be something to try out. However, rpm is NOT suited well for such an environment. At all. Rpm WILL leave orphan files around if such things happen, and there's currently no attempt to try to track them.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/issues/2828#issuecomment-1933809984
You are receiving this because you are subscribed to this thread.

Message ID: <rpm-software-management/rpm/issues/2828/1933809984 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20240208/d8ed98d8/attachment.html>


More information about the Rpm-maint mailing list