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

Method Combine

pkg/model/v1/object_decoder.go:42–63  ·  view source on GitHub ↗
(objs ...[]byte)

Source from the content-addressed store, hash-verified

40}
41
42func (d *ObjectDecoder) Combine(objs ...[]byte) ([]byte, error) {
43 c := trace.NewCombiner(0, false)
44 for i, obj := range objs {
45 t, err := staticDecoder.PrepareForRead(obj)
46 if err != nil {
47 return nil, fmt.Errorf("error unmarshaling trace: %w", err)
48 }
49
50 _, err = c.ConsumeWithFinal(t, i == len(obj)-1)
51 if err != nil {
52 return nil, fmt.Errorf("error combining trace: %w", err)
53 }
54 }
55 combinedTrace, _ := c.Result()
56
57 combinedBytes, err := d.Marshal(combinedTrace)
58 if err != nil {
59 return nil, fmt.Errorf("error marshaling combinedBytes: %w", err)
60 }
61
62 return combinedBytes, nil
63}
64
65func (d *ObjectDecoder) FastRange([]byte) (uint32, uint32, error) {
66 return 0, 0, decoder.ErrUnsupported

Callers

nothing calls this directly

Implementers 2

ObjectDecoderpkg/model/v2/object_decoder.go
ObjectDecoderpkg/model/v1/object_decoder.go

Calls 5

ConsumeWithFinalMethod · 0.95
ResultMethod · 0.95
MarshalMethod · 0.95
NewCombinerFunction · 0.92
PrepareForReadMethod · 0.65

Tested by

no test coverage detected