|
|
|
@ -1237,7 +1237,7 @@ func TestSizeRetention(t *testing.T) { |
|
|
|
|
// Add some data to the WAL.
|
|
|
|
|
headApp := db.Head().Appender(context.Background()) |
|
|
|
|
for _, m := range headBlocks { |
|
|
|
|
series := genSeries(100, 10, m.MinTime, m.MaxTime) |
|
|
|
|
series := genSeries(100, 10, m.MinTime, m.MaxTime+1) |
|
|
|
|
for _, s := range series { |
|
|
|
|
it := s.Iterator() |
|
|
|
|
for it.Next() { |
|
|
|
@ -1256,8 +1256,12 @@ func TestSizeRetention(t *testing.T) { |
|
|
|
|
blockSize := int64(prom_testutil.ToFloat64(db.metrics.blocksBytes)) // Use the actual internal metrics.
|
|
|
|
|
walSize, err := db.Head().wal.Size() |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
// Expected size should take into account block size + WAL size
|
|
|
|
|
expSize := blockSize + walSize |
|
|
|
|
cdmSize, err := db.Head().chunkDiskMapper.Size() |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
require.NotZero(t, cdmSize) |
|
|
|
|
// Expected size should take into account block size + WAL size + Head
|
|
|
|
|
// chunks size
|
|
|
|
|
expSize := blockSize + walSize + cdmSize |
|
|
|
|
actSize, err := fileutil.DirSize(db.Dir()) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
require.Equal(t, expSize, actSize, "registered size doesn't match actual disk size") |
|
|
|
@ -1270,7 +1274,20 @@ func TestSizeRetention(t *testing.T) { |
|
|
|
|
blockSize = int64(prom_testutil.ToFloat64(db.metrics.blocksBytes)) // Use the actual internal metrics.
|
|
|
|
|
walSize, err = db.Head().wal.Size() |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
expSize = blockSize + walSize |
|
|
|
|
cdmSize, err = db.Head().chunkDiskMapper.Size() |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
require.NotZero(t, cdmSize) |
|
|
|
|
expSize = blockSize + walSize + cdmSize |
|
|
|
|
actSize, err = fileutil.DirSize(db.Dir()) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
require.Equal(t, expSize, actSize, "registered size doesn't match actual disk size") |
|
|
|
|
|
|
|
|
|
// Truncate Chunk Disk Mapper and compare sizes.
|
|
|
|
|
require.NoError(t, db.Head().chunkDiskMapper.Truncate(900)) |
|
|
|
|
cdmSize, err = db.Head().chunkDiskMapper.Size() |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
require.NotZero(t, cdmSize) |
|
|
|
|
expSize = blockSize + walSize + cdmSize |
|
|
|
|
actSize, err = fileutil.DirSize(db.Dir()) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
require.Equal(t, expSize, actSize, "registered size doesn't match actual disk size") |
|
|
|
@ -1287,8 +1304,11 @@ func TestSizeRetention(t *testing.T) { |
|
|
|
|
blockSize = int64(prom_testutil.ToFloat64(db.metrics.blocksBytes)) |
|
|
|
|
walSize, err = db.Head().wal.Size() |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
cdmSize, err = db.Head().chunkDiskMapper.Size() |
|
|
|
|
require.NoError(t, err) |
|
|
|
|
require.NotZero(t, cdmSize) |
|
|
|
|
// Expected size should take into account block size + WAL size
|
|
|
|
|
expSize = blockSize + walSize |
|
|
|
|
expSize = blockSize + walSize + cdmSize |
|
|
|
|
actRetentionCount := int(prom_testutil.ToFloat64(db.metrics.sizeRetentionCount)) |
|
|
|
|
actSize, err = fileutil.DirSize(db.Dir()) |
|
|
|
|
require.NoError(t, err) |
|
|
|
|