Package EVR problems in Fedora 2008-07-26

Kevin Kofler kevin.kofler at chello.at
Mon Jul 28 01:31:25 UTC 2008


Jesse Keating <jkeating <at> redhat.com> writes:
> I think you're too focused on the scenario where the same update is
> being pushed to all the branches, when that isn't always what is
> happening.

Well, it is a quite common case, I at least tend to do this often, and I think 
spamming maintainers with bogus EVR problem reports for this is really 
unhelpful, and may lead to them ignoring the real problems.

In a test run (of course with a script hacked not to spam maintainers or 
mailing lists, just me ;-) ) for a patch I have developed (see the end of this 
mail) for the checker (using the current real Koji data), a total of 30 bogus 
reports [1] were there (all removed with the fix)! That's out of a total of 76 
reports, i.e. 39% of the reports are bogus!

> It's quite possible that different updates are being pushed,
> could be at the same time, could be at different times, and those
> updates could be completely unrelated to each other.

The case where there is no matching update in dist-f9-updates-testing isn't 
affected by my patch at all, e.g. it still reports this one (where the F9 
update hasn't hit testing yet, so of course the script can't know it's pending 
for testing; but this is the exception rather than the norm, for example it 
just affects 1 package in this run):

iptables:
    dist-f8-updates-testing > dist-f9-updates (iptables-1.4.1.1-2.fc8 
iptables-1.4.1.1-1.fc9)

> Since this is just an informative mailing, I think it's safe to let the
> maintainer decide if there is an actual problem or not, just like they
> will when they've requested an update that will fix any N-V-R issues,
> but it just hasn't been pushed yet.

I think they will be really confused about whether the reports are real issues 
or not, and start ignoring the reports even if they complain about real issues.

> Also I'm trying to keep any "domain" knowledge out of the script so that
> it's more easily usable for other sites making use of koji.  The only
> real domain knowledge in it is the variable definitions at the top of
> the script and the one place where we assume <package>-owner@ is a valid
> contact for the package.

With my patch, no special domain information is needed, you only have to 
prepend a / to an updates tag following an updates-testing tag, i.e. invoke it 
like this:
./check-upgrade-paths.py f8-final dist-f8-updates \
dist-f8-updates-testing /dist-f9-updates dist-f9-updates-testing dist-f10

The way this is handled is described in the code:
prepending a / is special: A /B C means A will not be checked against B, but 
against the union of B and C
Only A is affected, everything preceding A will still be checked against B 
normally, as will B against C.

But enough talking, here's the patch:
http://repo.calcforge.org/f10/check-upgrade-paths.py.diff
Apologies if the code is suboptimal, Python is not my preferred programming 
language. ;-)

        Kevin Kofler

[1]
abiword:
    dist-f8-updates-testing > dist-f9-updates (1:abiword-2.6.4-2.fc8 
1:abiword-2.6.4-1.fc9)

augeas:
    dist-f8-updates-testing > dist-f9-updates (augeas-0.2.2-1.fc8 
augeas-0.2.1-1.fc9)

bluez-libs:
    dist-f8-updates-testing > dist-f9-updates (bluez-libs-3.35-1.fc8 
bluez-libs-3.32-1.fc9)

bluez-utils:
    dist-f8-updates-testing > dist-f9-updates (bluez-utils-3.35-3.fc8 
bluez-utils-3.32-1.fc9)

bzr-gtk:
    dist-f8-updates-testing > dist-f9-updates (bzr-gtk-0.94.0-5.fc8 
bzr-gtk-0.94.0-2.fc9)

collectl:
    dist-f8-updates-testing > dist-f9-updates (collectl-3.0.0-1.fc8 
collectl-2.6.4-1.fc9)

decibel-audio-player:
    dist-f8-updates-testing > dist-f9-updates (decibel-audio-player-0.10-2.fc8 
decibel-audio-player-0.10-1.fc9)

ext3grep:
    dist-f8-updates-testing > dist-f9-updates (ext3grep-0.7.0-1.fc8 
ext3grep-0.6.0-1.fc9)

ez-ipupdate:
    dist-f8-updates-testing > dist-f9-updates (ez-ipupdate-3.0.11-0.19.b8.fc8 
ez-ipupdate-3.0.11-0.18.b8.fc9)

flashrom:
    dist-f8-updates-testing > dist-f9-updates 
(flashrom-0-0.11.20080607svn3418.fc8 flashrom-0-0.9.20080517svn3332.fc9)

gamazons:
    dist-f8-updates-testing > dist-f9-updates (gamazons-0.83-3.fc8 
gamazons-0.83-2.fc9)

gyachi:
    dist-f8-updates-testing > dist-f9-updates (gyachi-1.1.35-16.fc8 
gyachi-1.1.35-6.fc9)

nautilus-sendto:
    dist-f8-updates-testing > dist-f9-updates (nautilus-sendto-1.0.1-1.fc8 
nautilus-sendto-1.0.0-1.fc9)

notification-daemon-engine-nodoka:
    dist-f8-updates-testing > dist-f9-updates 
(notification-daemon-engine-nodoka-0.1.0-3.fc8 
notification-daemon-engine-nodoka-0.1.0-2.fc9)

ocaml-json-static:
    dist-f8-updates-testing > dist-f9-updates (ocaml-json-static-0.9.6-5.fc8 
ocaml-json-static-0.9.6-4.fc9)

ocaml-openin:
    dist-f8-updates-testing > dist-f9-updates (ocaml-openin-20070524-4.fc8 
ocaml-openin-20070524-3.fc9)

ocaml-pa-monad:
    dist-f8-updates-testing > dist-f9-updates (ocaml-pa-monad-1.2.0-5.fc8 
ocaml-pa-monad-1.2.0-4.fc9)

ocaml-pgocaml:
    dist-f8-updates-testing > dist-f9-updates (ocaml-pgocaml-1.1-3.fc8 
ocaml-pgocaml-1.1-2.fc9)

pcmanfm:
    dist-f8-updates-testing > dist-f9-updates (pcmanfm-0.5-1.fc8 
pcmanfm-0.4.6.2-1.fc9)

pinot:
    dist-f8-updates-testing > dist-f9-updates (pinot-0.87-1.fc8 
pinot-0.86-1.fc9)

python-fedora:
    dist-f8-updates-testing > dist-f9-updates (python-fedora-0.3.3-1.fc8 
python-fedora-0.2.99.11.1-1.fc9)

qlandkarte:
    dist-f8-updates-testing > dist-f9-updates (qlandkarte-0.7.3-1.fc8 
qlandkarte-0.7.2-1.fc9)

rubygem-activeldap:
    dist-f8-updates-testing > dist-f9-updates (rubygem-activeldap-1.0.1-1.fc8 
rubygem-activeldap-0.10.0-10.fc9)

rubygem-hoe:
    dist-f8-updates-testing > dist-f9-updates (rubygem-hoe-1.7.0-1.fc8 
rubygem-hoe-1.5.1-5.fc9)

strigi:
    dist-f8-updates-testing > dist-f9-updates (strigi-0.5.11-1.fc8 
strigi-0.5.9-2.fc9)

tellico:
    dist-f8-updates-testing > dist-f9-updates (tellico-1.3.3-1.fc8 
tellico-1.3.2.1-1.fc9)

thunar-shares:
    dist-f8-updates-testing > dist-f9-updates (thunar-shares-0.16-1.fc8 
thunar-shares-0.12-1.fc9)

vala:
    dist-f8-updates-testing > dist-f9-updates (vala-0.3.4-2.fc8 
vala-0.3.4-1.fc9)

xenner:
    dist-f8-updates-testing > dist-f9-updates (xenner-0.41-1.fc8 
xenner-0.37-1.fc9)

xfce4-screenshooter-plugin:
    dist-f8-updates-testing > dist-f9-updates 
(xfce4-screenshooter-plugin-1.3.1-1.fc8 xfce4-screenshooter-plugin-1.2.0-1.fc9)




More information about the fedora-devel-list mailing list