[Cluster-devel] cluster/group/daemon cpg.c
teigland at sourceware.org
teigland at sourceware.org
Fri Oct 13 15:57:23 UTC 2006
CVSROOT: /cvs/cluster
Module name: cluster
Changes by: teigland at sourceware.org 2006-10-13 15:57:23
Modified files:
group/daemon : cpg.c
Log message:
If cpg_join or cpg_leave are stuck in a retry loop, put an error
message in syslog after ten seconds.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/group/daemon/cpg.c.diff?cvsroot=cluster&r1=1.35&r2=1.36
--- cluster/group/daemon/cpg.c 2006/10/06 16:55:19 1.35
+++ cluster/group/daemon/cpg.c 2006/10/13 15:57:23 1.36
@@ -475,7 +475,7 @@
cpg_error_t error;
cpg_handle_t h;
struct cpg_name name;
- int fd, ci;
+ int fd, ci, i = 0;
error = cpg_initialize(&h, &callbacks);
if (error != CPG_OK) {
@@ -502,6 +502,8 @@
if (error == CPG_ERR_TRY_AGAIN) {
log_debug("cpg_join error retry");
sleep(1);
+ if (!(++i % 10))
+ log_error(g, "cpg_join error retrying");
goto retry;
}
if (error != CPG_OK) {
@@ -518,6 +520,7 @@
{
cpg_error_t error;
struct cpg_name name;
+ int i = 0;
memset(&name, 0, sizeof(name));
sprintf(name.value, "%d_%s", g->level, g->name);
@@ -528,6 +531,8 @@
if (error == CPG_ERR_TRY_AGAIN) {
log_debug("cpg_leave error retry");
sleep(1);
+ if (!(++i % 10))
+ log_error(g, "cpg_leave error retrying");
goto retry;
}
if (error != CPG_OK) {
More information about the Cluster-devel
mailing list