Project

General

Profile

Bug #11673

Updated by Nathan Cutler over 4 years ago

https://github.com/ceph/ceph/pull/4766 I recently moved @ceph-objectstore-tool@ from the "ceph-test" package to the main "ceph" package, in ticket #11376.

Soon after this was completed, our upgrade test suites began to fail when apt updated ceph-dbg. As one example:

http://pulpito.ceph.com/teuthology-2015-05-15_17:18:01-upgrade:firefly-x-hammer-distro-basic-vps/894814/

<pre>
2015-05-15T18:51:18.423 INFO:teuthology.orchestra.run.burnupi49.stderr:dpkg: error processing archive /var/cache/apt/archives/ceph-dbg_0.94.1-111-gb69fb89-1trusty_amd64.deb (--unpack):
2015-05-15T18:51:18.423 INFO:teuthology.orchestra.run.burnupi49.stderr: trying to overwrite '/usr/lib/debug/usr/bin/ceph-objectstore-tool', which is also in package ceph-test-dbg 0.80.9-242-g7d11b19-1trusty
2015-05-15T18:51:18.552 INFO:teuthology.orchestra.run.burnupi49.stderr:dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
</pre>

Ordinarily this would have been addressed by the following dependency chain:

# apt-get updates "ceph" to a newer version with @objectstore-tool@ present.
# With the @Replaces:@ and @Breaks:@" changes in #11376, the new "ceph" .deb depends on a newer version of "ceph-test" with the @objectstore-tool@ removed, so apt updates that as well.
# The dbg packages depend on the newer versions of ceph and ceph-test, so apt updates them as well.

The problem is with that third step. This Teuthology test uncovered the fact that ceph-test-dbg did not have a specific dependency on ceph-test. When apt updated ceph-test, it did not know it also needed to update ceph-test-dbg as well.

The explicit dependencies between -dbg packages and main subpackages are already present for a lot of the ceph packages that we ship (like ceph itself with ceph-dbg, or ceph-mds and ceph-mds-dbg, etc), but two newer subpackages are missing the explicit dependency: ceph-test-dbg and rest-bench-dbg.

Back