On Fri, May 6, 2011 at 12:29 PM, Dejan Muhamedagic <deja...@fastmail.fm> wrote: > On Fri, May 06, 2011 at 09:47:29AM +0200, Andrew Beekhof wrote: >> On Thu, May 5, 2011 at 5:20 PM, Dejan Muhamedagic <deja...@fastmail.fm> >> wrote: >> > On Thu, May 05, 2011 at 12:02:01PM +0200, Andrew Beekhof wrote: >> >> On Thu, May 5, 2011 at 11:37 AM, Dejan Muhamedagic <deja...@fastmail.fm> >> >> wrote: >> >> > On Thu, May 05, 2011 at 09:07:05AM +0200, Andrew Beekhof wrote: >> >> >> On Wed, May 4, 2011 at 7:15 PM, Dejan Muhamedagic >> >> >> <deja...@fastmail.fm> wrote: >> >> >> > Hi, >> >> >> > >> >> >> > On Wed, May 04, 2011 at 12:49:03PM +0200, Andrew Beekhof wrote: >> >> >> >> Tick tock. I'm going to push this soon unless someone raises an >> >> >> >> objection RSN. >> >> >> >> >> >> >> >> On Fri, Apr 15, 2011 at 4:55 PM, Andrew Beekhof >> >> >> >> <and...@beekhof.net> wrote: >> >> >> >> > On Fri, Apr 15, 2011 at 3:00 PM, Lars Marowsky-Bree >> >> >> >> > <l...@novell.com> wrote: >> >> >> >> >> On 2011-04-13T08:37:12, Andrew Beekhof <and...@beekhof.net> >> >> >> >> >> wrote: >> >> >> >> >> >> >> >> >> >>> >> Before: >> >> >> >> >>> >> >> >> >> >> >>> >> <rsc_colocation id="coloc-set" score="INFINITY"> >> >> >> >> >>> >> <resource_set id="coloc-set-0"> >> >> >> >> >>> >> <resource_ref id="dummy2"/> >> >> >> >> >>> >> <resource_ref id="dummy3"/> >> >> >> >> >>> >> </resource_set> >> >> >> >> >>> >> <resource_set id="coloc-set-1" sequential="false" >> >> >> >> >>> >> role="Master"> >> >> >> >> >>> >> <resource_ref id="dummy0"/> >> >> >> >> >>> >> <resource_ref id="dummy1"/> >> >> >> >> >>> >> </resource_set> >> >> >> >> >>> >> </rsc_colocation> >> >> >> >> >>> >> <rsc_order id="order-set" score="INFINITY"> >> >> >> >> >>> >> <resource_set id="order-set-0" role="Master"> >> >> >> >> >>> >> <resource_ref id="dummy0"/> >> >> >> >> >>> >> <resource_ref id="dummy1"/> >> >> >> >> >>> >> </resource_set> >> >> >> >> >>> >> <resource_set id="order-set-1" sequential="false"> >> >> >> >> >>> >> <resource_ref id="dummy2"/> >> >> >> >> >>> >> <resource_ref id="dummy3"/> >> >> >> >> >>> >> </resource_set> >> >> >> >> >>> >> </rsc_order> >> >> >> >> >>> >> >> >> >> >> >>> >> >> >> >> >> >>> >> >> >> >> >> >>> >> After: >> >> >> >> >> >> >> >> >> >> So I am understanding this properly - we're getting rid of the >> >> >> >> >> "sequential" attribute, yes? >> >> >> >> > >> >> >> >> > Absolutely. >> >> >> > >> >> >> > So, the internal-collocation replaces the sequential attribute? >> >> >> >> >> >> Yes. >> >> >> >> >> >> > What are the possible and/or meaningfull values for >> >> >> > internal-collocation? It looks like that would be 0 or INFINITY >> >> >> > only, which would translate to old sequential false and true, >> >> >> > right? >> >> >> >> >> >> No. >> >> >> >> >> >> <choice> >> >> >> <data type="integer"/> >> >> >> <value>INFINITY</value> >> >> >> <value>+INFINITY</value> >> >> >> <value>-INFINITY</value> >> >> >> </choice> >> >> > >> >> > I saw that, but wonder what makes sense in this context. What's >> >> > the difference between values 0, INF, 50, -50, 100? Are all those >> >> > necessary? >> >> >> >> Just as necessary as for colocation constraints not involving sets. >> >> You're setting up the colocation score between elements of the set. >> > >> > OK. >> > >> >> >> > Looking at the schema, the ordering constraint lost score >> >> >> >> >> >> Score was being mapped to "kind" inside the PE anyway. >> >> >> >> >> >> > and is >> >> >> > using only the kind attribute which can have one of: >> >> >> > >> >> >> > <value>None</value> >> >> >> > <value>Optional</value> >> >> >> > <value>Mandatory</value> >> >> >> > <value>Serialize</value> >> >> >> > >> >> >> > But then, the "kind" attribute is optional. If missing, how's >> >> >> > that different from value None? >> >> >> >> >> >> If its missing you get the default. Which IIRC is Mandatory not None. >> >> >> >> >> >> > What does Serialize mean? (in orders) >> >> >> >> >> >> Same as it did before, this is not new. >> >> >> >> >> >> > What does score-attribute-mangle mean? (in collocations) >> >> >> >> >> >> As above. Not new. >> >> > >> >> > Where are these two documented? Couldn't find anything in the >> >> > docs. >> >> >> >> Looks to be just an alias for XML_RULE_ATTR_SCORE_ATTRIBUTE dating back >> >> to 2005. >> >> So there is probably a reason I didn't document it. >> > >> > So, it's obsolete then? The crm shell actually never supported >> > it :-| And I can't recall that I've ever seen it in a >> > configuration. >> > >> >> Serialize is newer. Its like optional but for a set - no member will >> >> start or stop at the same time as another. >> > >> > OK. >> > >> >> >> > I think that it'd be good to clarify the shell syntax before >> >> >> > applying these changes. >> >> Actually I'm going to flip-flop here... there's really no need for this. >> Until the shell understands the new syntax, it will just show xml right? > > Right. But in my experience trying things out in shell syntax > sometimes reveals design shortcomings. That was so with the > resource sets. > > Going back to the example you've shown earlier in this thread ... > > Before: > > collocation c inf: ( dummy0:Master dummy1:Master ) dummy2 dummy3 > order o Mandatory: dummy0:promote dummy1:promote ( dummy2 dummy3 ) > > After(1): > > collocation_set c inf: 0:[dummy0:Master dummy1:Master] inf:[dummy2 dummy3] > order_set o Mandatory: Mandatory:[dummy0:promote dummy1:promote] > Optional:[dummy2 dummy3] > > After(2): > > collocation_set c inf: 0:[dummy0:Master dummy1:Master] dummy2 dummy3 > order_set o Mandatory: dummy0:promote dummy1:promote Optional:[dummy2 dummy3] > > The second version removes redundant specification, i.e. for the > sets which have the same kind/score as the constraint. > > Would this kind of XML be possible:
Is the schema that hard to read? No, not possible since the same concepts can be expressed without suppressing the colocation_set elements. > > <rsc_colocation id="coloc-set" score="INFINITY"> > <colocation_set id="coloc-set-1" internal-colocation="0"> > <resource_ref id="dummy0" role="Master"/> > <resource_ref id="dummy1" role="Master"/> > </colocation_set> > <resource_ref id="dummy2"/> > <resource_ref id="dummy3"/> > </rsc_colocation> Also, this example makes no sense. How do you colocate dummy2 with dummy0 and dummy1 if 0 and 1 are on different machines? > <rsc_order id="order-set" kind="Mandatory"> > <resource_ref id="dummy0" action="promote"/> > <resource_ref id="dummy1" action="promote"/> > <ordering_set id="order-set-1" internal-ordering="Optional"> > <resource_ref id="dummy2"/> > <resource_ref id="dummy3"/> > </ordering_set> > </rsc_order> > > For instance, that way we won't have single resource sets which > look silly. Thats for the shell to deal with. Sorry. If you want to omit the delimiters for a single set, or the first one, or the last one, or the one in the middle - go for it. But that's got nothing to do with the XML. > >> Also, the changes wont be in a release until 1.1.7 and it will take a >> while to enter common usage. >> So I think you have time. > > OK. > >> > I'm going to try to do something today and tomorrow, but next >> > week I'll be away. So, if you're in a hurry, go ahead with the >> > changes. >> > >> > Just two more notes regarding the language: >> > >> > There's "colocation_set/internal-colocation" and >> > "ordering_set/internal-ordering". They sound different. Should >> > the order stuff be "order_set/internal-order"? I'm not partial >> > to any and furthermore not a native speaker, so I'll leave that >> > to you and others who are more intimate with english. >> >> As an engineer my grasp on english can be tenuous at times, but >> "internal-order" feels wrong. > > How about internal-score for both? I mean, we already know what > kind of constraint it is. Score does not make sense for ordering constraints. Since we're already removing it from the non-set version, it doesn't make sense to add it back here. > >> > Are we going to name the new stuff differently in shell? Such as >> > collocation_set and order(ing)_set? Though I don't like these in >> > particular, because they are going to be the only ones with '_' >> > in its names, >> >> I was using '-', but then I noticed all the other tag names used '_'. >> Then I remembered deciding at one point to use '_' for tag names >> (partly because changing them is hard) and '-' for attributes. >> >> Having said that, the tokens used by the shell are not required to >> match those in the xml. >> Though it may require more work when translating between xml and shell >> syntax. > > Yes, I know that, and I was actually asking about the names in > the shell because I cannot think of anything better than > order_set or collocation_set. > >> Remember to check the validate-with field though - to see which >> version of the syntax the cluster is currently using. > > Right. > > Thanks, > > Dejan > >> > but there seems to be no way around it. Any better >> > suggestions? >> > >> > Thanks, >> > >> > Dejan >> > >> > _______________________________________________ >> > Pacemaker mailing list: Pacemaker@oss.clusterlabs.org >> > http://oss.clusterlabs.org/mailman/listinfo/pacemaker >> > >> > Project Home: http://www.clusterlabs.org >> > Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf >> > Bugs: >> > http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker >> > >> >> _______________________________________________ >> Pacemaker mailing list: Pacemaker@oss.clusterlabs.org >> http://oss.clusterlabs.org/mailman/listinfo/pacemaker >> >> Project Home: http://www.clusterlabs.org >> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf >> Bugs: >> http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker > > _______________________________________________ > Pacemaker mailing list: Pacemaker@oss.clusterlabs.org > http://oss.clusterlabs.org/mailman/listinfo/pacemaker > > Project Home: http://www.clusterlabs.org > Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf > Bugs: > http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker > _______________________________________________ Pacemaker mailing list: Pacemaker@oss.clusterlabs.org http://oss.clusterlabs.org/mailman/listinfo/pacemaker Project Home: http://www.clusterlabs.org Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf Bugs: http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker