[MIR] pacemaker

Bug #527195 reported by Ante Karamatić
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pacemaker (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: pacemaker

1. Availability: all

2. Rationale: The package helps meet https://blueprints.launchpad.net/ubuntu/+spec/packageselection-server-n-cluster-stack blueprint goal. Needed binary packages are pacemaker and pacemaker-dev.

3. Security: No CVEs

4. QA: 3 bugs in Debian (all related to old version of pacemaker and majority is result of bad packaging), 3 minor bug in Ubuntu. Upstream is very active (http://hg.clusterlabs.org/pacemaker/clean-1.0/)

5. UI standards: none

6. Dependencies: most in main. MIRs for Universe packages:

https://bugs.edge.launchpad.net/ubuntu/+source/cluster-glue/+bug/527142
https://bugs.edge.launchpad.net/ubuntu/+source/cluster-agents/+bug/527155
https://bugs.edge.launchpad.net/ubuntu/+source/heartbeat/+bug/527182

7. Standards: Lintian warnings:

W: pacemaker: binary-without-manpage usr/sbin/attrd_updater
W: pacemaker: binary-without-manpage usr/sbin/cibpipe
W: pacemaker: binary-without-manpage usr/sbin/crm
W: pacemaker: binary-without-manpage usr/sbin/crm_attribute
W: pacemaker: binary-without-manpage usr/sbin/crm_diff
W: pacemaker: binary-without-manpage usr/sbin/crm_failcount
W: pacemaker: binary-without-manpage usr/sbin/crm_master
W: pacemaker: binary-without-manpage usr/sbin/crm_mon
W: pacemaker: binary-without-manpage usr/sbin/crm_node
W: pacemaker: binary-without-manpage usr/sbin/crm_shadow
W: pacemaker: binary-without-manpage usr/sbin/crm_standby
W: pacemaker: binary-without-manpage usr/sbin/crm_uuid
W: pacemaker: binary-without-manpage usr/sbin/crm_verify
W: pacemaker: binary-without-manpage usr/sbin/crmadmin
W: pacemaker: binary-without-manpage usr/sbin/iso8601
W: pacemaker: binary-without-manpage usr/sbin/ptest

Package is packaged with debhelper and has no patching system.

8. Maintenance: easy, upstream (Debian or clusterlabs.org) is willing to take our work into upstream.

9. Background information: this package is one of dependencies for new cluster stack in Ubuntu. This package contains portions of old heartbeat and is one of components for new cluster stack, created by merging portions of redhat-cluster-suite, portions of heartbeat and portions of 'old' pacemaker.

Martin Pitt (pitti)
Changed in pacemaker (Ubuntu):
assignee: nobody → Martin Pitt (pitti)
Revision history for this message
Martin Pitt (pitti) wrote :

Did you check that all of the Debian RC bugs are fixed? I just checked #527220 and verified that crm_master is both in hardy's to jaunty's heartbeat as well as lucid's pacemaker, without declaring a conflicts/replaces, so this bug seems relevant for Ubuntu as well.

Also, pacemaker ships a lot of libraries in /usr/lib, with different SONAMEs. If these are meant to be public (I don't think they are), they need to go into separate library packages. If they are private, they should be put into /usr/lib/pacemaker/, to avoid that other packages link against them.

Changed in pacemaker (Ubuntu):
assignee: Martin Pitt (pitti) → Ante Karamatić (ivoks)
status: New → Incomplete
Revision history for this message
Alexander Sack (asac) wrote :

Hi,

please check whether you want this MIR to happen in maverick still
 * if you don't want it to be considered, simply set the status to "Invalid"
 * if you still want to see this happening, you don't need to do anything besides working on getting the concerns fixed. Once that happened, remember to set the status back to "New" again.

Thanks!

Revision history for this message
Steve Langasek (vorlon) wrote :

Regarding the libraries in /usr/lib: a package was uploaded to maverick that split these out into a separate 'libpacemaker' binary package, which I rejected from the NEW queue. These libraries are *not* intended to be public; they appear to be nascent shared libs which nothing else should depend on yet, and for which standard shlibs maintenance cannot be assured.

I agree that these *should* be moved to /usr/lib/packemaker, to make it absolutely clear that they are private libraries. I would personally not regard this as a 'must'; AIUI there's no software in the wild that would attempt to link against these libs, and fixing this doesn't seem pertinent to an MIR as the bug remains one way or the other.

What *must* be fixed is that, if these are private libs, there should not be a shlibs control file in the package. This should be corrected, whether or not the package is promoted to main.

description: updated
Revision history for this message
Andres Rodriguez (andreserl) wrote :

Hi all,

Libraries in Pacemaker has been split into their own binary packages, with some further improvements made in Ubuntu. These improvements are about to be forwarded to Debian.

Could you please re-evaluate the MIR??

Thank you!

Changed in pacemaker (Ubuntu):
assignee: Ante Karamatić (ivoks) → nobody
status: Incomplete → New
Revision history for this message
Michael Terry (mterry) wrote :

Looks mostly good, except I noticed an oddity with the licensing. All the files that are (I presume) LGPL-2.1+ have the header:

 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.

That is, they describe themselves as being GPL-2.1+ (a license that doesn't exist).

debian/copyright is also ever-so-slightly off, as it says the library is LGPL-2+ (instead of LGPL-2.1+) though it does point the reader to /usr/share/common-licenses/LGPL-2.1.

Also, can you talk a bit about how Debian #527220 got fixed? I see a conflict/replace for pacemaker-heartbeat but not one for heartbeat itself, which I would expect.

Revision history for this message
Andres Rodriguez (andreserl) wrote :

Michael,

I'm not sure what might have happened with the licensing, but AFAIK, those issues were already resolved. Now, at [1] says:

"[This is the first released version of the Lesser GPL. It also counts
 as the successor of the GNU Library Public License, version 2, hence
 the version number 2.1.]"

So I'm presuming that they refer to LGPL-2+, which would include 2.1, maybe? What do you think is the next step here?

On the side of Debian bug #527220, back in the day, Hearbeat (2.x) contained some of the bits that is now found in Pacemaker (We can say there was an split). So, the new package, Pacemaker was created and indeed conflicted with Heartbeat because all those bits weren't removed from the Heartbeat source. (which is the reason of Debian #527220). Anyways, after that, the split was carried on, and Pacemaker source shipped a pacemaker-heartbeat binary package, which contained the compatibility of Pacemaker to use Heartbeat as messaging layer, however, the Heartbeat package was never "updated", and they continued to include files that were found in both packages.

However, after Linbit took over Heartbeat source code (to maintain it), those common bits were removed from Heartbeat (and eventually became Heartbeat 3.x), and the pacemaker package dropped the pacemaker-heartbeat and pacemaker-corosync binary packages. When that happened, the conflict/replaces was added to fix problem when upgrading from a pacemaker version that contained the pacemaker-heartbeat, to the new Pacemaker version that works *with* the heartbeat package. In other words, Pacemaker now works with the heartbeat package (Pacemaker is the cluster resource manager, while Heartbeat is the messaging layer). Obviosly, since these packages are ment to work together, they no longer conflict in any common files.

Hope this helps.

[1]: http://www.gnu.org/licenses/lgpl-2.1.html

Revision history for this message
Andres Rodriguez (andreserl) wrote :

I'll check with upstream btw.. maybe it is just a typo and should be 2 instead of 2.1

Revision history for this message
Michael Terry (mterry) wrote :

Andres, it's a typo, but not about the version number. They say the files are under the GPL 2.1 (which doesn't exist), but they should be under the Lesser GPL 2.1. The copyright headers never actually say Lesser.

Michael Terry (mterry)
Changed in pacemaker (Ubuntu):
status: New → Incomplete
Revision history for this message
Michael Terry (mterry) wrote :

Looks good now, thanks!

Changed in pacemaker (Ubuntu):
status: Incomplete → Fix Committed
Revision history for this message
Matthias Klose (doko) wrote :

promoted

Changed in pacemaker (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.