[Rpm-maint] [PATCH] New file conflict check implementation

Florian Festi ffesti at redhat.com
Thu Nov 20 10:25:51 UTC 2008


Hi!

I've been working on reimplementing the way files from the transaction
are checked against the rpmdb. This used to be done per package. This
has disadvantages for the rare cases that packages in both the ts and
the rpmdb share files with the same basename. This patch set generates a
global list of all files in the rpmdb with the basenames from the
transaction. This makes sure we load each package from the rpmdb only once.

To be able to do that I extended the rpmhash datatype to also work as a
set and exposed some functions from the rpmdb to the API. The first one
adds some more uglyness to a already ugly and complicated part, but the
only alternative would be to copy the code and then do the adjustments
(more or less just deleting stuff). For the additional functions from
the rpmdb it might be worth cnsidering moving them into rpmdb_internal.h
- comments and opinions are welcome.

There are still some rough edges like missing comments, poor commit
messages and missing disaster handling. So if it breaks you keep the
pieces. Nevertheless - comments are welcome.

Florian




-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Support-leaving-HTDATATYPE-undefined-to-use-hash-as.patch
Type: text/x-patch
Size: 5342 bytes
Desc: not available
Url : http://lists.rpm.org/pipermail/rpm-maint/attachments/20081120/1d110bd9/attachment-0007.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Add-rpmdbExtendIterator-to-do-repeated-searches.patch
Type: text/x-patch
Size: 1839 bytes
Desc: not available
Url : http://lists.rpm.org/pipermail/rpm-maint/attachments/20081120/1d110bd9/attachment-0008.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-Expose-rpmdbSortIterator-in-the-API.patch
Type: text/x-patch
Size: 1352 bytes
Desc: not available
Url : http://lists.rpm.org/pipermail/rpm-maint/attachments/20081120/1d110bd9/attachment-0009.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-redo-file-conflicts-against-the-rpmdb-forth-try.patch
Type: text/x-patch
Size: 16647 bytes
Desc: not available
Url : http://lists.rpm.org/pipermail/rpm-maint/attachments/20081120/1d110bd9/attachment-0010.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-API-for-accessing-and-creating-fi-replaced.patch
Type: text/x-patch
Size: 3494 bytes
Desc: not available
Url : http://lists.rpm.org/pipermail/rpm-maint/attachments/20081120/1d110bd9/attachment-0011.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0006-switch-to-new-rpmfiReplaced-API.patch
Type: text/x-patch
Size: 1959 bytes
Desc: not available
Url : http://lists.rpm.org/pipermail/rpm-maint/attachments/20081120/1d110bd9/attachment-0012.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0007-Reenable-creation-of-fi-replaced.patch
Type: text/x-patch
Size: 2479 bytes
Desc: not available
Url : http://lists.rpm.org/pipermail/rpm-maint/attachments/20081120/1d110bd9/attachment-0013.bin 


More information about the Rpm-maint mailing list