Debian Bug report logs - #659505
Switching to identical package for other arch treated as disappearance

version graph

Package: dpkg; Maintainer for dpkg is Dpkg Developers <debian-dpkg@lists.debian.org>; Source for dpkg is src:dpkg.

Reported by: Ben Hutchings <ben@decadent.org.uk>

Date: Sat, 11 Feb 2012 17:09:05 UTC

Severity: normal

Found in version dpkg/1.16.2~wipmultiarch

Fixed in version 1.16.2

Done: Guillem Jover <guillem@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Dpkg Developers <debian-dpkg@lists.debian.org>:
Bug#659505; Package dpkg. (Sat, 11 Feb 2012 17:09:08 GMT) Full text and rfc822 format available.

Acknowledgement sent to Ben Hutchings <ben@decadent.org.uk>:
New Bug report received and forwarded. Copy sent to Dpkg Developers <debian-dpkg@lists.debian.org>. (Sat, 11 Feb 2012 17:09:08 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Ben Hutchings <ben@decadent.org.uk>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: Switching to identical package for other arch treated as disappearance
Date: Sat, 11 Feb 2012 17:07:39 +0000
Package: dpkg
Version: 1.16.2~wipmultiarch
Severity: normal

I usually build linux-2.6 on amd64, but also test the binaries on an
i386 installation.  I've been installing with --force-architecture up
until now.  APT would basically ignore the foreign package; dpkg was
also happy to do this 'upgrade' to the same version with architecture
i386.

However, with multi-arch, this happens:

$ sudo apt-get install linux-image-3.2.0-1-amd64:i386 linux-image-3.2.0-1-amd64:amd64-
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  python-cssutils-doc python-encutils libaccess-bridge-java-jni xulrunner-9.0
  libaccess-bridge-java libboost-thread1.48.0 libboost-serialization1.48.0
  libboost-date-time1.48.0 libcupsdriver1 libaudiofile0 libmozjs8d libyajl1
Use 'apt-get autoremove' to remove them.
Suggested packages:
  linux-doc-3.2
The following packages will be REMOVED:
  linux-image-3.2.0-1-amd64:amd64
The following NEW packages will be installed:
  linux-image-3.2.0-1-amd64
0 upgraded, 1 newly installed, 1 to remove and 174 not upgraded.
Need to get 23.1 MB of archives.
After this operation, 606 kB disk space will be freed.
Do you want to continue [Y/n]? 
Get:1 http://cdn.debian.net/debian/ sid/main linux-image-3.2.0-1-amd64 i386 3.2.4-1 [23.1 MB]
Fetched 23.1 MB in 58s (396 kB/s)                                              
Preconfiguring packages ...
(Reading database ... 223126 files and directories currently installed.)
Removing linux-image-3.2.0-1-amd64 ...
Ok, proceeding with removing running kernel image.
Examining /etc/kernel/prerm.d.
run-parts: executing /etc/kernel/prerm.d/dkms 3.2.0-1-amd64 /boot/vmlinuz-3.2.0-1-amd64
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.2.0-1-amd64 /boot/vmlinuz-3.2.0-1-amd64
update-initramfs: Deleting /boot/initrd.img-3.2.0-1-amd64
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.2.0-1-amd64 /boot/vmlinuz-3.2.0-1-amd64
Generating grub.cfg ...
Found background image: .background_cache.png
Found linux image: /boot/vmlinuz-2.6.32-5-amd64
Found initrd image: /boot/initrd.img-2.6.32-5-amd64
Found iPXE image: /ipxe.lkrn
File descriptor 46 (/var/log/apt/history.log) leaked on lvs invocation. Parent PID 8501: /bin/sh
grep: input file `/boot/grub/grub.cfg.new' is also the output
done
The link /vmlinuz is a damaged link
Removing symbolic link vmlinuz 
You may need to re-run your boot loader
The link /initrd.img is a damaged link
Removing symbolic link initrd.img 
You may need to re-run your boot loader
Selecting previously unselected package linux-image-3.2.0-1-amd64.
(Reading database ... 219676 files and directories currently installed.)
Unpacking linux-image-3.2.0-1-amd64 (from .../linux-image-3.2.0-1-amd64_3.2.4-1_i386.deb) ...
(Noting disappearance of linux-image-3.2.0-1-amd64, which has been completely replaced.)
The following package disappeared from your system as
all files have been overwritten by other packages:
  linux-image-3.2.0-1-amd64
Note: This is done automatic and on purpose by dpkg.

Despite what the final message says, the files for
linux-image-3.2.0-1-amd64:i386 are installed at this point.

The dpkg.log for this:

2012-02-11 16:52:03 startup packages remove
2012-02-11 16:52:03 status installed linux-image-3.2.0-1-amd64 3.2.2-1
2012-02-11 16:52:03 remove linux-image-3.2.0-1-amd64 3.2.2-1 <none>
2012-02-11 16:52:03 status half-configured linux-image-3.2.0-1-amd64 3.2.2-1
2012-02-11 16:52:11 status half-installed linux-image-3.2.0-1-amd64 3.2.2-1
2012-02-11 16:52:18 status config-files linux-image-3.2.0-1-amd64 3.2.2-1
2012-02-11 16:52:19 status config-files linux-image-3.2.0-1-amd64 3.2.2-1
2012-02-11 16:52:20 startup archives unpack
2012-02-11 16:52:20 install linux-image-3.2.0-1-amd64 <none> 3.2.4-1
2012-02-11 16:52:20 status half-installed linux-image-3.2.0-1-amd64 3.2.4-1
2012-02-11 16:52:26 disappear linux-image-3.2.0-1-amd64 3.2.2-1 3.2.2-1
2012-02-11 16:52:26 status not-installed linux-image-3.2.0-1-amd64 <none>
2012-02-11 16:52:26 status unpacked linux-image-3.2.0-1-amd64 3.2.4-1
2012-02-11 16:52:26 status unpacked linux-image-3.2.0-1-amd64 3.2.4-1

Ben.

-- System Information:
Debian Release: wheezy/sid
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'proposed-updates'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: i386 (x86_64)

Kernel: Linux 3.2.0-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages dpkg depends on:
ii  libbz2-1.0   1.0.6-1
ii  libc6        2.13-26
ii  libselinux1  2.1.0-4.1
ii  tar          1.26-4
ii  xz-utils     5.1.1alpha+20110809-3
ii  zlib1g       1:1.2.3.4.dfsg-3

dpkg recommends no packages.

Versions of packages dpkg suggests:
ii  apt  0.8.15.9

-- no debconf information




Information forwarded to debian-bugs-dist@lists.debian.org, Dpkg Developers <debian-dpkg@lists.debian.org>:
Bug#659505; Package dpkg. (Tue, 06 Mar 2012 04:45:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Guillem Jover <guillem@debian.org>:
Extra info received and forwarded to list. Copy sent to Dpkg Developers <debian-dpkg@lists.debian.org>. (Tue, 06 Mar 2012 04:45:04 GMT) Full text and rfc822 format available.

Message #10 received at 659505@bugs.debian.org (full text, mbox):

From: Guillem Jover <guillem@debian.org>
To: Ben Hutchings <ben@decadent.org.uk>, 659505@bugs.debian.org
Subject: Re: Bug#659505: Switching to identical package for other arch treated as disappearance
Date: Tue, 6 Mar 2012 05:42:17 +0100
On Sat, 2012-02-11 at 17:07:39 +0000, Ben Hutchings wrote:
> Package: dpkg
> Version: 1.16.2~wipmultiarch
> Severity: normal
> 
> I usually build linux-2.6 on amd64, but also test the binaries on an
> i386 installation.  I've been installing with --force-architecture up
> until now.  APT would basically ignore the foreign package; dpkg was
> also happy to do this 'upgrade' to the same version with architecture
> i386.
> 
> However, with multi-arch, this happens:
> 
> $ sudo apt-get install linux-image-3.2.0-1-amd64:i386 linux-image-3.2.0-1-amd64:amd64-
[...]

> Despite what the final message says, the files for
> linux-image-3.2.0-1-amd64:i386 are installed at this point.

This should be fixed now as a side effect of the proper cross-grading
support I implemented some weeks ago, the bogus disappearing was due to
the previous broken in-core db layout. I just tested this locally now to
make sure that's the case though, here's the session (on amd64 though,
but it should be equivalent):

$ dpkg --print-architecture
amd64
$ dpkg --print-foreign-architectures
i386
$ dpkg-query -f '${db:Status-Abbrev} ${Package} ${Architecture} ${Version}\n' -W linux-image-3.2.0-2-amd64
No packages found matching linux-image-3.2.0-2-amd64.
$ dpkg -i linux-image-3.2.0-2-amd64_3.2.9-1_amd64.deb
Selecting previously unselected package linux-image-3.2.0-2-amd64.
(Reading database ... 15193 files and directories currently installed.)
Unpacking linux-image-3.2.0-2-amd64 (from linux-image-3.2.0-2-amd64_3.2.9-1_amd64.deb) ...
Setting up linux-image-3.2.0-2-amd64 (3.2.9-1) ...
Running depmod.
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 3.2.0-2-amd64 /boot/vmlinuz-3.2.0-2-amd64
[...run-parts output...]
$ dpkg-query -f '${db:Status-Abbrev} ${Package} ${Architecture} ${Version}\n' -W linux-image-3.2.0-2-amd64
ii  linux-image-3.2.0-2-amd64 amd64 3.2.9-1
$ dpkg -i linux-image-3.2.0-2-amd64_3.2.9-1_i386.deb
(Reading database ... 18646 files and directories currently installed.)
Preparing to replace linux-image-3.2.0-2-amd64 3.2.9-1 (using linux-image-3.2.0-2-amd64_3.2.9-1_i386.deb) ...
Unpacking replacement linux-image-3.2.0-2-amd64 ...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.2.0-2-amd64 /boot/vmlinuz-3.2.0-2-amd64
Setting up linux-image-3.2.0-2-amd64 (3.2.9-1) ...
Running depmod.
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 3.2.0-2-amd64 /boot/vmlinuz-3.2.0-2-amd64
[...run-parts output...]
$ dpkg-query -f '${db:Status-Abbrev} ${Package} ${Architecture} ${Version}\n' -W linux-image-3.2.0-2-amd64
ii  linux-image-3.2.0-2-amd64 i386 3.2.9-1

regards,
guillem




Reply sent to Guillem Jover <guillem@debian.org>:
You have taken responsibility. (Sat, 24 Mar 2012 16:57:14 GMT) Full text and rfc822 format available.

Notification sent to Ben Hutchings <ben@decadent.org.uk>:
Bug acknowledged by developer. (Sat, 24 Mar 2012 16:57:14 GMT) Full text and rfc822 format available.

Message #15 received at 659505-done@bugs.debian.org (full text, mbox):

From: Guillem Jover <guillem@debian.org>
To: Ben Hutchings <ben@decadent.org.uk>, 659505-done@bugs.debian.org
Subject: Re: Bug#659505: Switching to identical package for other arch treated as disappearance
Date: Sat, 24 Mar 2012 17:53:16 +0100
Version: 1.16.2

On Tue, 2012-03-06 at 05:42:17 +0100, Guillem Jover wrote:
> On Sat, 2012-02-11 at 17:07:39 +0000, Ben Hutchings wrote:
> > Package: dpkg
> > Version: 1.16.2~wipmultiarch
> > Severity: normal
> > 
> > I usually build linux-2.6 on amd64, but also test the binaries on an
> > i386 installation.  I've been installing with --force-architecture up
> > until now.  APT would basically ignore the foreign package; dpkg was
> > also happy to do this 'upgrade' to the same version with architecture
> > i386.
> > 
> > However, with multi-arch, this happens:
> > 
> > $ sudo apt-get install linux-image-3.2.0-1-amd64:i386 linux-image-3.2.0-1-amd64:amd64-
> [...]
> 
> > Despite what the final message says, the files for
> > linux-image-3.2.0-1-amd64:i386 are installed at this point.
> 
> This should be fixed now as a side effect of the proper cross-grading
> support I implemented some weeks ago, the bogus disappearing was due to
> the previous broken in-core db layout. I just tested this locally now to
> make sure that's the case though, here's the session (on amd64 though,
> but it should be equivalent):

> [example session]

Closing now.

regards,
guillem




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sun, 22 Apr 2012 07:33:45 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Fri Apr 18 06:29:10 2014; Machine Name: buxtehude.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.