mirror of
https://github.com/QuilibriumNetwork/ceremonyclient.git
synced 2026-02-21 18:37:26 +08:00
* experiment: reject bad peer info messages * v2.1.0.18 preview * add tagged sync * Add missing hypergraph changes * small tweaks to sync * allow local sync, use it for provers with workers * missing file * resolve build error * resolve sync issue, remove raw sync * resolve deletion promotion bug * resolve sync abstraction leak from tree deletion changes * rearrange prover sync * remove pruning from sync * restore removed sync flag * fix: sync, event stream deadlock, heuristic scoring of better shards * resolve hanging shutdown + pubsub proxy issue * further bugfixes: sync (restore old leaf sync), pubsub shutdown, merge events * fix: clean up rust ffi, background coverage events, and sync tweaks * fix: linking issue for channel, connectivity test aggression, sync regression, join tests * fix: disjoint sync, improper application of filter * resolve sync/reel/validation deadlock * adjust sync to handle no leaf edge cases, multi-path segment traversal * use simpler sync * faster, simpler sync with some debug extras * migration to recalculate * don't use batch * square up the roots * fix nil pointer * fix: seniority calculation, sync race condition, migration * make sync dumber * fix: tree deletion issue * fix: missing seniority merge request canonical serialization * address issues from previous commit test * stale workers should be cleared * remove missing gap check * rearrange collect, reduce sync logging noise * fix: the disjoint leaf/branch sync case * nuclear option on sync failures * v2.1.0.18, finalized
181 lines
5.6 KiB
Go
181 lines
5.6 KiB
Go
package store
|
|
|
|
// Store prefixes:
|
|
const (
|
|
CLOCK_FRAME = 0x00
|
|
PROVING_KEY = 0x01
|
|
PROVING_KEY_STAGED = 0x02
|
|
KEY_BUNDLE = 0x03
|
|
DATA_PROOF = 0x04
|
|
DATA_TIME_PROOF = 0x05
|
|
PEERSTORE = 0x06
|
|
COIN = 0x07
|
|
PROOF = 0x08
|
|
HYPERGRAPH_SHARD = 0x09
|
|
SHARD = 0x0A
|
|
INBOX = 0x0B
|
|
CONSENSUS = 0x0C
|
|
MIGRATION = 0xF0
|
|
WORKER = 0xFF
|
|
)
|
|
|
|
// Clock store indexes:
|
|
const (
|
|
CLOCK_GLOBAL_FRAME = 0x00
|
|
CLOCK_SHARD_FRAME_SHARD = 0x01
|
|
CLOCK_SHARD_FRAME_CANDIDATE_SHARD = 0x02
|
|
CLOCK_SHARD_FRAME_FRECENCY_SHARD = 0x03
|
|
CLOCK_SHARD_FRAME_DISTANCE_SHARD = 0x04
|
|
CLOCK_COMPACTION_SHARD = 0x05
|
|
CLOCK_SHARD_FRAME_SENIORITY_SHARD = 0x06
|
|
CLOCK_SHARD_FRAME_STATE_TREE = 0x07
|
|
CLOCK_GLOBAL_FRAME_REQUEST = 0x08
|
|
CLOCK_GLOBAL_CERTIFIED_STATE = 0x09
|
|
CLOCK_SHARD_CERTIFIED_STATE = 0x0A
|
|
CLOCK_QUORUM_CERTIFICATE = 0x0B
|
|
CLOCK_TIMEOUT_CERTIFICATE = 0x0C
|
|
CLOCK_PROPOSAL_VOTE = 0x0D
|
|
CLOCK_TIMEOUT_VOTE = 0x0E
|
|
CLOCK_GLOBAL_FRAME_CANDIDATE = 0x0F
|
|
|
|
CLOCK_GLOBAL_FRAME_INDEX_EARLIEST = 0x10 | CLOCK_GLOBAL_FRAME
|
|
CLOCK_GLOBAL_FRAME_INDEX_LATEST = 0x20 | CLOCK_GLOBAL_FRAME
|
|
CLOCK_GLOBAL_FRAME_INDEX_PARENT = 0x30 | CLOCK_GLOBAL_FRAME
|
|
|
|
CLOCK_SHARD_FRAME_INDEX_EARLIEST = 0x10 | CLOCK_SHARD_FRAME_SHARD
|
|
CLOCK_SHARD_FRAME_INDEX_LATEST = 0x20 | CLOCK_SHARD_FRAME_SHARD
|
|
CLOCK_SHARD_FRAME_INDEX_PARENT = 0x30 | CLOCK_SHARD_FRAME_SHARD
|
|
|
|
CLOCK_GLOBAL_CERTIFIED_STATE_INDEX_EARLIEST = 0x10 |
|
|
CLOCK_GLOBAL_CERTIFIED_STATE
|
|
CLOCK_GLOBAL_CERTIFIED_STATE_INDEX_LATEST = 0x20 |
|
|
CLOCK_GLOBAL_CERTIFIED_STATE
|
|
|
|
CLOCK_SHARD_CERTIFIED_STATE_INDEX_EARLIEST = 0x10 |
|
|
CLOCK_SHARD_CERTIFIED_STATE
|
|
CLOCK_SHARD_CERTIFIED_STATE_INDEX_LATEST = 0x20 |
|
|
CLOCK_SHARD_CERTIFIED_STATE
|
|
|
|
CLOCK_QUORUM_CERTIFICATE_INDEX_EARLIEST = 0x10 |
|
|
CLOCK_QUORUM_CERTIFICATE
|
|
CLOCK_QUORUM_CERTIFICATE_INDEX_LATEST = 0x20 |
|
|
CLOCK_QUORUM_CERTIFICATE
|
|
|
|
CLOCK_TIMEOUT_CERTIFICATE_INDEX_EARLIEST = 0x10 |
|
|
CLOCK_TIMEOUT_CERTIFICATE
|
|
CLOCK_TIMEOUT_CERTIFICATE_INDEX_LATEST = 0x20 |
|
|
CLOCK_TIMEOUT_CERTIFICATE
|
|
|
|
CLOCK_SHARD_FRAME_CANDIDATE_INDEX_LATEST = 0x20 |
|
|
CLOCK_SHARD_FRAME_CANDIDATE_SHARD
|
|
|
|
CLOCK_GLOBAL_FRAME_CANDIDATE_INDEX_LATEST = 0x20 |
|
|
CLOCK_GLOBAL_FRAME_CANDIDATE
|
|
|
|
CLOCK_GLOBAL_FRAME_REQUEST_CANDIDATE = 0xF8
|
|
)
|
|
|
|
// Coin store indexes:
|
|
const (
|
|
COIN_BY_ADDRESS = 0x00
|
|
COIN_BY_OWNER = 0x01
|
|
TRANSACTION_BY_ADDRESS = 0x02
|
|
TRANSACTION_BY_OWNER = 0x03
|
|
PENDING_TRANSACTION_BY_ADDRESS = 0x04
|
|
PENDING_TRANSACTION_BY_OWNER = 0x05
|
|
)
|
|
|
|
// Data proof store indexes:
|
|
const (
|
|
DATA_PROOF_METADATA = 0x00
|
|
DATA_PROOF_INCLUSION = 0x01
|
|
DATA_PROOF_SEGMENT = 0x02
|
|
DATA_TIME_PROOF_DATA = 0x00
|
|
DATA_TIME_PROOF_LATEST = 0x01
|
|
)
|
|
|
|
// Hypergraph store indexes:
|
|
const (
|
|
SHARD_COMMIT = 0x00
|
|
HYPEREDGE_ADDS = 0x01
|
|
HYPEREDGE_REMOVES = 0x11
|
|
VERTEX_ADDS_TREE_NODE = 0x02
|
|
VERTEX_REMOVES_TREE_NODE = 0x12
|
|
HYPEREDGE_ADDS_TREE_NODE = 0x03
|
|
HYPEREDGE_REMOVES_TREE_NODE = 0x13
|
|
VERTEX_ADDS_TREE_NODE_BY_PATH = 0x22
|
|
VERTEX_REMOVES_TREE_NODE_BY_PATH = 0x32
|
|
HYPEREDGE_ADDS_TREE_NODE_BY_PATH = 0x23
|
|
HYPEREDGE_REMOVES_TREE_NODE_BY_PATH = 0x33
|
|
VERTEX_ADDS_CHANGE_RECORD = 0x42
|
|
VERTEX_REMOVES_CHANGE_RECORD = 0x52
|
|
HYPEREDGE_ADDS_CHANGE_RECORD = 0x43
|
|
HYPEREDGE_REMOVES_CHANGE_RECORD = 0x53
|
|
HYPERGRAPH_VERTEX_ADDS_SHARD_COMMIT = 0xE0
|
|
HYPERGRAPH_VERTEX_REMOVES_SHARD_COMMIT = 0xE1
|
|
HYPERGRAPH_HYPEREDGE_ADDS_SHARD_COMMIT = 0xE2
|
|
HYPERGRAPH_HYPEREDGE_REMOVES_SHARD_COMMIT = 0xE3
|
|
HYPERGRAPH_ALT_SHARD_COMMIT = 0xE4
|
|
HYPERGRAPH_ALT_SHARD_COMMIT_LATEST = 0xE5
|
|
HYPERGRAPH_ALT_SHARD_ADDRESS_INDEX = 0xE6
|
|
VERTEX_DATA = 0xF0
|
|
VERTEX_TOMBSTONE = 0xF1
|
|
HYPERGRAPH_COVERED_PREFIX = 0xFA
|
|
HYPERGRAPH_COMPLETE = 0xFB
|
|
HYPERGRAPH_GLOBAL_PROVER_RECALC_DONE = 0xF9
|
|
VERTEX_ADDS_TREE_ROOT = 0xFC
|
|
VERTEX_REMOVES_TREE_ROOT = 0xFD
|
|
HYPEREDGE_ADDS_TREE_ROOT = 0xFE
|
|
HYPEREDGE_REMOVES_TREE_ROOT = 0xFF
|
|
)
|
|
|
|
// Key store indexes:
|
|
const (
|
|
KEY_DATA = 0x00
|
|
KEY_BUNDLE_INDEX_EARLIEST = 0x10
|
|
KEY_BUNDLE_INDEX_LATEST = 0x20
|
|
KEY_IDENTITY = 0x30
|
|
KEY_PROVING = 0x31
|
|
KEY_CROSS_SIGNATURE = 0x40
|
|
KEY_X448_SIGNED_KEY_BY_ID = 0x50
|
|
KEY_X448_SIGNED_KEY_BY_PARENT = 0x51
|
|
KEY_X448_SIGNED_KEY_BY_PURPOSE = 0x52
|
|
KEY_X448_SIGNED_KEY_BY_EXPIRY = 0x53
|
|
KEY_DECAF448_SIGNED_KEY_BY_ID = 0x54
|
|
KEY_DECAF448_SIGNED_KEY_BY_PARENT = 0x55
|
|
KEY_DECAF448_SIGNED_KEY_BY_PURPOSE = 0x56
|
|
KEY_DECAF448_SIGNED_KEY_BY_EXPIRY = 0x57
|
|
KEY_DEVICE_PRE_KEY_BY_ID = 0x60
|
|
KEY_DEVICE_PRE_KEY_BY_DEVICE = 0x61
|
|
KEY_DEVICE_PRE_KEY_AVAILABLE = 0x62
|
|
KEY_DEVICE_PRE_KEY_ONE_TIME = 0x63
|
|
)
|
|
|
|
// Shard store indexes:
|
|
const (
|
|
APP_SHARD_DATA = 0x00
|
|
)
|
|
|
|
// Dispatch store indexes:
|
|
const (
|
|
INBOX_MESSAGE = 0x00
|
|
INBOX_MESSAGE_DATA = 0x01
|
|
INBOX_MESSAGE_BY_ADDR = 0x02
|
|
// Hub associations (2P-Set)
|
|
INBOX_HUB_BY_ADDR = 0x10
|
|
INBOX_HUB_ADDS = 0x11
|
|
INBOX_HUB_DELETES = 0x12
|
|
)
|
|
|
|
// Worker store indexes:
|
|
const (
|
|
WORKER_BY_CORE = 0x00
|
|
WORKER_BY_FILTER = 0x01
|
|
)
|
|
|
|
// Consensus store indexes:
|
|
const (
|
|
CONSENSUS_STATE = 0x00
|
|
CONSENSUS_LIVENESS = 0x01
|
|
)
|