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

Method setTable

client/schema.go:309–337  ·  view source on GitHub ↗
(table *metaCom.Table)

Source from the content-addressed store, hash-verified

307}
308
309func (cf *CachedSchemaHandler) setTable(table *metaCom.Table) *TableSchema {
310 columnDict := make(map[string]int)
311 for columnID, column := range table.Columns {
312 if !column.Deleted {
313 columnDict[column.Name] = columnID
314 }
315 }
316
317 schema := &TableSchema{
318 Table: table,
319 ColumnDict: columnDict,
320 }
321
322 cf.Lock()
323 cf.schemas[table.Name] = schema
324 if _, tableExist := cf.enumMappings[table.Name]; !tableExist {
325 cf.enumMappings[table.Name] = make(map[int]enumDict)
326 cf.enumDefaultValueMappings[table.Name] = make(map[int]int)
327 }
328 for columnID, column := range table.Columns {
329 if !column.Deleted && column.IsEnumColumn() {
330 if _, columnExist := cf.enumMappings[table.Name][columnID]; !columnExist {
331 cf.enumMappings[table.Name][columnID] = make(enumDict)
332 }
333 }
334 }
335 cf.Unlock()
336 return schema
337}
338
339func (hf *httpSchemaFetcher) FetchAllEnums(tableName, columnName string) ([]string, error) {
340 var enumDictReponse []string

Callers 2

FetchAllSchemaMethod · 0.95
FetchSchemaMethod · 0.95

Calls 3

IsEnumColumnMethod · 0.80
LockMethod · 0.45
UnlockMethod · 0.45

Tested by

no test coverage detected