[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Update Conflicts and kernel bugs



Wade Hampton wrote:
> On my FC6 x86_64 laptop, yum crashed twice and I had to remove the
> __db* files and rebuild the RPM DB to get it to work.   This is a 4-5
> year old problem with RPM (first seen with RH7 or RH8 and the newer
> Berkley DB).

I asked:
> How long ago was that, and which kernel? It seems to have been due to an
> unfortunate interaction between the Berkeley DB and a kernel bug, which
> was fixed in 2.6.19.

Wade replied:
> It was on 2.6.18-1.2868.fc6 and was a few days ago (I had not updated
> it for a few weeks).

Um. I wrote the above from memory -- it might have been *during* 2.6.19
that the bug got fixed.

> How would a kernel bug cause a problem with an application like Berkeley DB?

As I understand it, there was a "race condition" where shared mmap'ed
pages that had been changed in memory (from what they were on disk)
might (occasionally) not be marked as needing to be written back to
disk.

I ought to emphasise -- I'm not a kernel hacker. I don't have the
knowledge to follow what the kernel was doing or why it lost data. It's
just that I know the kernel crew have found an obscure kernel corruption
bug, that it was strongly suspected that this caused problems with the
Berkeley database, and that I personally had experienced RPM database
corruption several times. Since fixed kernels came out, I haven't
encountered RPM database corruption, and the incidence of people
complaining about it on this list has gone *way* down.

So now, I'm trying to find examples of people who have experienced RPM
database corruption with a recent kernel. If I'm right, and it was a
kernel bug, then there won't be anyone (unless their hardware is wonky).

James.

-- 
E-mail:     james@ | Computer, did we bring batteries? Computer?
aprilcottage.co.uk |     -- Eileen Gunn, "Very Short Story"
                   |        http://wired.com/wired/archive/14.11/sixwords.html


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]