Bug 981314 - persistent delta does not match failures
Summary: persistent delta does not match failures
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: yum
Version: 19
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Packaging Maintenance Team
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-07-04 12:54 UTC by Tom Horsley
Modified: 2013-07-12 03:17 UTC (History)
11 users (show)

Fixed In Version: yum-3.4.3-100.fc19
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-07-12 03:17:21 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Pass arch of package to applydeltarpm (367 bytes, patch)
2013-07-04 13:46 UTC, Jonathan Dieter
no flags Details | Diff

Description Tom Horsley 2013-07-04 12:54:16 UTC
Description of problem:

I saw this a lot on f19 beta and attributed it to random beta repo problems, but now I've done a distro-sync and started getting "official" fedora 19 updates and the problem persists. Here's the latest example:

...

Finishing delta rebuilds of 118 package(s) (222 M)
delta does not match installed data==-        ] 2.9 MB/s |  96 MB     00:43 ETA 
delta does not match installed data==-        ] 3.0 MB/s | 103 MB     00:39 ETA 
delta does not match installed data===        ] 3.2 MB/s | 105 MB     00:36 ETA 
delta does not match installed data
delta does not match installed data====       ] 2.4 MB/s | 120 MB     00:42 ETA 
delta does not match installed data
corrupt delta: bad sequence3% [=========-     ] 3.3 MB/s | 142 MB     00:23 ETA 
delta does not match installed data======-    ] 3.6 MB/s | 158 MB     00:17 ETA 
Some delta RPMs failed to download or rebuild. Retrying..| 222 MB     00:00 ETA 
(1/14): dbus-libs-1.6.12-1.fc19.i686.rpm                   | 149 kB   00:00     
(2/14): cups-libs-1.6.2-12.fc19.i686.rpm                   | 346 kB   00:00     
(3/14): graphite2-1.2.2-2.fc19.i686.rpm                    |  82 kB   00:00     
(4/14): glibc-2.17-11.fc19.i686.rpm                        | 4.2 MB   00:01     
(5/14): gtk2-2.24.19-3.fc19.i686.rpm                       | 3.3 MB   00:01     
(6/14): libcurl-7.29.0-7.fc19.i686.rpm                     | 214 kB   00:00     
(7/14): nspr-4.10-2.fc19.i686.rpm                          | 122 kB   00:00     
(8/14): nss-3.15-5.fc19.i686.rpm                           | 838 kB   00:00     
(9/14): nss-softokn-3.15-3.fc19.i686.rpm                   | 296 kB   00:00     
(10/14): nss-softokn-freebl-3.15-3.fc19.i686.rpm           | 145 kB   00:00     
(11/14): nss-util-3.15-1.fc19.i686.rpm                     |  66 kB   00:00     
(12/14): openldap-2.4.35-5.fc19.i686.rpm                   | 330 kB   00:00     
(13/14): systemd-libs-204-9.fc19.i686.rpm                  | 152 kB   00:00     
(14/14): krb5-libs-1.11.3-2.fc19.i686.rpm                  | 787 kB   00:06     

...

[root@zooty ~]# yum clean packages
Loaded plugins: afteryum, fastestmirror, langpacks, refresh-packagekit
Cleaning repos: fedora google-chrome rpmfusion-free rpmfusion-free-updates
              : rpmfusion-nonfree rpmfusion-nonfree-updates updates
14 package files removed

Note that every one of the does not match failures were for a 32 bit rpm
(several of which are installed on my 64 bit system). It is almost as if it is attempting to apply 64 bit deltas to 32 bit rpms.

Also note that it apparently fails to cleanup after itself when it has to download real rpms as the "yum clean packages" says it removed the exact same number of files as it had to download.

I seem to get a few of these failures on every yum update that I run (always some different set of random packages that fail).

Version-Release number of selected component (if applicable):
I was probably running yum-3.4.3-95.fc19.noarch when I got those messages and the update installed yum-3.4.3-99.fc19.noarch

How reproducible:
I always seem to get a few of these every time.

Steps to Reproduce:
1.see above
2.
3.

Actual results:
deltas that don't match, time wasted downloading the useless delta then downloading the full rpm instead.

Expected results:
deltas that match.

Additional info:

See this thread in mailing list:
https://lists.fedoraproject.org/pipermail/users/2013-July/436962.html

Comment 1 Frank McCormick 2013-07-04 13:31:22 UTC
Much the same thing has been happening here. The difference is I am running 32 bit Fedora, not 64 bit.
I haven't checked whether Yum clean packages does the same thing as I usually run
yum clean all and never noticed what was being cleaned up.
It's a mystery to me - never could understand why disk files didn't match, as unlike my Debian Sid installation, there is no "locale cleanup" facility available in Fedora. (not to my knowledge anyway).

Comment 2 Jonathan Dieter 2013-07-04 13:46:27 UTC
Created attachment 768816 [details]
Pass arch of package to applydeltarpm

The problem is that the drpm format doesn't natively store the arch of the old package, so we have to pass it to applydeltarpm using the -a flag.

The attached patch should fix the problem.

Comment 3 Tom Horsley 2013-07-05 14:21:13 UTC
I just did another update and verified the failure to clean things up.

There were a couple of i686 rpms that failed to match, and the i686.drpm files really were laying around in the cache, but the i686.rpm files it downloaded when the delta didn't match were also laying around in the cache, and I definitely don't have it configured to preserve the downloaded rpms. None of the normally applied x86_64 rpms or drpms were still laying around after the yum update.

Comment 4 James Antill 2013-07-05 19:05:41 UTC
 Pushed upstream:

commit 46db3a390aa3ed3e14169dce2d11ff880ff13860
Author: Jonathan Dieter <jdieter>
Date:   Fri Jul 5 15:02:23 2013 -0400

    Pass arch of package to applydeltarpm. BZ 981314.

Comment 5 Fedora Update System 2013-07-09 09:13:53 UTC
yum-3.4.3-100.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/yum-3.4.3-100.fc19

Comment 6 Fedora Update System 2013-07-10 01:24:07 UTC
Package yum-3.4.3-100.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing yum-3.4.3-100.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-12658/yum-3.4.3-100.fc19
then log in and leave karma (feedback).

Comment 7 Fedora Update System 2013-07-12 03:17:21 UTC
yum-3.4.3-100.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.