Skip to content

Commit 7c4fee0

Browse files
committed
New sealer
1 parent d8e9972 commit 7c4fee0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+1676
-1412
lines changed

bytespool/writer.go

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,18 @@ func AcquireWriterSize(out io.Writer, size int) *Writer {
2929
}
3030
}
3131

32-
func FlushReleaseWriter(w *Writer) error {
33-
err := w.Flush()
34-
if err != nil {
35-
return err
36-
}
32+
func ReleaseWriter(w *Writer) {
3733
Release(w.Buf)
3834
w.Buf = nil
3935
w.out = nil
4036
writerPool.Put(w)
37+
}
38+
39+
func FlushReleaseWriter(w *Writer) error {
40+
if err := w.Flush(); err != nil {
41+
return err
42+
}
43+
ReleaseWriter(w)
4144
return nil
4245
}
4346

cmd/distribution/main.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ import (
1212
"github.com/ozontech/seq-db/cache"
1313
"github.com/ozontech/seq-db/consts"
1414
"github.com/ozontech/seq-db/disk"
15-
"github.com/ozontech/seq-db/frac"
15+
"github.com/ozontech/seq-db/frac/common"
16+
"github.com/ozontech/seq-db/frac/sealed"
1617
"github.com/ozontech/seq-db/fracmanager"
1718
"github.com/ozontech/seq-db/logger"
1819
"github.com/ozontech/seq-db/seq"
@@ -58,7 +59,7 @@ func readBlock(reader disk.IndexReader, blockIndex uint32) ([]byte, error) {
5859
return data, nil
5960
}
6061

61-
func loadInfo(path string) *frac.Info {
62+
func loadInfo(path string) *common.Info {
6263
indexReader, f := getReader(path)
6364
result, err := readBlock(indexReader, 0)
6465
if err != nil {
@@ -69,7 +70,7 @@ func loadInfo(path string) *frac.Info {
6970
logger.Fatal("seq-db index file header corrupted", zap.String("file", path))
7071
}
7172

72-
b := frac.BlockInfo{}
73+
b := sealed.BlockInfo{}
7374
err = b.Unpack(result)
7475
if err != nil {
7576
logger.Fatal("can't unpack info bloc of index file", zap.String("file", path), zap.Error(err))
@@ -84,7 +85,7 @@ func loadInfo(path string) *frac.Info {
8485
return b.Info
8586
}
8687

87-
func buildDist(dist *seq.MIDsDistribution, path string, _ *frac.Info) {
88+
func buildDist(dist *seq.MIDsDistribution, path string, _ *common.Info) {
8889
blocksReader, _ := getReader(path)
8990

9091
// skip tokens

cmd/index_analyzer/main.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
"github.com/alecthomas/units"
1313

1414
"github.com/ozontech/seq-db/disk"
15-
"github.com/ozontech/seq-db/frac"
15+
"github.com/ozontech/seq-db/frac/sealed"
1616
"github.com/ozontech/seq-db/frac/sealed/lids"
1717
"github.com/ozontech/seq-db/frac/sealed/token"
1818
"github.com/ozontech/seq-db/fracmanager"
@@ -92,8 +92,11 @@ func analyzeIndex(
9292
}
9393

9494
// load info
95-
b := frac.BlockInfo{}
96-
_ = b.Unpack(readBlock())
95+
var b sealed.BlockInfo
96+
if err := b.Unpack(readBlock()); err != nil {
97+
logger.Fatal("error unpacking block info", zap.Error(err))
98+
}
99+
97100
docsCount := int(b.Info.DocsTotal)
98101

99102
// load tokens

cmd/seq-db/seq-db.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"github.com/ozontech/seq-db/config"
2323
"github.com/ozontech/seq-db/consts"
2424
"github.com/ozontech/seq-db/frac"
25+
"github.com/ozontech/seq-db/frac/common"
2526
"github.com/ozontech/seq-db/fracmanager"
2627
"github.com/ozontech/seq-db/logger"
2728
"github.com/ozontech/seq-db/mappingprovider"
@@ -253,7 +254,7 @@ func startStore(
253254
MaintenanceDelay: 0,
254255
CacheGCDelay: 0,
255256
CacheCleanupDelay: 0,
256-
SealParams: frac.SealParams{
257+
SealParams: common.SealParams{
257258
IDsZstdLevel: cfg.Compression.SealedZstdCompressionLevel,
258259
LIDsZstdLevel: cfg.Compression.SealedZstdCompressionLevel,
259260
TokenListZstdLevel: cfg.Compression.SealedZstdCompressionLevel,

consts/consts.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,9 @@ const (
1111
// DummyMID is used in aggregations when we do not need to build time series.
1212
DummyMID = 0
1313

14-
IDsBlockSize = int(4 * units.KiB)
15-
RegularBlockSize = int(16 * units.KiB)
1614
IDsPerBlock = int(4 * units.KiB)
1715
LIDBlockCap = int(64 * units.KiB)
16+
RegularBlockSize = int(16 * units.KiB)
1817

1918
DefaultMaintenanceDelay = time.Second
2019
DefaultCacheGCDelay = 1 * time.Second

disk/block_former.go

Lines changed: 0 additions & 91 deletions
This file was deleted.

disk/blocks_stats.go

Lines changed: 0 additions & 50 deletions
This file was deleted.

disk/blocks_writer.go

Lines changed: 0 additions & 100 deletions
This file was deleted.

disk/index_block_header.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ func NewEmptyIndexBlockHeader() IndexBlockHeader {
2222
return make(IndexBlockHeader, IndexBlockHeaderSize)
2323
}
2424

25-
func NewIndexBlockHeader(pos int64, ext1, ext2 uint64, origBuff, finalBuf []byte, codec Codec) IndexBlockHeader {
25+
func NewIndexBlockHeader(pos int64, ext1, ext2 uint64, size, rawSize int, codec Codec) IndexBlockHeader {
2626
header := NewEmptyIndexBlockHeader()
2727
header.SetExt1(ext1)
2828
header.SetExt2(ext2)
29-
header.SetLen(uint32(len(finalBuf)))
30-
header.SetRawLen(uint32(len(origBuff)))
29+
header.SetLen(uint32(size))
30+
header.SetRawLen(uint32(rawSize))
3131
header.SetCodec(codec)
3232
header.SetPos(uint64(pos))
3333
return header

0 commit comments

Comments
 (0)