Versions in this module Expand all Collapse all v1 v1.4.9 Jul 5, 2021 v1.4.5 Jul 5, 2021 Changes in this version + var SharedMemoryTests = []func(t *testing.T, chainID0, chainID1 ids.ID, sm0, sm1 SharedMemory, ...) + func TestSharedMemoryCantDuplicatePut(t *testing.T, _, chainID1 ids.ID, sm0, _ SharedMemory, _ database.Database) + func TestSharedMemoryCantDuplicateRemove(t *testing.T, _, chainID1 ids.ID, sm0, _ SharedMemory, _ database.Database) + func TestSharedMemoryCommitOnPut(t *testing.T, _, chainID1 ids.ID, sm0, _ SharedMemory, db database.Database) + func TestSharedMemoryCommitOnRemove(t *testing.T, _, chainID1 ids.ID, sm0, _ SharedMemory, db database.Database) + func TestSharedMemoryIndexed(t *testing.T, chainID0, chainID1 ids.ID, sm0, sm1 SharedMemory, ...) + func TestSharedMemoryLargeBatchSize(t *testing.T, _, chainID1 ids.ID, sm0, _ SharedMemory, db database.Database) + func TestSharedMemoryLargeIndexed(t *testing.T, chainID0, chainID1 ids.ID, sm0, sm1 SharedMemory, ...) + func TestSharedMemoryLargePutGetAndRemove(t *testing.T, chainID0, chainID1 ids.ID, sm0, sm1 SharedMemory, ...) + func TestSharedMemoryPutAndGet(t *testing.T, chainID0, chainID1 ids.ID, sm0, sm1 SharedMemory, ...) + func WriteAll(baseBatch database.Batch, batches ...database.Batch) error + type Element struct + Key []byte + Traits [][]byte + Value []byte + type Memory struct + func (m *Memory) GetDatabase(sharedID ids.ID) (*versiondb.Database, database.Database) + func (m *Memory) Initialize(log logging.Logger, db database.Database) error + func (m *Memory) NewSharedMemory(id ids.ID) SharedMemory + func (m *Memory) ReleaseDatabase(sharedID ids.ID) + type SharedMemory interface + Get func(peerChainID ids.ID, keys [][]byte) (values [][]byte, err error) + Indexed func(peerChainID ids.ID, traits [][]byte, startTrait, startKey []byte, limit int) (values [][]byte, lastTrait, lastKey []byte, err error) + Put func(peerChainID ids.ID, elems []*Element, batches ...database.Batch) error + Remove func(peerChainID ids.ID, keys [][]byte, batches ...database.Batch) error