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

Method Append

tempodb/backend/gcs/gcs.go:144–164  ·  view source on GitHub ↗

Append implements backend.Writer

(ctx context.Context, name string, keypath backend.KeyPath, tracker backend.AppendTracker, buffer []byte)

Source from the content-addressed store, hash-verified

142
143// Append implements backend.Writer
144func (rw *readerWriter) Append(ctx context.Context, name string, keypath backend.KeyPath, tracker backend.AppendTracker, buffer []byte) (backend.AppendTracker, error) {
145 keypath = backend.KeyPathWithPrefix(keypath, rw.cfg.Prefix)
146 ctx, span := tracer.Start(ctx, "gcs.Append", trace.WithAttributes(
147 attribute.Int("len", len(buffer)),
148 ))
149 defer span.End()
150
151 var w *storage.Writer
152 if tracker == nil {
153 w = rw.writer(ctx, backend.ObjectFileName(keypath, name), nil)
154 } else {
155 w = tracker.(*storage.Writer)
156 }
157
158 _, err := w.Write(buffer)
159 if err != nil {
160 return nil, err
161 }
162
163 return w, nil
164}
165
166// CloseAppend implements backend.Writer
167func (rw *readerWriter) CloseAppend(_ context.Context, tracker backend.AppendTracker) error {

Callers

nothing calls this directly

Calls 6

writerMethod · 0.95
WriteMethod · 0.95
KeyPathWithPrefixFunction · 0.92
ObjectFileNameFunction · 0.92
IntMethod · 0.80
StartMethod · 0.65

Tested by

no test coverage detected