 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Variables
- 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
- type Memory
- type SharedMemory
Constants ¶
This section is empty.
Variables ¶
      View Source
      
  TestSharedMemoryPutAndGet, TestSharedMemoryLargePutGetAndRemove, TestSharedMemoryIndexed, TestSharedMemoryLargeIndexed, TestSharedMemoryCantDuplicatePut, TestSharedMemoryCantDuplicateRemove, TestSharedMemoryCommitOnPut, TestSharedMemoryCommitOnRemove, TestSharedMemoryLargeBatchSize, }
SharedMemoryTests is a list of all shared memory tests
Functions ¶
func TestSharedMemoryCantDuplicatePut ¶ added in v1.4.0
func TestSharedMemoryCantDuplicateRemove ¶ added in v1.4.0
func TestSharedMemoryCommitOnPut ¶ added in v1.4.0
func TestSharedMemoryCommitOnRemove ¶ added in v1.4.0
func TestSharedMemoryIndexed ¶ added in v1.4.0
func TestSharedMemoryLargeBatchSize ¶ added in v1.4.0
func TestSharedMemoryLargeBatchSize(t *testing.T, _, chainID1 ids.ID, sm0, _ SharedMemory, db database.Database)
TestSharedMemoryLargeBatchSize tests to make sure that the interface can support large batches.
func TestSharedMemoryLargeIndexed ¶ added in v1.4.0
func TestSharedMemoryLargePutGetAndRemove ¶ added in v1.4.0
func TestSharedMemoryLargePutGetAndRemove(t *testing.T, chainID0, chainID1 ids.ID, sm0, sm1 SharedMemory, _ database.Database)
TestSharedMemoryLargePutGetAndRemove tests to make sure that the interface can support large values.
func TestSharedMemoryPutAndGet ¶ added in v1.4.0
Types ¶
type Memory ¶ added in v0.8.0
type Memory struct {
	// contains filtered or unexported fields
}
    Memory is the interface for shared memory inside a subnet
func (*Memory) GetDatabase ¶ added in v0.8.0
GetDatabase returns and locks the provided DB
func (*Memory) Initialize ¶ added in v0.8.0
Initialize the SharedMemory
func (*Memory) NewSharedMemory ¶ added in v0.8.0
func (m *Memory) NewSharedMemory(id ids.ID) SharedMemory
NewSharedMemory returns a new SharedMemory
func (*Memory) ReleaseDatabase ¶ added in v0.8.0
ReleaseDatabase unlocks the provided DB
type SharedMemory ¶
type SharedMemory interface {
	Put(peerChainID ids.ID, elems []*Element, batches ...database.Batch) error
	// Fetches from this chain's side
		peerChainID ids.ID,
		traits [][]byte,
		startTrait,
		startKey []byte,
		limit int,
	) (
		values [][]byte,
		lastTrait,
		lastKey []byte,
		err error,
	)
}
    SharedMemory ...
 Click to show internal directories. 
   Click to hide internal directories.