[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#831762: apt data corrupts with MergeList



Hi David,

On Tue, 2016-07-26 at 15:44 +0200, David Kalnischkies wrote:
> mhhhhhh. At leat in this run the
> /var/lib/apt/lists/httpredir.debian.org_debian_dists_testing_main_binary-
> amd64_Packages
> file is already broken before the 'apt update' call. The 404 errors make
> the update fail (at least for this source), so the "old" data is kept
> and parsed.
> 

Hmmmm. Before running the debug operation, I ran `apt policy`, which works if
the database is not corrupt (attached logs have the details)

So, I'm hopeful the i386 404 errors shouldn't effect the actual bug.

> That it is broken can also be seen by the rred call end with incorrect
> hashes, which apt detects, records as 'Ign' (ignored error) and proceeds
> with downloading the entire file a new, which it does and even with the
> right hashes this time – but the file remains in partial to be picked up
> by the next update call as its siblings failed and they can transition
> from partial/ to their final storage place in the parent lists/ if all
> were successful.
> 


> So, what we 'need' is a call in which apt produces breakage – aka: all
> files in /var/lib/apt/lists are nice and valid while after (a
> successful) apt call a broken file has slipped in creating errors.
> 


Attached is the new logs. Before start, the state of apt is clean.

Then on 1st run, apt update ran successfully, with the exception of i386 404
errors. And from what you explained above, given that there were 404 errors, the
update call was skipped and the downloaded files were left out in partial/
Which should mean that the state of apt, at this time, is the same as before the
`apt update` call, i.e. clean.

Then on the 2nd run, it failed for the testing amd64 Packages file.

Once the database is corrupt, the same apt policy command fails. I hope these
logs are useful.


rrs@chutzpah:/var/tmp$ sudo apt policy bash
E: Encountered a section with no Package: header
E: Problem with MergeList
/var/lib/apt/lists/httpredir.debian.org_debian_dists_testing_main_binary-
amd64_Packages
E: The package lists or status file could not be parsed or opened.
16:46 ___    _  => 100  


> The attached log shows apt behaving as intended – well, perhaps apt
> should be clever enough to remove broken files from its lists/ directory
> but thats a wishlist as it shouldn't end up in a situation in which it
> has broken files there in the first place…
-- 
Ritesh Raj Sarraf | http://people.debian.org/~rrs
Debian - The Universal Operating System

Attachment: apt-david-bug-2runs.txt.xz
Description: application/xz

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: