[][src]Crate ic_artifact_manager


The Artifact Manager stores artifacts in the artifact pool. These artifacts are used by the node it is running on and other nodes in the same subnet. The Artifact Manager interacts with Gossip and its application components:

It acts as a dispatcher for Gossip and ensures that the artifacts are processed by the correct application components. It (de)multiplexes artifacts to and from the different application components on behalf of Gossip and bundles filters and priority functions.

In order to let the Consensus components be stateless, the artifact manager notifies the application components of artifacts received from peers. The application components can then check if they are valid and change their artifact pools (with a write lock to prevent conflicts and to allow concurrent reads to the artifact pools).




The module runs ArtifactProcessor as actors.


The module contains implementations for different artifact kinds.


The module contains implementations of the artifact client trait.


The artifact manager implementation.