Skip to content
Discussions/App Development/What exactly is a known party to a participant node if is_local is false?Forum ↗

What exactly is a known party to a participant node if is_local is false?

App Development5 posts490 views8 likesLast activity Jan 2021
RI
Richard_KapolnaiOP
Jan 2021

What does knowing a party mean?

The Identity Management mentions that there can be parties allocated on a node, and others allocated elsewhere, still known to that node.

Bonus question: how can we let a node know a party without allocating (hosting) it?

RI
Richard_Kapolnai
Jan 2021

(Note that a related question and also the grpc doc takes a different view, where knowing is simply hosting.)

BE
bernhard
Jan 2021

I think you may have discovered an error in the API docs there. ListAllKnownParties does just that. Parties don’t need to be hosted there.

All Daml Drivers establish consensus between all participant nodes connected to a network about the party <-> participant mapping. When you connect a new participant, the current mapping is shared with the new participant.

You can imagine there being an implicit contract, which contains a many-to-many mapping between parties and participants. Allocating a new party is a transaction modifying that contract. The exact mechanics of this, as well as the governance differ from driver to driver, though.

RI
Richard_Kapolnai
Jan 2021

Thank you! Does this mean that every party found in this mapping will be known to any new participant connecting? So known parties are simply all hosted parties (on some participant) in the domain?

So, ListAllKnownParties should return the same set of parties run on any participant, just with different is_local attribute?

BE
bernhard
Jan 2021

So, ListAllKnownParties should return the same set of parties run on any participant, just with different is_local attribute?

Yes, as long as you are only connected to a single domain. With multi-domain the statement would be: ListAllKnownParties returns the set of all parties allocated on any of the connected domains.

← Back to Discussions