Documentation ¶
Overview ¶
Audit contract is a contract deployed in FrostFS sidechain.
Inner Ring nodes perform audit of the registered containers during every epoch. If a container contains StorageGroup objects, an Inner Ring node initializes a series of audit checks. Based on the results of these checks, the Inner Ring node creates a DataAuditResult structure for the container. The content of this structure makes it possible to determine which storage nodes have been examined and see the status of these checks. Regarding this information, the container owner is charged for data storage.
Audit contract is used as a reliable and verifiable storage for all DataAuditResult structures. At the end of data audit routine, Inner Ring nodes send a stable marshaled version of the DataAuditResult structure to the contract. When Alphabet nodes of the Inner Ring perform settlement operations, they make a list and get these AuditResultStructures from the audit contract.
Contract notifications ¶
Audit contract does not produce notifications to process.
Index ¶
- func Get(id []byte) []byte
- func List() [][]byte
- func ListByCID(epoch int, cid []byte) [][]byte
- func ListByEpoch(epoch int) [][]byte
- func ListByNode(epoch int, cid []byte, key interop.PublicKey) [][]byte
- func Put(rawAuditResult []byte)
- func Update(script []byte, manifest []byte, data interface{})
- func Version() int
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Get ¶
Get method returns a stable marshaled DataAuditResult structure.
The ID of the DataAuditResult can be obtained from listing methods.
func List ¶
func List() [][]byte
List method returns a list of all available DataAuditResult IDs from the contract storage.
func ListByCID ¶
ListByCID method returns a list of DataAuditResult IDs generated during the specified epoch for the specified container.
func ListByEpoch ¶
ListByEpoch method returns a list of DataAuditResult IDs generated during the specified epoch.
func ListByNode ¶
ListByNode method returns a list of DataAuditResult IDs generated in the specified epoch for the specified container by the specified Inner Ring node.
func Put ¶
func Put(rawAuditResult []byte)
Put method stores a stable marshalled `DataAuditResult` structure. It can be invoked only by Inner Ring nodes.
Inner Ring nodes perform audit of containers and produce `DataAuditResult` structures. They are stored in audit contract and used for settlements in later epochs.
Types ¶
This section is empty.