Multiple notary nodes referenced in a single transaction


(John) #1

Hi everyone,

According to the document
https://docs.corda.net/key-concepts-notaries.html

If a transaction has multiple input states that point to different notary nodes, we have to change the notary nodes of all the input states into the same one.

What is the purpose of this?
Is it the validating results from different notary nodes might conflicts?
Or multiple notary nodes might delay the whole transaction flow?
Any answers and suggestions are appreciated. Thanks a lot !


(Roger Willis) #2

If you don’t change the notaries then you’ll end up with a two phase commit - if one signs and one doesn’t, then it might be the case where one state object is consumed another is not. Resulting in an awkward situation where states have to be rolled-back. The easiest way to prevent this is by asserting that all input state object must share the same notary service.