[Openais] corosync-openais-pacemaker cluster unable to start

hj lee kerdosa at gmail.com
Fri Jul 24 17:02:41 PDT 2009


>On Thu, Jul 23, 2009 at 8:32 PM, Steven Dake <sdake at redhat.com> wrote:
>I suggest mailing the pacemaker list with your question.
>
>I also suggest using corosync 1.0.0 release, since trunk is under
development.

Hi,

1.0.0 is working OK. But with trunk the pacemaker assertion failed because
the nodeid is 0 when pcmk is initialized. The pcmk gets nodeid by calling
totempg_my_nodeid_get() in corosync totem_pg library, so the issue is in the
corosync. The issue is the nodeid is 0 when pcmk service is initialized in
pcmk_startup(). Actually the nodeid is set after pcmk service is
initialized.

Since totem_config has read the binding network address from configuration,
I think it does not hurt to set nodeid during totem initialization before
services are initialized. I did a simple hack in trunk for this, it seems
working OK. Here are a patch for the hack.

Thanks

Index: totemudp.c
===================================================================
--- totemudp.c  (revision 2370)
+++ totemudp.c  (working copy)
@@ -1781,7 +1781,19 @@
                timer_function_netif_check_timeout,
                &instance->timer_netif_check_timeout);

-       *udp_context = instance;
+        { // temp hack to get node ip address
+          int if_up, if_num;
+
+          netif_determine(instance,
+                  &instance->totem_interface->bindnet,
+                  &instance->totem_interface->boundto,
+                  &if_up, &if_num);
+
+          log_printf (instance->totemudp_log_level_notice, "The
interface[%s] is if_up %d\n", totemip_print
(&instance->totem_interface->boundto), if_up);
+        }
+
+        *udp_context = instance;
+
        return (0);
 }
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.linux-foundation.org/pipermail/openais/attachments/20090724/99f924de/attachment.htm 


More information about the Openais mailing list