On Wed, Mar 02, 2011 at 09:19:20AM +0100, Raphael Hertzog wrote: > On Tue, 01 Mar 2011, Guillem Jover wrote: > > As I mentioned on the IRC channel, and to Steve in particular when he > > mentioned the Ubuntu dpkg upload, the current db layout is defintely > > not the final one. It has several problems, mainly of fragility as you > > point out. > What's fragile? It's inconsistent between upgrade and fresh install but > it only becomes fragile when you want to fix that inconsistency which I'm > not convinced is required. > > The dpkg db (status, info control files, etc) should *never* get into > > a state from where it cannot be recovered, at least from "normal" > > operations. With the current multiarch db layout crossgrading dpkg > > (something that is currently supported, although with a --force > > option) will completely break dpkg. > > I might miss the obvious but how? There's one directory per arch and you can > certainly switch the native architecture from one to the other and the > references are still consistent. > The current implementation doesn't allow a cross-grade and might not do the > right thing if you force it but that is not an inherent problem with the db > layout but rather with the implementation. Architecture: all packages are treated the same as packages for the native arch, right? Including having all their metadata stored in the directory for the native architecture... which means in a cross-grade where the native architecture changes, dpkg will suddenly lose sight of all the native packages, now treating them as packages for the new "foreign" arch when they should be packages for the new "native" arch. So I think Guillem is right here. Sorry for not noticing this myself earlier. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer http://www.debian.org/ slangasek@ubuntu.com vorlon@debian.org
Attachment:
signature.asc
Description: Digital signature