Mailinglist Archive: opensuse-bugs (4664 mails)

< Previous Next >
[Bug 577774] New: bs: removal of packages with name-clash BRPMs causes project breakdown
  • From: bugzilla_noreply@xxxxxxxxxx
  • Date: Sun, 7 Feb 2010 02:43:20 +0000
  • Message-id: <bug-577774-21960@xxxxxxxxxxxxxxxxxxxxxxxx/>

Summary: bs: removal of packages with name-clash BRPMs causes
project breakdown
Classification: openSUSE
Version: unspecified
Platform: All
OS/Version: Linux
Status: NEW
Severity: Normal
Priority: P5 - None
Component: BuildService
AssignedTo: bnc-team-screening@xxxxxxxxxxxxxxxxxxxxxx
ReportedBy: jengelh@xxxxxxxxxx
QAContact: adrian@xxxxxxxxxx
Found By: Beta-Customer
Blocker: ---

Steps to reproduce:

1. osc importsrcpkg -c binutils.src.rpm
It is important to use .src.rpm, or to otherwise make sure there is only one
spec file in the package after import.

2. osc linkpac this:project binutils this:project cross-x86_64-binutils

3. Let it build. Because cross is just linked, and the binutils package is
missing cross-x86_64-binutils.spec, the build system will fall back to calling
rpmbuild binutils.spec instead (verified by looking at the output of ps(1).
Thus, both binutils and cross-x86_64-binutils will generate a binutils.rpm.

I can imagine that other steps are possible to produce such a scenario, such as
two totally independent packages (without linkpac) but which still happen to
result in the same binary rpm filename afterwards.

4. One of (binutils, cross-x86_64-binutils) will finish later than the other.
The exact package can be found by looking at :full/binutils.rpm and comparing
the inode number against binutils/binutils.rpm and
cross-x86_64-binutils/binutils.rpm. Let's assume for now that
:full/binutils.rpm is hardlinked to cross-x86_64-binutils/binutils.rpm.

5. Developer decides to remove the cross-x86_64-binutils package.

:full/binutils.rpm will be removed, leading to a case where no binutils is
available anymore, and the scheduler will kill off all packages in the project
with "nothing provides binutils". This assuming the project has no parent
project where binutils would be available and sourced from.

There is no way to trigger a rebuild binutils, because well, you need binutils
to build binutils, thus the "breakdown". The only way to fix this is to
manually rehardlink files in :full, which requires appropriate privileges which
are not always available.

Configure bugmail:
------- You are receiving this mail because: -------
You are on the CC list for the bug.

< Previous Next >