From mboxrd@z Thu Jan 1 00:00:00 1970 From: lhh@sourceware.org Date: 9 Aug 2006 21:48:35 -0000 Subject: [Cluster-devel] cluster/rgmanager ChangeLog src/clulib/members ... Message-ID: <20060809214835.23998.qmail@sourceware.org> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit CVSROOT: /cvs/cluster Module name: cluster Changes by: lhh at sourceware.org 2006-08-09 21:48:34 Modified files: rgmanager : ChangeLog rgmanager/src/clulib: members.c rgmanager/src/daemons: main.c rgmanager/src/utils: clusvcadm.c Log message: Fix relocation & transition handling Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/rgmanager/ChangeLog.diff?cvsroot=cluster&r1=1.18&r2=1.19 http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/rgmanager/src/clulib/members.c.diff?cvsroot=cluster&r1=1.2&r2=1.3 http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/rgmanager/src/daemons/main.c.diff?cvsroot=cluster&r1=1.27&r2=1.28 http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/rgmanager/src/utils/clusvcadm.c.diff?cvsroot=cluster&r1=1.10&r2=1.11 --- cluster/rgmanager/ChangeLog 2006/08/07 22:05:01 1.18 +++ cluster/rgmanager/ChangeLog 2006/08/09 21:48:34 1.19 @@ -1,3 +1,12 @@ +2006-08-08 Lon Hohberger + * src/clulib/members.c: Fix gained/lost list creation so that the + count is actually nonzero (#201713) + * src/daemons/main.c: Fix typo in debug information. Kill CMAN handle + before doing a member list update. Don't call memb_online; just + check the cn_member field (optimization). Don't process node event + until the node actually closes port (#201713). + * src/utils/clusvcadm.c: Fix relocation issues (#201711). + 2006-08-07 Lon Hohberger * src/clulib/ckpt_state.c: Preliminary implementation of replacement for VF using AIS CKPT B.02.01 (w/ built-in test program) --- cluster/rgmanager/src/clulib/members.c 2006/07/11 23:52:41 1.2 +++ cluster/rgmanager/src/clulib/members.c 2006/08/09 21:48:34 1.3 @@ -139,7 +139,7 @@ if (in_old) continue; - memcpy(&gained->cml_members[gained->cml_count], + memcpy(&gained->cml_members[gained->cml_count++], &new->cml_members[x], sizeof(cman_node_t)); } --- cluster/rgmanager/src/daemons/main.c 2006/08/07 22:05:01 1.27 +++ cluster/rgmanager/src/daemons/main.c 2006/08/09 21:48:34 1.28 @@ -162,15 +162,15 @@ } if (quorate > 0) { - printf("Node %d IS listenin\n", new_ml->cml_members[x].cn_nodeid); + printf("Node %d IS listening\n", + new_ml->cml_members[x].cn_nodeid); } } while(0); } - member_list_update(new_ml); cman_finish(h); - + member_list_update(new_ml); /* * Handle nodes lost. Do our local node event first. @@ -217,8 +217,7 @@ for (x=0; node_delta && x < node_delta->cml_count; x++) { - if (!memb_online(node_delta, - node_delta->cml_members[x].cn_nodeid)) + if (!node_delta->cml_members[x].cn_member) continue; if (node_delta->cml_members[x].cn_nodeid == my_id()) @@ -484,9 +483,7 @@ break; case RG_EXITING: - - clulog(LOG_NOTICE, "Member %d is now offline\n", (int)nodeid); - node_event(0, nodeid, 0); + clulog(LOG_NOTICE, "Member %d is going offline\n", (int)nodeid); break; case VF_MESSAGE: --- cluster/rgmanager/src/utils/clusvcadm.c 2006/07/19 18:43:32 1.10 +++ cluster/rgmanager/src/utils/clusvcadm.c 2006/08/09 21:48:34 1.11 @@ -38,7 +38,7 @@ void -build_message(SmMessageSt *msgp, int action, char *svcName, uint64_t target) +build_message(SmMessageSt *msgp, int action, char *svcName, int target) { msgp->sm_hdr.gh_magic = GENERIC_HDR_MAGIC; msgp->sm_hdr.gh_command = RG_ACTION_REQUEST; @@ -292,7 +292,7 @@ return 1; } } else { - svctarget = me; + svctarget = 0; /* clu_local_nodename(RG_SERVICE_GROUP, nodename, sizeof(nodename));