MCPcopy
hub / github.com/grafana/tempo / Run

Method Run

cmd/tempo-cli/cmd-convert-parquet-4to5.go:28–132  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

26}
27
28func (cmd *convertParquet4to5) Run() error {
29 cmd.In = getPathToBlockDir(cmd.In)
30
31 // open the input parquet file
32 in, pf, err := openParquetFile(cmd.In)
33 if err != nil {
34 return err
35 }
36 defer in.Close()
37
38 // open the input metadata file
39 meta, err := readBlockMeta(cmd.In)
40 if err != nil {
41 return err
42 }
43
44 // create output block
45 outR, outW, _, err := local.New(&local.Config{
46 Path: cmd.Out,
47 })
48 if err != nil {
49 return err
50 }
51
52 // calculate dedicated columns
53 var dedicatedCols backend.DedicatedColumns
54
55 if len(cmd.DedicatedColumns) > 0 {
56 dedicatedCols = make(backend.DedicatedColumns, 0, len(cmd.DedicatedColumns))
57
58 for _, col := range cmd.DedicatedColumns {
59
60 var (
61 typ = backend.DedicatedColumnTypeString
62 options = backend.DedicatedColumnOptions{}
63 )
64
65 col, blob := strings.CutPrefix(col, "blob/")
66 if blob {
67 options = append(options, backend.DedicatedColumnOptionBlob)
68 }
69
70 col, isInt := strings.CutPrefix(col, "int/")
71 if isInt {
72 typ = backend.DedicatedColumnTypeInt
73 }
74
75 att, err := traceql.ParseIdentifier(col)
76 if err != nil {
77 return err
78 }
79
80 var scope backend.DedicatedColumnScope
81 switch att.Scope {
82 case traceql.AttributeScopeSpan:
83 scope = backend.DedicatedColumnScopeSpan
84 case traceql.AttributeScopeResource:
85 scope = backend.DedicatedColumnScopeResource

Callers

nothing calls this directly

Calls 11

NewFunction · 0.92
ParseIdentifierFunction · 0.92
CreateBlockFunction · 0.92
NewReaderFunction · 0.92
NewWriterFunction · 0.92
getPathToBlockDirFunction · 0.85
openParquetFileFunction · 0.85
readBlockMetaFunction · 0.85
CloseMethod · 0.65
JoinMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected