<div dir="ltr"><font face="monospace, monospace" style="font-size:12.8px">Hello,</font><div style="font-size:12.8px"><font face="monospace, monospace"><br></font></div><div style="font-size:12.8px"><font face="monospace, monospace">Virtual Synchrony Property - messages are delivered in agreed order and configuration changes are delivered in agreed order relative to message.</font></div><div style="font-size:12.8px"><font face="monospace, monospace"><br></font></div><div style="font-size:12.8px"><font face="monospace, monospace">What happen to this property when network is partitioned the cluster into two. Consider following scenario (which I took from one of the previous query by Andrei Elkin):</font></div><div style="font-size:12.8px"><font face="monospace, monospace"><br></font></div><div style="font-size:12.8px"><font face="monospace, monospace">* N1, N2 and N3 are in state sync with m(k-1) messages are delivered.</font></div><div style="font-size:12.8px"><font face="monospace, monospace">* N1 sends m(k) and just now network partition N1 node from N2 and N3.</font></div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px"><font face="monospace, monospace">Does CPG_TYPE_AGREED guarantee that virtual synchrony is held?</font></div><div style="font-size:12.8px"><font face="monospace, monospace"><br></font></div><div style="font-size:12.8px"><font face="monospace, monospace">When property is held, configuration change message C1 is guaranteed to delivered before m(k) to N1.</font></div><div style="font-size:12.8px"><font face="monospace, monospace">N1 will see: m(k-1) C1 m(k)</font></div><div style="font-size:12.8px"><font face="monospace, monospace">N2 and N3 will see: m(k-1) C1</font></div><div style="font-size:12.8px"><font face="monospace, monospace"><br></font></div><div style="font-size:12.8px"><font face="monospace, monospace">But if this property is violated:</font></div><div style="font-size:12.8px"><font face="monospace, monospace">N1 will see: m(k-1) m(k) C1</font></div><div style="font-size:12.8px"><font face="monospace, monospace">N2 and N3 will see: m(k-1) C1</font></div><div style="font-size:12.8px"><font face="monospace, monospace"><br></font></div><div style="font-size:12.8px"><font face="monospace, monospace">Violation will screw any user application running on the cluster.</font></div><div style="font-size:12.8px"><font face="monospace, monospace"><br></font></div><div style="font-size:12.8px"><font face="monospace, monospace">Could someone please explain what is the behavior of Corosync in this scenario with CPG_TYPE_AGREED ordering.</font></div><div style="font-size:12.8px"><font face="monospace, monospace"><br></font></div><div style="font-size:12.8px"><font face="monospace, monospace">Regards,</font></div><div style="font-size:12.8px"><font face="monospace, monospace">Satish</font></div></div>