From f7817438190b4438225337fddfa2a2af594e8fff Mon Sep 17 00:00:00 2001 From: Andrei Cheboksarov <37665782+cheb0@users.noreply.github.com> Date: Tue, 14 Apr 2026 11:15:30 +0400 Subject: [PATCH 1/6] LID block size config --- cmd/seq-db/seq-db.go | 2 ++ config/config.go | 2 ++ config/validation.go | 16 ++++++++++++++++ config/validation_test.go | 12 ++++++++++++ docs/en/02-configuration.md | 13 +++++++------ docs/ru/02-configuration.md | 13 +++++++------ frac/active.go | 3 +++ frac/common/seal_params.go | 1 + frac/config.go | 1 + frac/fraction_concurrency_test.go | 1 + frac/fraction_test.go | 1 + frac/sealed/sealing/index.go | 2 +- fracmanager/config.go | 3 +++ 13 files changed, 57 insertions(+), 13 deletions(-) diff --git a/cmd/seq-db/seq-db.go b/cmd/seq-db/seq-db.go index b0a7c47e..9c57e510 100644 --- a/cmd/seq-db/seq-db.go +++ b/cmd/seq-db/seq-db.go @@ -266,6 +266,7 @@ func startStore( SealParams: common.SealParams{ IDsZstdLevel: cfg.Compression.SealedZstdCompressionLevel, LIDsZstdLevel: cfg.Compression.SealedZstdCompressionLevel, + LIDBlockSize: int(cfg.Compression.LIDBlockSize), TokenListZstdLevel: cfg.Compression.SealedZstdCompressionLevel, DocsPositionsZstdLevel: cfg.Compression.SealedZstdCompressionLevel, TokenTableZstdLevel: cfg.Compression.SealedZstdCompressionLevel, @@ -283,6 +284,7 @@ func startStore( }, SkipSortDocs: !cfg.DocsSorting.Enabled, KeepMetaFile: false, + LIDBlockSize: int(cfg.Compression.LIDBlockSize), }, OffloadingEnabled: cfg.Offloading.Enabled, OffloadingRetention: cfg.Offloading.Retention, diff --git a/config/config.go b/config/config.go index 28a67dc0..6ffe0667 100644 --- a/config/config.go +++ b/config/config.go @@ -200,6 +200,8 @@ type Config struct { MetasZstdCompressionLevel int `config:"metas_zstd_compression_level" default:"1"` SealedZstdCompressionLevel int `config:"sealed_zstd_compression_level" default:"3"` DocBlockZstdCompressionLevel int `config:"doc_block_zstd_compression_level" default:"3"` + // LIDBlockSize sets max lids (postings) saved per LIDs block. + LIDBlockSize Bytes `config:"lid_block_size" default:"64KiB"` } `config:"compression"` Indexing struct { diff --git a/config/validation.go b/config/validation.go index 15d63c9b..13174ac3 100644 --- a/config/validation.go +++ b/config/validation.go @@ -3,6 +3,8 @@ package config import ( "cmp" "fmt" + + "github.com/alecthomas/units" ) type validateFn func() error @@ -68,6 +70,8 @@ func (c *Config) storeValidations() []validateFn { inRange("compression.sealed_zstd_compression_level", -7, 22, c.Compression.SealedZstdCompressionLevel), inRange("compression.doc_block_zstd_compression_level", -7, 22, c.Compression.DocBlockZstdCompressionLevel), + greaterThan("compression.lid_block_cap", 0, c.Compression.LIDBlockSize), + lessOrEqThan("compression.lid_block_cap", int(64*units.KiB), int(c.Compression.LIDBlockSize)), inRange("offloading.queue_size_percent", 0, 100, c.Offloading.QueueSizePercent), greaterThan("experimental.max_regex_tokens_check", -1, c.Experimental.MaxRegexTokensCheck), @@ -106,6 +110,18 @@ func greaterThan[T cmp.Ordered](field string, base, v T) validateFn { } } +func lessOrEqThan[T cmp.Ordered](field string, base, v T) validateFn { + return func() error { + if v > base { + return fmt.Errorf( + "field %q must be greater than %v", + field, base, + ) + } + return nil + } +} + func inRange[T cmp.Ordered](field string, from, to, v T) validateFn { return func() error { if v < from || to < v { diff --git a/config/validation_test.go b/config/validation_test.go index 0a29f990..c37c1da2 100644 --- a/config/validation_test.go +++ b/config/validation_test.go @@ -86,6 +86,18 @@ limits: env: map[string]string{"SEQDB_OFFLOADING_QUEUE_SIZE_PERCENT": "50"}, expectErr: false, }, + { + name: "Invalid compression.lid_block_size", + cfg: baseCfg, + env: map[string]string{"SEQDB_COMPRESSION_LID_BLOCK_SIZE": "-1KiB"}, + expectErr: true, + }, + { + name: "Valid compression.lid_block_size", + cfg: baseCfg, + env: map[string]string{"SEQDB_COMPRESSION_LID_BLOCK_SIZE": "8KiB"}, + expectErr: false, + }, } for _, tt := range tests { diff --git a/docs/en/02-configuration.md b/docs/en/02-configuration.md index 54b798df..019c163d 100644 --- a/docs/en/02-configuration.md +++ b/docs/en/02-configuration.md @@ -104,12 +104,13 @@ Resource allocation settings. Compression level settings for various data types. -| Field | Type | Default | Description | -|-------|------|---------|-------------| -| `compression.docs_zstd_compression_level` | int | `1` | Zstandard compression level for documents | -| `compression.metas_zstd_compression_level` | int | `1` | Zstandard compression level for metadata | -| `compression.sealed_zstd_compression_level` | int | `3` | Zstandard compression level for sealed fractions | -| `compression.doc_block_zstd_compression_level` | int | `3` | Zstandard compression level for document blocks | +| Field | Type | Default | Description | +|------------------------------------------------|------|---------|--------------------------------------------------| +| `compression.docs_zstd_compression_level` | int | `1` | Zstandard compression level for documents | +| `compression.metas_zstd_compression_level` | int | `1` | Zstandard compression level for metadata | +| `compression.sealed_zstd_compression_level` | int | `3` | Zstandard compression level for sealed fractions | +| `compression.doc_block_zstd_compression_level` | int | `3` | Zstandard compression level for document blocks | +| `compression.lid_block_size` | int | `64KiB` | Max lids (postings) saved per LIDs block | ## Indexing Configuration diff --git a/docs/ru/02-configuration.md b/docs/ru/02-configuration.md index 664530aa..178e343c 100644 --- a/docs/ru/02-configuration.md +++ b/docs/ru/02-configuration.md @@ -104,12 +104,13 @@ id: configuration Настройки уровня сжатия для различных типов данных. -| Параметр | Тип | Значение по умолчанию | Описание | -|----------|-----|----------------------|-----------| -| `compression.docs_zstd_compression_level` | int | `1` | Уровень сжатия для документов | -| `compression.metas_zstd_compression_level` | int | `1` | Уровень сжатия для метаданных | -| `compression.sealed_zstd_compression_level` | int | `3` | Уровень сжатия для запечатанных фракций | -| `compression.doc_block_zstd_compression_level` | int | `3` | Уровень сжатия для блоков документов | +| Параметр | Тип | Значение по умолчанию | Описание | +|------------------------------------------------|-----|-----------------------|-----------------------------------------| +| `compression.docs_zstd_compression_level` | int | `1` | Уровень сжатия для документов | +| `compression.metas_zstd_compression_level` | int | `1` | Уровень сжатия для метаданных | +| `compression.sealed_zstd_compression_level` | int | `3` | Уровень сжатия для запечатанных фракций | +| `compression.doc_block_zstd_compression_level` | int | `3` | Уровень сжатия для блоков документов | +| `compression.lid_block_size` | int | `64KiB` | Максимальное количество лидов в блоках | ## Конфигурация индексирования diff --git a/frac/active.go b/frac/active.go index 7c3691c1..88d880ec 100644 --- a/frac/active.go +++ b/frac/active.go @@ -114,6 +114,9 @@ func NewActive( skipMaskProvider: skipMaskProvider, } + if cfg.LIDBlockSize > 0 { + f.info.ConstLIDBlockCap = cfg.LIDBlockSize + } // use of 0 as keys in maps is prohibited – it's system key, so add first element f.MIDs.Append(systemMID) diff --git a/frac/common/seal_params.go b/frac/common/seal_params.go index c19365f9..05f89696 100644 --- a/frac/common/seal_params.go +++ b/frac/common/seal_params.go @@ -8,5 +8,6 @@ type SealParams struct { TokenTableZstdLevel int DocBlocksZstdLevel int // DocBlocksZstdLevel is the zstd compress level of each document block. + LIDBlockSize int DocBlockSize int // DocBlockSize is decompressed payload size of document block. } diff --git a/frac/config.go b/frac/config.go index 3b1c1e97..2abae098 100644 --- a/frac/config.go +++ b/frac/config.go @@ -5,6 +5,7 @@ type Config struct { SkipSortDocs bool KeepMetaFile bool + LIDBlockSize int } type SearchConfig struct { diff --git a/frac/fraction_concurrency_test.go b/frac/fraction_concurrency_test.go index a5c19b22..25f1c345 100644 --- a/frac/fraction_concurrency_test.go +++ b/frac/fraction_concurrency_test.go @@ -344,6 +344,7 @@ func seal(active *Active) (*Sealed, error) { TokenTableZstdLevel: 1, DocBlocksZstdLevel: 1, DocBlockSize: 128 * int(units.KiB), + LIDBlockSize: 512, } activeSealingSource, err := NewActiveSealingSource(active, sealParams) if err != nil { diff --git a/frac/fraction_test.go b/frac/fraction_test.go index ec5f3d85..3f0994e6 100644 --- a/frac/fraction_test.go +++ b/frac/fraction_test.go @@ -97,6 +97,7 @@ func (s *FractionTestSuite) SetupTestCommon() { DocsPositionsZstdLevel: 1, TokenTableZstdLevel: 1, DocBlocksZstdLevel: 1, + LIDBlockSize: 512, DocBlockSize: 128 * int(units.KiB), } diff --git a/frac/sealed/sealing/index.go b/frac/sealed/sealing/index.go index 491c7233..48cf8302 100644 --- a/frac/sealed/sealing/index.go +++ b/frac/sealed/sealing/index.go @@ -271,7 +271,7 @@ func (s *IndexSealer) indexBlocks(src Source) iter.Seq[indexBlock] { // SECTION 6: LIDs Section statsLIDs := startStats() s.lidsTable.StartBlockIndex = blocksCounter - for block := range bb.BuildLIDsBlocks(src.TokenLIDs(), consts.LIDBlockCap) { + for block := range bb.BuildLIDsBlocks(src.TokenLIDs(), s.params.LIDBlockSize) { if !push(s.packLIDsBlock(block), &statsLIDs) { return } diff --git a/fracmanager/config.go b/fracmanager/config.go index 5a9790ac..c3c8d1ec 100644 --- a/fracmanager/config.go +++ b/fracmanager/config.go @@ -57,6 +57,9 @@ func FillConfigWithDefault(config *Config) *Config { if config.SealParams.LIDsZstdLevel == 0 { config.SealParams.LIDsZstdLevel = zstdDefaultLevel } + if config.SealParams.LIDBlockSize == 0 { + config.SealParams.LIDBlockSize = consts.LIDBlockCap + } if config.SealParams.TokenListZstdLevel == 0 { config.SealParams.TokenListZstdLevel = zstdDefaultLevel } From cb03230b5b418de61a1936a2513986b10ad7b18d Mon Sep 17 00:00:00 2001 From: Andrei Cheboksarov <37665782+cheb0@users.noreply.github.com> Date: Tue, 12 May 2026 10:18:57 +0400 Subject: [PATCH 2/6] fix test --- fracmanager/fraction_provider_test.go | 1 + 1 file changed, 1 insertion(+) diff --git a/fracmanager/fraction_provider_test.go b/fracmanager/fraction_provider_test.go index aae4e820..f350d3ee 100644 --- a/fracmanager/fraction_provider_test.go +++ b/fracmanager/fraction_provider_test.go @@ -34,6 +34,7 @@ func setupS3Client(t testing.TB) (*s3.Client, func()) { func setupFractionProvider(t testing.TB, cfg *Config) (*fractionProvider, func()) { cfg = setupDataDir(t, cfg) + cfg.SealParams.LIDBlockSize = int(64 * units.KB) rl := storage.NewReadLimiter(1, nil) s3cli, stopS3 := setupS3Client(t) idx, stopIdx := frac.NewActiveIndexer(1, 1) From c81db1f450b39a70bf6f6f0cde2a8e67588662c3 Mon Sep 17 00:00:00 2001 From: Andrei Cheboksarov <37665782+cheb0@users.noreply.github.com> Date: Tue, 12 May 2026 11:41:59 +0400 Subject: [PATCH 3/6] merge master, rename LIDBLockCap to DefaultLIDBlockCap --- consts/consts.go | 6 +++--- frac/common/info.go | 2 +- frac/sealed/sealing/blocks_builder.go | 4 ++++ frac/sealed/sealing/index.go | 2 +- fracmanager/config.go | 2 +- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/consts/consts.go b/consts/consts.go index 80aabbe3..ccaba4e2 100644 --- a/consts/consts.go +++ b/consts/consts.go @@ -11,9 +11,9 @@ const ( // DummyMID is used in aggregations when we do not need to build time series. DummyMID = 0 - IDsPerBlock = int(4 * units.KiB) - LIDBlockCap = int(64 * units.KiB) - RegularBlockSize = int(16 * units.KiB) + IDsPerBlock = int(4 * units.KiB) + DefaultLIDBlockCap = int(64 * units.KiB) + RegularBlockSize = int(16 * units.KiB) DefaultMaintenanceDelay = time.Second DefaultCacheGCDelay = 1 * time.Second diff --git a/frac/common/info.go b/frac/common/info.go index 20e7f7c2..b82f6b99 100644 --- a/frac/common/info.go +++ b/frac/common/info.go @@ -52,7 +52,7 @@ func NewInfo(filename string, docsOnDisk, metaOnDisk uint64) *Info { CreationTime: uint64(time.Now().UnixMilli()), ConstIDsPerBlock: consts.IDsPerBlock, ConstRegularBlockSize: consts.RegularBlockSize, - ConstLIDBlockCap: consts.LIDBlockCap, + ConstLIDBlockCap: consts.DefaultLIDBlockCap, DocsOnDisk: docsOnDisk, MetaOnDisk: metaOnDisk, } diff --git a/frac/sealed/sealing/blocks_builder.go b/frac/sealed/sealing/blocks_builder.go index fc069cbf..3c6ce1b0 100644 --- a/frac/sealed/sealing/blocks_builder.go +++ b/frac/sealed/sealing/blocks_builder.go @@ -5,6 +5,7 @@ import ( "iter" "unsafe" + "github.com/ozontech/seq-db/consts" "github.com/ozontech/seq-db/frac/sealed/lids" "github.com/ozontech/seq-db/frac/sealed/seqids" "github.com/ozontech/seq-db/frac/sealed/token" @@ -217,6 +218,9 @@ func newLIDAccumulator( blockCapacity int, onBlock func(lidsSealBlock) error, ) *lidAccumulator { + if blockCapacity == 0 { + blockCapacity = consts.DefaultLIDBlockCap + } a := &lidAccumulator{ blockCapacity: blockCapacity, onBlock: onBlock, diff --git a/frac/sealed/sealing/index.go b/frac/sealed/sealing/index.go index 5c23842a..e7bf7348 100644 --- a/frac/sealed/sealing/index.go +++ b/frac/sealed/sealing/index.go @@ -125,7 +125,7 @@ func (s *IndexSealer) WriteTokenTriplet(tws, lws io.WriteSeeker, src Source) err ) lidAccumulator := newLIDAccumulator( - consts.LIDBlockCap, + s.params.LIDBlockSize, func(block lidsSealBlock) error { return lw.writeBlock(blockTypeLID, s.packLIDsBlock(block)) }, diff --git a/fracmanager/config.go b/fracmanager/config.go index c3c8d1ec..e295aada 100644 --- a/fracmanager/config.go +++ b/fracmanager/config.go @@ -58,7 +58,7 @@ func FillConfigWithDefault(config *Config) *Config { config.SealParams.LIDsZstdLevel = zstdDefaultLevel } if config.SealParams.LIDBlockSize == 0 { - config.SealParams.LIDBlockSize = consts.LIDBlockCap + config.SealParams.LIDBlockSize = consts.DefaultLIDBlockCap } if config.SealParams.TokenListZstdLevel == 0 { config.SealParams.TokenListZstdLevel = zstdDefaultLevel From 01c8f19c2f352a6f6fece238fa80e1f756d31c74 Mon Sep 17 00:00:00 2001 From: Andrei Cheboksarov <37665782+cheb0@users.noreply.github.com> Date: Mon, 1 Jun 2026 11:55:06 +0400 Subject: [PATCH 4/6] configure in numbers and sealing.lids.block_size config --- cmd/seq-db/seq-db.go | 3 +-- config/config.go | 9 +++++++-- config/validation.go | 6 ++---- config/validation_test.go | 8 ++++---- docs/en/02-configuration.md | 11 ++++++++++- docs/ru/02-configuration.md | 11 ++++++++++- frac/active.go | 3 --- frac/config.go | 1 - 8 files changed, 34 insertions(+), 18 deletions(-) diff --git a/cmd/seq-db/seq-db.go b/cmd/seq-db/seq-db.go index 9c57e510..de29ac4c 100644 --- a/cmd/seq-db/seq-db.go +++ b/cmd/seq-db/seq-db.go @@ -266,7 +266,7 @@ func startStore( SealParams: common.SealParams{ IDsZstdLevel: cfg.Compression.SealedZstdCompressionLevel, LIDsZstdLevel: cfg.Compression.SealedZstdCompressionLevel, - LIDBlockSize: int(cfg.Compression.LIDBlockSize), + LIDBlockSize: cfg.Sealing.Lids.BlockSize, TokenListZstdLevel: cfg.Compression.SealedZstdCompressionLevel, DocsPositionsZstdLevel: cfg.Compression.SealedZstdCompressionLevel, TokenTableZstdLevel: cfg.Compression.SealedZstdCompressionLevel, @@ -284,7 +284,6 @@ func startStore( }, SkipSortDocs: !cfg.DocsSorting.Enabled, KeepMetaFile: false, - LIDBlockSize: int(cfg.Compression.LIDBlockSize), }, OffloadingEnabled: cfg.Offloading.Enabled, OffloadingRetention: cfg.Offloading.Retention, diff --git a/config/config.go b/config/config.go index 6ffe0667..0d929a7f 100644 --- a/config/config.go +++ b/config/config.go @@ -70,6 +70,13 @@ type Config struct { SealingQueueLen int `config:"sealing_queue_len" default:"10"` } `config:"storage"` + Sealing struct { + Lids struct { + // BlockSize sets max lids (postings) saved per LIDs block. + BlockSize int `config:"block_size" default:"65536"` + } `config:"lids"` + } `config:"sealing"` + Cluster struct { // WriteStores contains cold store instances which will be written to. WriteStores []string `config:"write_stores"` @@ -200,8 +207,6 @@ type Config struct { MetasZstdCompressionLevel int `config:"metas_zstd_compression_level" default:"1"` SealedZstdCompressionLevel int `config:"sealed_zstd_compression_level" default:"3"` DocBlockZstdCompressionLevel int `config:"doc_block_zstd_compression_level" default:"3"` - // LIDBlockSize sets max lids (postings) saved per LIDs block. - LIDBlockSize Bytes `config:"lid_block_size" default:"64KiB"` } `config:"compression"` Indexing struct { diff --git a/config/validation.go b/config/validation.go index 13174ac3..c305a706 100644 --- a/config/validation.go +++ b/config/validation.go @@ -3,8 +3,6 @@ package config import ( "cmp" "fmt" - - "github.com/alecthomas/units" ) type validateFn func() error @@ -70,8 +68,8 @@ func (c *Config) storeValidations() []validateFn { inRange("compression.sealed_zstd_compression_level", -7, 22, c.Compression.SealedZstdCompressionLevel), inRange("compression.doc_block_zstd_compression_level", -7, 22, c.Compression.DocBlockZstdCompressionLevel), - greaterThan("compression.lid_block_cap", 0, c.Compression.LIDBlockSize), - lessOrEqThan("compression.lid_block_cap", int(64*units.KiB), int(c.Compression.LIDBlockSize)), + greaterThan("sealing.lids.block_size", 0, c.Sealing.Lids.BlockSize), + lessOrEqThan("sealing.lids.block_size", 65536, c.Sealing.Lids.BlockSize), inRange("offloading.queue_size_percent", 0, 100, c.Offloading.QueueSizePercent), greaterThan("experimental.max_regex_tokens_check", -1, c.Experimental.MaxRegexTokensCheck), diff --git a/config/validation_test.go b/config/validation_test.go index c37c1da2..b0813697 100644 --- a/config/validation_test.go +++ b/config/validation_test.go @@ -87,15 +87,15 @@ limits: expectErr: false, }, { - name: "Invalid compression.lid_block_size", + name: "Invalid sealing.lids.block_size", cfg: baseCfg, - env: map[string]string{"SEQDB_COMPRESSION_LID_BLOCK_SIZE": "-1KiB"}, + env: map[string]string{"SEQDB_SEALING_LIDS_BLOCK_SIZE": "-1"}, expectErr: true, }, { - name: "Valid compression.lid_block_size", + name: "Valid sealing.lids.block_size", cfg: baseCfg, - env: map[string]string{"SEQDB_COMPRESSION_LID_BLOCK_SIZE": "8KiB"}, + env: map[string]string{"SEQDB_SEALING_LIDS_BLOCK_SIZE": "8192"}, expectErr: false, }, } diff --git a/docs/en/02-configuration.md b/docs/en/02-configuration.md index 019c163d..2be41678 100644 --- a/docs/en/02-configuration.md +++ b/docs/en/02-configuration.md @@ -110,7 +110,16 @@ Compression level settings for various data types. | `compression.metas_zstd_compression_level` | int | `1` | Zstandard compression level for metadata | | `compression.sealed_zstd_compression_level` | int | `3` | Zstandard compression level for sealed fractions | | `compression.doc_block_zstd_compression_level` | int | `3` | Zstandard compression level for document blocks | -| `compression.lid_block_size` | int | `64KiB` | Max lids (postings) saved per LIDs block | + +## Sealing Configuration + +Settings for fraction sealing. + +### Lids + +| Field | Type | Default | Description | +|-------|------|---------|-------------| +| `sealing.lids.block_size` | int | `65536` | Max lids (postings) saved per LIDs block | ## Indexing Configuration diff --git a/docs/ru/02-configuration.md b/docs/ru/02-configuration.md index 178e343c..6b91ff14 100644 --- a/docs/ru/02-configuration.md +++ b/docs/ru/02-configuration.md @@ -110,7 +110,16 @@ id: configuration | `compression.metas_zstd_compression_level` | int | `1` | Уровень сжатия для метаданных | | `compression.sealed_zstd_compression_level` | int | `3` | Уровень сжатия для запечатанных фракций | | `compression.doc_block_zstd_compression_level` | int | `3` | Уровень сжатия для блоков документов | -| `compression.lid_block_size` | int | `64KiB` | Максимальное количество лидов в блоках | + +## Конфигурация запечатывания + +Настройки запечатывания фракций. + +### Lids + +| Параметр | Тип | Значение по умолчанию | Описание | +|----------|-----|----------------------|-----------| +| `sealing.lids.block_size` | int | `65536` | Максимальное количество лидов в блоках | ## Конфигурация индексирования diff --git a/frac/active.go b/frac/active.go index dbedcda8..75d04e16 100644 --- a/frac/active.go +++ b/frac/active.go @@ -102,9 +102,6 @@ func NewActive( skipMaskProvider: skipMaskProvider, } - if cfg.LIDBlockSize > 0 { - f.info.ConstLIDBlockCap = cfg.LIDBlockSize - } // use of 0 as keys in maps is prohibited – it's system key, so add first element f.MIDs.Append(uint64(seq.SystemMID)) diff --git a/frac/config.go b/frac/config.go index 2abae098..3b1c1e97 100644 --- a/frac/config.go +++ b/frac/config.go @@ -5,7 +5,6 @@ type Config struct { SkipSortDocs bool KeepMetaFile bool - LIDBlockSize int } type SearchConfig struct { From 985f61a5c182095dcc2200c999a3a74cf8c23a07 Mon Sep 17 00:00:00 2001 From: Andrei Cheboksarov <37665782+cheb0@users.noreply.github.com> Date: Fri, 5 Jun 2026 15:28:13 +0400 Subject: [PATCH 5/6] merge main --- frac/sealed/lids/loader.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frac/sealed/lids/loader.go b/frac/sealed/lids/loader.go index 80a9a854..cf987a97 100644 --- a/frac/sealed/lids/loader.go +++ b/frac/sealed/lids/loader.go @@ -23,12 +23,12 @@ func (b *UnpackBuffer) Reset(fracVer config.BinaryDataVersion) { } if fracVer >= config.BinaryDataV4 { if b.decompressed == nil { - b.decompressed = make([]uint32, 0, consts.LIDBlockCap) + b.decompressed = make([]uint32, 0, consts.DefaultLIDBlockCap) } else { b.decompressed = b.decompressed[:0] } if b.compressed == nil { - b.compressed = make([]uint32, 0, consts.LIDBlockCap) + b.compressed = make([]uint32, 0, consts.DefaultLIDBlockCap) } else { b.compressed = b.compressed[:0] } From be241fabcf75998fe24e3d65ebf67116d681593e Mon Sep 17 00:00:00 2001 From: Andrei Cheboksarov <37665782+cheb0@users.noreply.github.com> Date: Fri, 5 Jun 2026 15:41:37 +0400 Subject: [PATCH 6/6] merge main --- frac/processor/search.go | 6 +++--- frac/sealed/sealing/index.go | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/frac/processor/search.go b/frac/processor/search.go index d50d930f..30ed4f45 100644 --- a/frac/processor/search.go +++ b/frac/processor/search.go @@ -53,9 +53,9 @@ var searchBuffersPool = sync.Pool{ return &searchBuffers{ // Currently, we drain up to 4k lids from eval tree, but with proper batching enabled // we can get as much as whole LID block can have (currently, 64k lids) - lids: make([]node.LID, 0, consts.LIDBlockCap), - mids: make([]seq.MID, 0, consts.LIDBlockCap), - rids: make([]seq.RID, 0, consts.LIDBlockCap), + lids: make([]node.LID, 0, consts.DefaultLIDBlockCap), + mids: make([]seq.MID, 0, consts.DefaultLIDBlockCap), + rids: make([]seq.RID, 0, consts.DefaultLIDBlockCap), } }, } diff --git a/frac/sealed/sealing/index.go b/frac/sealed/sealing/index.go index 8a413419..e14b36b9 100644 --- a/frac/sealed/sealing/index.go +++ b/frac/sealed/sealing/index.go @@ -45,7 +45,7 @@ func NewIndexSealer(params common.SealParams) *IndexSealer { params: params, buf1: make([]byte, 0, consts.RegularBlockSize), buf2: make([]byte, 0, consts.RegularBlockSize), - buf32: make([]uint32, 0, consts.LIDBlockCap), + buf32: make([]uint32, 0, consts.DefaultLIDBlockCap), buf64: make([]uint64, 0, consts.RegularBlockSize), } }