Hi!

On Mon, 2009-09-07 at 09:43:37 +0200, Sven Joachim wrote:
> On 2009-09-07 09:11 +0200, Raphael Hertzog wrote:
> > On Sun, 06 Sep 2009, Petr Vandrovec wrote:
> > > Since today's update run dselect is completely confused and does not
> > > remember which packages are new and which are old - it lists all
> > > available and not installed packages as new, again and again. And

Hrmmmf, ok missed that one when doing the automatic forget change on
dpkg...

> > > not only that, it also marks some of them for installation although
> > > I do not want them (and some are not installable at all - for some
> > > reason it wants to install libsasl2 which is not installable
> > > together with libsasl2-2).  I see that it updates available &
> > > status, they seem to contain valid data, but on load it somehow
> > > ignores them.

The installability problems I assume is due to some transition going
on in unstable right now.

> > > Besides that it creates some strange /var/lib/dpkg/updates/tmp.i
> > > which is full of lines saying '##padding', but other than that I do
> > > not see what can be wrong, and unfortunately diff between 1.15.3.1
> > > and 1.15.4 is quite huge.

The “tmp.i” file is normal, yes.

> > You can use "git bisect" to isolate the problem more precisely. My bet
> > would be on the code that auto-cleans up the status database,
> 
> Certainly.  FWIW, the problem occurs also if only dpkg is upgraded to
> 1.15.4 and dselect stays at 1.15.3.1.
> 
> > maybe it applies by error on the available file as well and thus it
> > believes that all packages are new everytime?
> 
> Given that the available package is as big as ever and dselect shows
> every package as new even after you run "sync-available" (from the
> dctrl-tools package), this does not seem to be the case.

The problem is that dselect used the status file to track not seen
and seen not-installed packages as either want_unknown or want_purge
want states. And was setting all want_unknown packages to want_purge
on normal exit (not using X keyibindig).

This increases the status file, the parsing and processing time when
doing dependency resolutions and package iterations for everyone, and
just to be able to show new packages on dselect. The correct solution
here is not to revert the change, but to store the seen/not-seen
information in another place, in a similar way as how apt/aptitude do
it. And ideally in a unified place which all front-ends can share, so
we avoid duplication.

I'll put it on the pending stuff to discuss with the front-end
developers.

regards,
guillem



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to