Suppose I want to set up four nodes: A, B, C, D
. I want A
to trust B
, and C
to trust D
, so the set is denoted by {{A, b}, {C, D}}
.
I want to set up a situation where either one of these sets can vote "yes" and the transaction is approved, but in order to vote "yes," both nodes inside the set must agree. In other words, the transaction is approved if A*B + C*D
.
I think my quorum set would look like this:
[QUORUM_SET.1]
THRESHOLD_PERCENT=100
VALIDATORS=["A","B"]
[QUORUM_SET.2]
THRESHOLD_PERCENT=100
VALIDATORS=["C", "D"]
So, I have two questions at this point.
Is this possible, where either one of
Y
number of quorum sets can agree and the transaction is approved?I'd have to be running four stellar-core instances to achieve this. Do all four nodes have to replicate this configuration, or can I just include
A
's andB
's information inA
's andB
's configuration? For example, can I set up my Core nodes representingA
andB
like this:[QUORUM_SET.1] THRESHOLD_PERCENT=100 VALIDATORS=["$self", "B"] And then for the Core instance representing
B
:[QUORUM_SET.2] THRESHOLD_PERCENT=100 VALIDATORS=["$self", "A"]