MCPcopy
hub / github.com/uber/aresdb / createMemStore

Function createMemStore

memstore/memstore_test.go:39–79  ·  view source on GitHub ↗

createMemStore creates a memStoreImpl instance for testing.

(tableName string, shardID int, columnTypes []memCom.DataType,
	primaryKeyColumns []int, batchSize int, isFactTable bool, allowMissingEventTime bool,
	metaStore metaCom.MetaStore, diskStore diskstore.DiskStore)

Source from the content-addressed store, hash-verified

37
38// createMemStore creates a memStoreImpl instance for testing.
39func createMemStore(tableName string, shardID int, columnTypes []memCom.DataType,
40 primaryKeyColumns []int, batchSize int, isFactTable bool, allowMissingEventTime bool,
41 metaStore metaCom.MetaStore, diskStore diskstore.DiskStore) *memStoreImpl {
42 // Create schemas.
43 mainSchema := metaCom.Table{
44 Name: tableName,
45 Columns: make([]metaCom.Column, len(columnTypes)),
46 PrimaryKeyColumns: primaryKeyColumns,
47 Config: metaCom.TableConfig{
48 BatchSize: batchSize,
49 BackfillMaxBufferSize: 1 << 32,
50 BackfillThresholdInBytes: 1 << 21,
51 AllowMissingEventTime: allowMissingEventTime,
52 },
53 IsFactTable: isFactTable,
54 }
55 for i, dataType := range columnTypes {
56 mainSchema.Columns[i].Type = memCom.DataTypeName[dataType]
57 }
58 schema := memCom.NewTableSchema(&mainSchema)
59
60 for i := range columnTypes {
61 schema.SetDefaultValue(i)
62 }
63
64 redoManagerMaster, _ := redolog.NewRedoLogManagerMaster("", &common.RedoLogConfig{}, diskStore, metaStore)
65 bootstrapToken := new(memComMocks.BootStrapToken)
66 bootstrapToken.On("AcquireToken", mock.Anything, mock.Anything).Return(true)
67 bootstrapToken.On("ReleaseToken", mock.Anything, mock.Anything).Return()
68
69 options := NewOptions(bootstrapToken, redoManagerMaster)
70 memStore := NewMemStore(metaStore, diskStore, options).(*memStoreImpl)
71 // Create shards.
72 shards := map[int]*TableShard{
73 shardID: NewTableShard(schema, metaStore, diskStore, NewHostMemoryManager(memStore, 1<<32), shardID, options),
74 }
75 memStore.TableShards[tableName] = shards
76 memStore.TableSchemas[tableName] = schema
77
78 return memStore
79}
80
81// ReadShardValue reads a value from a shard at given position.
82func ReadShardValue(shard *TableShard, columnID int, primaryKey []byte) (unsafe.Pointer, bool) {

Callers 4

recovery_test.goFile · 0.85
batchstats_test.goFile · 0.85
snapshot_test.goFile · 0.85
ingestion_test.goFile · 0.85

Calls 6

SetDefaultValueMethod · 0.95
NewRedoLogManagerMasterFunction · 0.92
NewMemStoreFunction · 0.85
NewTableShardFunction · 0.85
NewHostMemoryManagerFunction · 0.85
NewOptionsFunction · 0.70

Tested by

no test coverage detected