]> git.saurik.com Git - apt.git/commit - apt-pkg/acquire-worker.h
deal better with acquiring the same URI multiple times
authorDavid Kalnischkies <david@kalnischkies.de>
Mon, 15 Jun 2015 11:16:43 +0000 (13:16 +0200)
committerDavid Kalnischkies <david@kalnischkies.de>
Mon, 15 Jun 2015 21:34:05 +0000 (23:34 +0200)
commit08ea7806458de0995414eaae852e0a5985875642
tree97ac4a9db80bff757d94666df4db429fbf39cbbe
parent9f697f69cf1adaced476598cfe08ab03c76c5d18
deal better with acquiring the same URI multiple times

This is an unlikely event for indexes and co, but it can happen quiet
easily e.g. for changelogs where you want to get the changelogs for
multiple binary package(version)s which happen to all be built from a
single source.

The interesting part is that the Acquire system actually detected this
already and set the item requesting the URI again to StatDone - expect
that this is hardly sufficient: an Item must be Complete=true as well
to be considered truely done and that is only the tip of the ::Done
handling iceberg. So instead of this StatDone hack we allow QItems to be
owned by multiple items and notify all owners about everything now,
so that for the point of each item they got it downloaded just for them.
apt-pkg/acquire-item.cc
apt-pkg/acquire-item.h
apt-pkg/acquire-worker.cc
apt-pkg/acquire-worker.h
apt-pkg/acquire.cc
apt-pkg/acquire.h
test/integration/test-acquire-same-file-multiple-times [new file with mode: 0755]
test/integration/test-apt-get-download