<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#0050d0">
Sent: Sat Nov 13 2010 04:20:56 GMT-0700 (Mountain Standard Time)<br>
From: Andrew Beekhof <a class="moz-txt-link-rfc2396E"
 href="mailto:andrew@beekhof.net"><andrew@beekhof.net></a><br>
To: The Pacemaker cluster resource manager
<a class="moz-txt-link-rfc2396E"
 href="mailto:pacemaker@oss.clusterlabs.org"><pacemaker@oss.clusterlabs.org></a>
<br>
Subject: Re: [Pacemaker] symmetric anti-collocation
<blockquote
 cite="mid:AANLkTinhiacfH8sQbeup28mau6Gj8HPj9j2hZgrkoDST@mail.gmail.com"
 type="cite">
  <pre wrap="">On Fri, Nov 12, 2010 at 5:27 PM, Alan Jones <a
 class="moz-txt-link-rfc2396E" href="mailto:falancluster@gmail.com"><falancluster@gmail.com></a> wrote:
  </pre>
  <blockquote type="cite">
    <pre wrap="">On Thu, Nov 11, 2010 at 11:31 PM, Andrew Beekhof <a
 class="moz-txt-link-rfc2396E" href="mailto:andrew@beekhof.net"><andrew@beekhof.net></a> wrote:
    </pre>
    <blockquote type="cite">
      <blockquote type="cite">
        <pre wrap="">colocation X-Y -2: X Y
colocation Y-X -2: Y X
        </pre>
      </blockquote>
      <pre wrap="">the second one is implied by the first and is therefore redundant
      </pre>
    </blockquote>
    <pre wrap="">If only that were true!
    </pre>
  </blockquote>
  <pre wrap=""><!---->
It is. I know exactly how my code works in this regard.
More than likely a score of -2 is simply too low to have any effect.
  </pre>
</blockquote>
I'm going to have to side with Alan here, his pasted statements are
*NOT* redundant and also do *NOT* work. Please be a little more
accepting that your code might have problems.<br>
<br>
Exhibit A:<br>
<table border="1" cellpadding="2" cellspacing="2" width="100%">
  <tbody>
    <tr>
      <td valign="top"><small>crm(live)# configure show<br>
node nas01 \<br>
        attributes standby="off"<br>
node nas02 \<br>
        attributes standby="off"<br>
node nas03 \<br>
        attributes standby="on"<br>
primitive d1 ocf:pacemaker:Dummy<br>
primitive d2 ocf:pacemaker:Dummy<br>
colocation co1 -inf: d1 d2<br>
colocation co2 -inf: d2 d1<br>
property $id="cib-bootstrap-options" \<br>
        dc-version="1.0.10-da7075976b5ff0bee71074385f8fd02f296ec8a3" \<br>
        cluster-infrastructure="openais" \<br>
        expected-quorum-votes="3" \<br>
        stonith-enabled="false" \<br>
        default-resource-stickiness="INFINITY"<br>
      <br>
      <br>
      <br>
      <br>
crm(live)# status<br>
============<br>
Last updated: Mon Dec 20 21:03:49 2010<br>
Stack: openais<br>
Current DC: nas01 - partition with quorum<br>
Version: 1.0.10-da7075976b5ff0bee71074385f8fd02f296ec8a3<br>
3 Nodes configured, 3 expected votes<br>
2 Resources configured.<br>
============<br>
      <br>
Node nas03: standby<br>
Online: [ nas01 nas02 ]<br>
      <br>
 d1     (ocf::pacemaker:Dummy): Started nas01<br>
 d2     (ocf::pacemaker:Dummy): Started nas02<br>
      <br>
      <br>
      <br>
      <br>
crm(live)# node standby nas02<br>
crm(live)# status<br>
============<br>
Last updated: Mon Dec 20 21:04:14 2010<br>
Stack: openais<br>
Current DC: nas01 - partition with quorum<br>
Version: 1.0.10-da7075976b5ff0bee71074385f8fd02f296ec8a3<br>
3 Nodes configured, 3 expected votes<br>
2 Resources configured.<br>
============<br>
      <br>
Node nas02: standby<br>
Node nas03: standby<br>
Online: [ nas01 ]<br>
      <br>
 d2     (ocf::pacemaker:Dummy): Started nas01</small><br>
      </td>
    </tr>
  </tbody>
</table>
<br>
Notice how resource 'd1' got evicted from node 'nas01' and 'd2'
replaced it. This would indicate that the 'co2' rule is being
completely ignored. In fact if you delete the co2 rule, you get the
exact same behavior. If you were to delete the co1 rule, and put
'nas02' in standby, d1 would have stayed running on 'nas01' instead of
being replaced. This would indicate that the constraints are NOT
redundant and NOT implied by eachother.<br>
<br>
I'm not trying to be disrespectful or rude, its just that nobody is
perfect.<br>
</body>
</html>