[ClusterLabs] Upgrade corosync problem

Jan Pokorný jpokorny at redhat.com
Mon Jul 9 11:06:34 EDT 2018

On 06/07/18 15:25 +0200, Salvatore D'angelo wrote:
> On 6 Jul 2018, at 14:40, Christine Caulfield <ccaulfie at redhat.com> wrote:
>> Yes. you can't randomly swap in and out hand-compiled libqb versions.
>> Find one that works and stick to it. It's an annoying 'feature' of newer
>> linkers that we had to workaround in libqb. So if you rebuild libqb
>> 1.0.3 then you will, in all likelihood, need to rebuild corosync to
>> match it.
> The problem is opposite to what you are saying.
> When I build corosync with old libqb and I verified the new updated
> node worked properly I updated with new libqb hand-compiled and it
> works fine.
> But in a normal upgrade procedure I first build libqb (removing
> first the old one) and then corosync, when I follow this order it
> does not work.
> This is what make me crazy. I do not understand this behavior.

I will assume you have all the steps right, like issuing equivalent
of "make install" once you've built libqb, assuring that system-native
(e.g. distribution packages) libqb and corosync won't be mixed here,
simply that you are cautious.

>> On 06/07/18 13:24, Salvatore D'angelo wrote:
>>> if I launch corosync -f I got:
>>> *corosync: main.c:143: logsys_qb_init: Assertion `"implicit callsite
>>> section is populated, otherwise target's build is at fault, preventing
>>> reliable logging" && __start___verbose != __stop___verbose' failed.*

The extreme and discouraged workaround is to compile corosync with
something like: "make CPPFLAGS=-DQB_KILL_ATTRIBUTE_SECTION", even though
we'd rather diagnose why this happens in the first place.

That apart, it'd be helpful to know output from the following commands
once you have corosync binary (symbolically referred to as $COROSYNC)
in a state the avouve error will be reproduced and you didn't change
anything about your build environment:

  # version of the linker
  bash -c 'paste <(ld --version) <(ld.bfd --version) | head -n1'

  # how does the ELF section/respective symbols appear in the binary
  readelf -s $COROSYNC | grep ___verbose

Hopefully, it will allow us to advance here.

Jan (Poki)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <https://lists.clusterlabs.org/pipermail/users/attachments/20180709/e930fd25/attachment-0002.sig>

More information about the Users mailing list