Bug#494158: [grub2] update-grub: uses wrong ordering algorithm (sorts 1.2.3-foo before 1.2.3.1-foo)

Felix Zielcke fzielcke at z-51.de
Sat Aug 9 15:16:21 UTC 2008


Am Samstag, den 09.08.2008, 16:54 +0200 schrieb Robert Millan:
> > 
> > It doestn't matter (at least for the lenny release) if this is a bug or
> > if that is intendet, we have to find a solution for this problem.
> 
> It worries me that combinations with -git are a problem.  -git wasn't handled
> at all before, so if it seems hard to get it right without our current time
> constraints, I'd rather leave it post-lenny.

Right we can leave that -rcN-gitN problem to post lenny :)

> My biggest concern is the regression (in comparison to etch).  If we remove
> the greedy 'g' as you proposed, I take it this gives us working code again?

Because we don't need to have a right -rcN-gitN -rcN -gitN ordering, I
suggest we use greedy.
The greedy makes only a difference for this -rcN-gitN (or -preN-gitN,
you get the idea) double problem.
I think it's better to have:

(with greedy)
Found linux image: /boot/vmlinuz-2.6.26-1-amd64
Found linux image: /boot/vmlinuz-2.6.26-1-amd64-rc1
Found linux image: /boot/vmlinuz-2.6.26-1-amd64-rc1-git1

instead of:
(without)
Found linux image: /boot/vmlinuz-2.6.26-1-amd64-rc1-git1
Found linux image: /boot/vmlinuz-2.6.26-1-amd64
Found linux image: /boot/vmlinuz-2.6.26-1-amd64-rc1

Robert, you're Code (with greedy) with dpkg is probable better, then the
one before.
We only have now a problem with the ordering of the same base version,
e.g. in my case vmlinuz-2.6.26-1-amd64
But we don't need to worry anymore about different base versions :)

So for lenny we just use the one you already made, with one little
change I suggest:

        a=`echo $a | sed -e "s/~test/~atest/"`
        b=`echo $b | sed -e "s/~test/~atest/"`

With such changes we even can reuse our priority system with dpkg :)
the first char(s) after ~ is our priority, in case we need to change it.
If we want to have -test below -rc then we have to :)






More information about the Pkg-grub-devel mailing list