[Aptitude-devel] Resolver tiering complete.
Daniel Burrows
dburrows at debian.org
Tue Mar 31 04:14:56 UTC 2009
The initial implementation of tiering in aptitude's dependency solver
is complete.
--------------- cut here ----------------
daniel at emurlahn:~/programming/aptitude/head$ ./src/aptitude -s full-upgrade
[snip]
The following actions will resolve these dependencies:
Keep the following packages at their current version:
libauthen-dechpwd-perl [2.002-4 (unstable, now)]
libauthen-passphrase-perl [0.005-3 (now)]
nvidia-glx [173.14.09-5 (now)]
nvidia-glx-dev [173.14.09-5 (now)]
Tier: Safe actions (10000)
Accept this solution? [Y/n/q/?] n
The following actions will resolve these dependencies:
Remove the following packages:
libglu1-mesa-dev
libsdl-gfx1.2-dev
libsdl-image1.2-dev
libsdl-mixer1.2-dev
libsdl-net1.2-dev
libsdl-ttf2.0-dev
libsdl1.2-dev
libsmpeg-dev
nvidia-glx-dev
Keep the following packages at their current version:
libauthen-dechpwd-perl [2.002-4 (unstable, now)]
libauthen-passphrase-perl [0.005-3 (now)]
nvidia-glx [173.14.09-5 (now)]
Tier: Remove packages (30000)
Accept this solution? [Y/n/q/?]
--------------- cut here ----------------
There's a serious lingering problem with the resolver, though. After
implementing all this stuff, I noticed that the GUI upgrade calculator
was massively slow on my computer (in fact, I thought at first that it
was failing to terminate). "safe-upgrade" worked fine.
I thought at first that this might be a problem with how it sets up
the scores, or with the code to reason about a hypothetical state.
That led me to find several subtle bugs in how aptitude scores
solutions, but not the cause. Then I realized that there's one more
difference between the two upgrade calculators: the GUI one doesn't
remove unused packages before it calculates the upgrade. I tried
disabling this in "safe-upgrade" (by setting Aptitude::Delete-Unused to
"false") and WOW did safe-upgrade get slow. It looks like there's a
fairly serious issue here, but I haven't been able to characterize it
yet. I'm also not 100% sure that this is the only problem; it seems
like even taking this into account, the GUI upgrade calculator is a lot
slower than the command-line one.
I'll look at this more tomorrow.
Daniel
More information about the Aptitude-devel
mailing list