profiles: 'check-for-collisions' filters out more non-collisions upfront.
authorLudovic Courtès <ludo@gnu.org>
Fri, 4 Jun 2021 21:44:09 +0000 (23:44 +0200)
committerLudovic Courtès <ludo@gnu.org>
Sat, 5 Jun 2021 21:39:25 +0000 (23:39 +0200)
commit2ac5e07a898a218532fd5e08b6c71fcfc2310ad8
tree1b716013b8cc74538b929e0f3109ad50e6e4d51f
parentf1e0e5fde34ff0e882247498ecf78106c73284d6
profiles: 'check-for-collisions' filters out more non-collisions upfront.

When running:

  GUIX_PROFILING="gc object-cache" ./pre-inst-env \
    guix install gnome -p /tmp/sdsdfsd --no-grafts -n

this reduces the number of object cache lookup from 115K to 96K, with a
slight CPU and memory usage reduction as well.

* guix/profiles.scm (check-for-collisions)[candidates]: Exclude entries
if their 'item' fields are eq?.
guix/profiles.scm