All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jan Friesse <jfriesse@redhat.com>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] [PATCH] cman: default to 2 different mcast	addresses in RRP mode and set rrp_problem_count_threshold
Date: Thu, 08 Sep 2011 11:40:27 +0200	[thread overview]
Message-ID: <4E688D8B.2050706@redhat.com> (raw)
In-Reply-To: <1315473069-28447-1-git-send-email-fdinitto@redhat.com>

After description is changed,
ACK


Fabio M. Di Nitto napsal(a):
> Resolves: rhbz#735912
> 
> Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
> ---
>  cman/daemon/cman-preconfig.c         |   16 ++++++++++++----
>  config/tools/xml/cluster.rng.in.head |    8 +++++++-
>  2 files changed, 19 insertions(+), 5 deletions(-)
> 
> diff --git a/cman/daemon/cman-preconfig.c b/cman/daemon/cman-preconfig.c
> index 64f505f..d5e7a92 100644
> --- a/cman/daemon/cman-preconfig.c
> +++ b/cman/daemon/cman-preconfig.c
> @@ -393,13 +393,14 @@ static uint16_t generate_cluster_id(char *name)
>  	return value & 0xFFFF;
>  }
>  
> -static char *default_mcast(char *node, uint16_t clusterid)
> +static char *default_mcast(char *node, int altiface)
>  {
>          struct addrinfo *ainfo;
>          struct addrinfo ahints;
>  	int ret;
>  	int family;
>  	static char addr[132];
> +	uint16_t clusterid = cluster_id + altiface;
>  
>          memset(&ahints, 0, sizeof(ahints));
>  
> @@ -691,7 +692,7 @@ static int get_nodename(struct objdb_iface_ver0 *objdb)
>  		}
>  
>  		if (!mcast_name) {
> -			mcast_name = default_mcast(nodename, cluster_id);
> +			mcast_name = default_mcast(nodename, PRIMARY_IFACE);
>  
>  		}
>  		if (!mcast_name)
> @@ -778,7 +779,7 @@ static int get_nodename(struct objdb_iface_ver0 *objdb)
>  		objdb_get_int(objdb, alt_object, "ttl", &altttl, ttl);
>  
>  		if (objdb_get_string(objdb, alt_object, "mcast", &mcast)) {
> -			mcast = mcast_name;
> +			mcast = default_mcast(nodename, ALT_IFACE);
>  		}
>  
>  		if (add_ifaddr(objdb, mcast, node, portnum, altttl,
> @@ -992,6 +993,13 @@ static void add_cman_overrides(struct objdb_iface_ver0 *objdb)
>  			}
>  		}
>  
> +		if (objdb_get_string(objdb, object_handle, "rrp_problem_count_threshold", &value)) {
> +			if (num_interfaces > 1) {
> +				objdb->object_key_create_typed(object_handle, "rrp_problem_count_threshold",
> +							       "3", 2, OBJDB_VALUETYPE_STRING);
> +			}
> +		}
> +
>  		if (objdb_get_string(objdb, object_handle, "secauth", &value)) {
>  			sprintf(tmp, "%d", 1);
>  			objdb->object_key_create_typed(object_handle, "secauth",
> @@ -1136,7 +1144,7 @@ static int set_noccs_defaults(struct objdb_iface_ver0 *objdb)
>  	num_nodenames = 1;
>  
>  	if (!mcast_name) {
> -		mcast_name = default_mcast(nodename, cluster_id);
> +		mcast_name = default_mcast(nodename, PRIMARY_IFACE);
>  	}
>  
>  	/* This will increase as nodes join the cluster */
> diff --git a/config/tools/xml/cluster.rng.in.head b/config/tools/xml/cluster.rng.in.head
> index 1afa9e8..8ca696a 100644
> --- a/config/tools/xml/cluster.rng.in.head
> +++ b/config/tools/xml/cluster.rng.in.head
> @@ -257,7 +257,7 @@ To validate your cluster.conf against this schema, run:
>        rha:sample="5"/>
>     </optional>
>     <!-- FIXME: The following description was adapted from the man page.
> -   It may be tool long for the schema docuement. Consider cutting text
> +   It may be tool long for the schema document. Consider cutting text
>     after the second sentence and referring the reader to the openais.conf
>     man page. -->
>     <optional>
> @@ -274,6 +274,12 @@ To validate your cluster.conf against this schema, run:
>          directives are specified, only active or passive may be
>          chosen." rha:sample="active"/>
>     </optional>
> +    <attribute name="rrp_problem_count_threshold"
> +	rha:description="This specifies the number of times a problem is detected
> +        with a link before setting the link faulty.  Once a link is set faulty, no
> +        more data is transmitted upon it. The default is 10 problem counts."
> +        rha:sample="3"/>
> +   </optional>
>     <optional>
>      <attribute name="secauth" rha:description="This attribute specifies
>         that HMAC/SHA1 authentication should be used to authenticate all



      reply	other threads:[~2011-09-08  9:40 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-08  9:11 [Cluster-devel] [PATCH] cman: default to 2 different mcast addresses in RRP mode and set rrp_problem_count_threshold Fabio M. Di Nitto
2011-09-08  9:40 ` Jan Friesse [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4E688D8B.2050706@redhat.com \
    --to=jfriesse@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.