Broken upgrade paths
Tom 'spot' Callaway
tcallawa at redhat.com
Thu Jul 20 05:00:06 UTC 2006
On Thu, 2006-07-20 at 00:51 -0400, Tom Lane wrote:
> Jesse Keating <jkeating at redhat.com> writes:
> > pkg FC5 devel
> > elinks elinks-0.11.0-2.3 elinks-0.11.1-4.1
> > gawk gawk-3.1.5-6.3 gawk-3.1.5-11
> > gnome-applet-vm gnome-applet-vm-0.0.7-2 gnome-applet-vm-0.1.0-0.rc1
> > lockdev lockdev-1.0.1-9.2.1 lockdev-1.0.1-10
> > lslk lslk-1.29-16.2.1 lslk-1.29-17
> > lsof lsof-4.77-1 lsof-4.78-1
> > procinfo procinfo-18-18.2.2 procinfo-18-19
> > procps procps-3.2.6-3.5 procps-3.2.7-3
> > psmisc psmisc-22.2-1.1 psmisc-22.2-5
> > readahead readahead-1.2-2 readahead-1.3-1
> > rsh rsh-0.17-34.1 rsh-0.17-35
> > sudo sudo-1.6.8p12-4.1 sudo-1.6.8p12-7
> > util-linux util-linux-2.13-0.20.4 util-linux-2.13-0.33
> > vlock vlock-1.3-22.2.1 vlock-1.3-23
> > words words-3.0-8.1 words-3.0-9
> > am-utils am-utils-6.1.3-1.2.1 am-utils-6.1.5-3
> I must need to go back to RPM school, because AFAICS the devel version
> should be considered newer in every one of those cases. What's the
> problem exactly?
RPM doesn't really treat these numbers as integers. Instead of treating
that . as a decimal separator for a whole number like our brain does, it
just treats it as a string.
so, 18.2.2 is > 19 for rpm, because it is a longer string.
(This is a drastic oversimplification, but it should serve the purpose)
The best way to avoid this problem? Keep your Release field as a whole
number, then rpm knows that 18 < 19.
Tom "spot" Callaway: Red Hat Technical Team Lead || GPG ID: 93054260
Fedora Extras Steering Committee Member (RPM Standards and Practices)
Aurora Linux Project Leader: http://auroralinux.org
Lemurs, llamas, and sparcs, oh my!
More information about the Fedora-maintainers