Bug 689123 - [Patch] Add more control parameters for totem
Summary: [Patch] Add more control parameters for totem
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Fedora
Classification: Fedora
Component: cluster
Version: 13
Hardware: Unspecified
OS: Unspecified
unspecified
low
Target Milestone: ---
Assignee: Fabio Massimo Di Nitto
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 917771
TreeView+ depends on / blocked
 
Reported: 2011-03-19 17:28 UTC by Vladislav Bogdanov
Modified: 2013-03-04 18:10 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 917771 (view as bug list)
Environment:
Last Closed: 2011-03-28 10:48:26 UTC
Type: ---


Attachments (Terms of Use)
Add more params to totem (3.38 KB, patch)
2011-03-19 17:31 UTC, Vladislav Bogdanov
no flags Details | Diff
Fixed version (2.07 KB, patch)
2011-03-23 13:57 UTC, Vladislav Bogdanov
no flags Details | Diff
The same without defaults (2.00 KB, patch)
2011-03-23 15:22 UTC, Vladislav Bogdanov
no flags Details | Diff

Description Vladislav Bogdanov 2011-03-19 17:28:52 UTC
Attaching a patch against 3.1.1 which adds more control over totem protocol parameters.

These are really needed in some switching environments.

Comment 1 Vladislav Bogdanov 2011-03-19 17:31:28 UTC
Created attachment 486393 [details]
Add more params to totem

Comment 2 Fabio Massimo Di Nitto 2011-03-22 08:50:55 UTC
hi Vladislav,

something does not look right in the patch:

seqno_nchanged_const default is 30, but if you don´t find the key you set it to 2500 ?

I am also a bit puzzled.. why do we need to set defaults again?

Once you add those values to the <totem section in cluster.conf, they should be propagated automatically down to totem in objdb.

In theory, allowing the config validation should be enough.

In cmanpre_readconfig:

                ret = copy_tree_to_root(objdb, "totem", 0);

that copies pristine

<cluster>
 <totem...>

to the equivalent of:

totem {

in corosync.conf

My guess (sorry I don´t have time to do testing right now) is that validating the config bits should be enough.

Fabio

Comment 3 Vladislav Bogdanov 2011-03-22 09:04:15 UTC
> seqno_nchanged_const default is 30, but if you don´t find the key you set it to
> 2500 ?

Oops, just a blind copy from existing code ;)

> In theory, allowing the config validation should be enough.
> 
> In cmanpre_readconfig:
> 
>                 ret = copy_tree_to_root(objdb, "totem", 0);

I dug into cman code just for the first time, so wasn't aware of this one.

> My guess (sorry I don´t have time to do testing right now) is that validating
> the config bits should be enough.

Do you mean that patch against cluster.rng.in is enough?

Comment 4 Fabio Massimo Di Nitto 2011-03-22 09:08:45 UTC
(In reply to comment #3)
> > seqno_nchanged_const default is 30, but if you don´t find the key you set it to
> > 2500 ?
> 
> Oops, just a blind copy from existing code ;)

eheh.. yeah I noticed the similarity from the few lines above :)

> 
> > In theory, allowing the config validation should be enough.
> > 
> > In cmanpre_readconfig:
> > 
> >                 ret = copy_tree_to_root(objdb, "totem", 0);
> 
> I dug into cman code just for the first time, so wasn't aware of this one.

No worries, I am very glad somebody is contributing stuff back.

> 
> > My guess (sorry I don´t have time to do testing right now) is that validating
> > the config bits should be enough.
> 
> Do you mean that patch against cluster.rng.in is enough?

In theory it should be more than enough. I would assume you have a setup that requires those changes and therefor you should be able to verify that easily?

Comment 5 Vladislav Bogdanov 2011-03-22 09:14:33 UTC
It could be easily verified with corosync-objctl, so yes.

I do not promise to do it quickly, only with next restart of my testing cluster in cman mode (it now runs on openais stack). It is not yet scheduled, so it could take some days.

Comment 6 Fabio Massimo Di Nitto 2011-03-22 09:23:42 UTC
(In reply to comment #5)
> It could be easily verified with corosync-objctl, so yes.
> 
> I do not promise to do it quickly, only with next restart of my testing cluster
> in cman mode (it now runs on openais stack). It is not yet scheduled, so it
> could take some days.

I am in no hurry personally. Take your time. 3.1.2 is nowhere ready to be released.

Comment 7 Vladislav Bogdanov 2011-03-23 13:57:38 UTC
Created attachment 487043 [details]
Fixed version

Hi Fabio,

attached is trimmed version.

BTW, shouldn't I specify that default value should be consulted in corosync.conf(5)?

Comment 8 Fabio Massimo Di Nitto 2011-03-23 15:01:19 UTC
(In reply to comment #7)
> Created attachment 487043 [details]
> Fixed version
> 
> Hi Fabio,
> 
> attached is trimmed version.
> 
> BTW, shouldn't I specify that default value should be consulted in
> corosync.conf(5)?

Hi Vladislav,

Yes sure, there is also a specific flag for the schema to point to a man page.

Assuming you tested the patch, it should be good to go in the tree. Please let me know if you want to update it more to add references to the man pages.

Fabio

Comment 9 Vladislav Bogdanov 2011-03-23 15:22:07 UTC
Created attachment 487071 [details]
The same without defaults

I just dropped defaults from patch (inline) assuming they may change in corosync. Whole totem section should refer to man page, not every option.
Previous patch is tested to work, this one should apply cleanly too (nothing is functionally changed).

Comment 10 Fabio Massimo Di Nitto 2011-03-28 10:47:53 UTC
http://git.fedorahosted.org/git/?p=cluster.git;a=commitdiff;h=e7d91758422f354a3488db5f9d375484b4be4535

The patch is slightly different than submitted one. There was a typo fix in one of the entries and added rha:default values.


Note You need to log in before you can comment on or make changes to this bug.