Hello Rossen, or anyone else affected,

Accepted apt into focal-proposed. The package will build now and be
available at https://launchpad.net/ubuntu/+source/apt/2.0.6 in a few
hours, and then in the -proposed repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed.  Your feedback will aid us getting this
update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested, what testing has been
performed on the package and change the tag from verification-needed-
focal to verification-done-focal. If it does not fix the bug for you,
please add a comment stating that, and change the tag to verification-
failed-focal. In either case, without details of your testing we will
not be able to proceed.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in
advance for helping!

N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.

** Changed in: apt (Ubuntu Focal)
       Status: New => Fix Committed

** Tags added: verification-needed verification-needed-focal

** Changed in: apt (Ubuntu Bionic)
       Status: New => Fix Committed

** Tags added: verification-needed-bionic

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to apt in Ubuntu.
https://bugs.launchpad.net/bugs/1921626

Title:
  size mismatch error if request of unknown size is larger than others

Status in apt package in Ubuntu:
  Fix Released
Status in apt source package in Bionic:
  Fix Committed
Status in apt source package in Focal:
  Fix Committed
Status in apt source package in Groovy:
  New
Status in apt source package in Hirsute:
  Fix Released

Bug description:
  [Impact]

  Downloads fail if:

  - there is at least one package each with Size and no size on a mirror
  - a package without a Size field is larger than a package with a Size field 
that's currently in the pipeline

  Also, this was silent, we need to add an error so people fix repos.
  For hirsute and earlier, this is a warning; for hirsute+1 it's an
  error so people's CI fails on them and doesn't "succeed with warnings"

  [Test plan]

  We have included a test case in the apt integration tests, which
  downloads three packages a, b, c where b is largest and has no Size
  field. With 2.2.2, it fails; with 2.2.3 it succceeds.

  We have also added a test case that a warning is shown.

  [Where problems could occur]
  Problems can only occur if you try to download packages without a Size field, 
as that is the only place code changes (adding code guarded with if ... Size 
... == 0; 0 being unknown size).

  [Other changes]
  2.2.3 includes the same change as 2.2.2ubuntu1

  [Original bug report]

  1) Ubuntu 18.04.5 LTS

  2) apt 1.6.12ubuntu0.2

  3) What you expected to happen

  I set a custom set of repositories in /etc/apt/sources.list and then I
  run "apt install <list of packages>". I expect the command to download
  and install the packages.

  4) What happened instead

  "apt install ..." fails during the download phase with "File has
  unexpected size ...."

  5) What I've established trying to debug the issue:

  - Disabling http pipelining resolves the issue: "apt 
-oAcquire::http::Pipeline-Depth=0 install ..."
  - All the packages, and repo metadata in the referenced repositories is 
correct
  - The issue is easily reproducible in my setup with different repositories
  - tcpdump shows that requests and responses are in the correct order, and 
contain the correct data

  More details about the issue:
  https://projects.theforeman.org/issues/32178

  With all the above in mind, it appears that this must be a bug in apt's http 
pipeline handling.
  It seem that apt is trying to match a request to do wrong response, and size 
doesn't match.

  I've attached an example log, where the error pops up for multiple
  packages, and they all appear to be compared to one size (86464
  bytes). That size is correct for one of the package being downloaded,
  but somehow apt is trying to match to multiple other packages.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1921626/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to