[ClusterLabs] [Announce] libqb 10.rc3 release

Keisuke MORI keisuke.mori+ha at gmail.com
Fri Feb 26 05:27:32 UTC 2016


Hi,

As of libqb-1.0rc3, Pacemaker fails to build upon it with the gcc
warnings as below.
There was no such a problem until 1.0rc2, and it seems that the
changes in the pull request #175 is related.

https://github.com/ClusterLabs/libqb/pull/175

{{{
[root at build-centos71 pacemaker ((Pacemaker-1.1.14))]# rpm -qa | grep libqb
libqb-1.0rc3-1.el7.x86_64
libqb-devel-1.0rc3-1.el7.x86_64

[root at build-centos71 pacemaker ((Pacemaker-1.1.14))]# git checkout
Pacemaker-1.1.14
HEAD is now at 70404b0... Merge pull request #892 from kgaillot/1.1
[root at build-centos71 pacemaker ((Pacemaker-1.1.14))]# make release
(snip)
In file included from ../../include/crm_internal.h:33:0,
                 from ipc.c:19:
ipc.c: In function 'crm_ipcs_flush_events':
../../include/crm/common/logging.h:140:23: error: format '%d' expects
argument of type 'int', but argument 10 has type 'ssize_t'
[-Werror=format=]
         static struct qb_log_callsite *trace_cs = NULL;                 \
                       ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
                                     ^
ipc.c:497:13: note: in expansion of macro 'crm_trace'
             crm_trace("Event %d to %p[%d] (%d compressed bytes) sent",
             ^
../../include/crm/common/logging.h:140:23: error: format '%d' expects
argument of type 'int', but argument 10 has type 'ssize_t'
[-Werror=format=]
         static struct qb_log_callsite *trace_cs = NULL;                 \
                       ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
                                     ^
ipc.c:500:13: note: in expansion of macro 'crm_trace'
             crm_trace("Event %d to %p[%d] (%d bytes) sent: %.120s",
             ^
../../include/crm/common/logging.h:140:23: error: format '%s' expects
argument of type 'char *', but argument 11 has type 'void *'
[-Werror=format=]
         static struct qb_log_callsite *trace_cs = NULL;                 \
                       ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
                                     ^
ipc.c:500:13: note: in expansion of macro 'crm_trace'
             crm_trace("Event %d to %p[%d] (%d bytes) sent: %.120s",
             ^
../../include/crm/common/logging.h:140:23: error: format '%d' expects
argument of type 'int', but argument 12 has type 'ssize_t'
[-Werror=format=]
         static struct qb_log_callsite *trace_cs = NULL;                 \
                       ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
                                     ^
ipc.c:512:9: note: in expansion of macro 'crm_trace'
         crm_trace("Sent %d events (%d remaining) for %p[%d]: %s (%d)",
         ^
ipc.c: In function 'crm_ipcs_sendv':
../../include/crm/common/logging.h:140:23: error: format '%d' expects
argument of type 'int', but argument 8 has type 'ssize_t'
[-Werror=format=]
         static struct qb_log_callsite *trace_cs = NULL;                 \
                       ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
                                     ^
ipc.c:661:13: note: in expansion of macro 'crm_trace'
             crm_trace("Response %d sent, %d bytes to %p[%d]",
header->qb.id, rc, c->ipcs, c->pid);
             ^
ipc.c: In function 'crm_ipc_close':
../../include/crm/common/logging.h:140:23: error: format '%p' expects
a matching 'void *' argument [-Werror=format=]
         static struct qb_log_callsite *trace_cs = NULL;                 \
                       ^
../../include/crm/common/logging.h:254:37: note: in expansion of macro
'do_crm_log_unlikely'
 #  define crm_trace(fmt, args...)   do_crm_log_unlikely(LOG_TRACE,
fmt , ##args)
                                     ^
ipc.c:831:9: note: in expansion of macro 'crm_trace'
         crm_trace("Disconnecting %s IPC connection %p (%p.%p)",
client->name, client, client->ipc);
         ^
cc1: all warnings being treated as errors
gmake[4]: *** [ipc.lo] Error 1
gmake[4]: *** Waiting for unfinished jobs....
(snip)
}}}


2016-02-25 22:24 GMT+09:00 Christine Caulfield <ccaulfie at redhat.com>:
> I am pleased to announce the third 1.0 release candidate release of
> libqb. Huge thanks to all those who have contributed to this release.
>
> There are a couple of tiny things to tidy up before 1.0 so I'm going to
> try and close the release off by the end of next week (5th march) unless
> anything serious comes in.
>
> Changes from 1.0rc3 are mainly detail ones apart from one extra logging
> feature.
>
>     Feature: allow changing the identifier for syslog (+tests)
>     ipc: Set send and receive buffer sizes
>     ipc: Set buffer size used by ipcs service
>     ipc: Return -errno when getsockopt/setsockopt fails
>     example: fix simplelog usage message
>     log: defined value as an index-pointer after static slots
>     log: convert log target defined values into enum values
>     log: better (fixed) documentation for funcs returning "slot" index
>     log: refactor static target slots state initialization
>     log: convert few more instances to use enum qb_log_target_slot
>     log: qblog.h unify descriptions before the code examples
>     CI: Multiple fixes
>     doc: Fix typos and reword several parts to be clearer
>     build: misc spec file cleanups
>     build: Add gcc pragmas for printf formats
>     build: grab "dependent_headers" from respective Makefile.am
>     build: header-based man pages: dependent_headers - blacklist
>     build: header-based man pages: include also qbdefs.h+qbrb.h
>     build: GCC < 4.6 does not support diagnostic push/pop pragmas
>     build: fix man3 pages not installed
>
>
> The current release tarball is here:
> https://github.com/ClusterLabs/libqb/releases/download/v1.0rc3/libqb-1.0rc3.tar.gz
>
> The github repository is here:
> https://github.com/ClusterLabs/libqb
>
> Please report bugs and issues in bugzilla:
> https://bugzilla.redhat.com
>
> _______________________________________________
> Users mailing list: Users at clusterlabs.org
> http://clusterlabs.org/mailman/listinfo/users
>
> Project Home: http://www.clusterlabs.org
> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
> Bugs: http://bugs.clusterlabs.org


Regards,

-- 
Keisuke MORI




More information about the Users mailing list