[CentOS] Damaged rpm database?

Sat Oct 6 10:27:22 UTC 2007
M. Fioretti <mfioretti at nexaima.net>

Hello,

while doing some maintenance on a Centos 4.4 box, I ran rpm -qa --last
and got:

error: rpmdb: damaged header #91 retrieved -- skipping.
...lots of lines identical to the one above and finally:

the_last_package_I_installed_yesterday.rpm
all the other rpms in reverse installation order

I've seen via google that this should mean there is a damaged rpm
database and it should be rebuilt with one or two command, however:

1) how can I find out _why_ the damage happened?
2) what are the right command and options to restore the database?

The examples I've found are 5+ years old, so I'm not really inclined
to run them as they are.

TIA,
	Marco