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

Function TestWalBlockMetaSnapshot

tempodb/encoding/vparquet4/wal_block_test.go:405–427  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

403}
404
405func TestWalBlockMetaSnapshot(t *testing.T) {
406 meta := backend.NewBlockMeta("fake", uuid.New(), VersionString)
407 w, err := createWALBlock(meta, t.TempDir(), model.CurrentEncoding, 0)
408 require.NoError(t, err)
409
410 snap0 := w.MetaSnapshot()
411 require.NotSame(t, w.BlockMeta(), snap0, "MetaSnapshot must return a fresh allocation, not the live meta pointer")
412 require.Equal(t, int64(0), snap0.TotalObjects)
413
414 id := test.ValidTraceID(nil)
415 tr := test.MakeTrace(10, id)
416 trace.SortTrace(tr)
417 require.NoError(t, w.AppendTrace(id, tr, 100, 200, false))
418
419 snap1 := w.MetaSnapshot()
420 require.NotSame(t, snap0, snap1, "successive MetaSnapshot calls must return distinct pointers")
421 require.Equal(t, int64(1), snap1.TotalObjects)
422 require.Equal(t, w.BlockMeta().StartTime, snap1.StartTime)
423 require.Equal(t, w.BlockMeta().EndTime, snap1.EndTime)
424
425 snap1.TotalObjects = 9999
426 require.Equal(t, int64(1), w.BlockMeta().TotalObjects)
427}
428
429func TestWalBlockTombstone(t *testing.T) {
430 meta := backend.NewBlockMeta("fake", uuid.New(), VersionString)

Callers

nothing calls this directly

Calls 9

NewBlockMetaFunction · 0.92
ValidTraceIDFunction · 0.92
MakeTraceFunction · 0.92
SortTraceFunction · 0.92
createWALBlockFunction · 0.70
MetaSnapshotMethod · 0.65
BlockMetaMethod · 0.65
AppendTraceMethod · 0.65
EqualMethod · 0.45

Tested by

no test coverage detected