aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2020-05-13 15:06:40 +0200
committerGitHub <noreply@github.com>2020-05-13 15:06:40 +0200
commit3b9a4d250a93644e595472ea13851f454f3dc897 (patch)
tree3342f672ca9e37c6a5e5b4e61e5d191a4f615f15 /searchcore
parent40253cdee99ad3030b4dae02b38ff4a006d868be (diff)
parent53238ea2d254f35b5b0032c95c1eb3476d061318 (diff)
Merge pull request #13216 from vespa-engine/balder/limit-number-of-lids-per-file
Account and limit number of lids per file to reduce spkies during com…
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/config/proton.def3
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/documentdbconfigmanager.cpp1
2 files changed, 4 insertions, 0 deletions
diff --git a/searchcore/src/vespa/searchcore/config/proton.def b/searchcore/src/vespa/searchcore/config/proton.def
index a210698d5b6..111ee7d1272 100644
--- a/searchcore/src/vespa/searchcore/config/proton.def
+++ b/searchcore/src/vespa/searchcore/config/proton.def
@@ -250,6 +250,9 @@ summary.log.chunk.skipcrconread bool default=false
## Max size per summary file.
summary.log.maxfilesize long default=1000000000
+## Max number of lid entries per file
+summary.log.maxnumlids int default=40000000
+
## Max disk bloat factor. This will trigger compacting.
summary.log.maxdiskbloatfactor double default=0.1
diff --git a/searchcore/src/vespa/searchcore/proton/server/documentdbconfigmanager.cpp b/searchcore/src/vespa/searchcore/proton/server/documentdbconfigmanager.cpp
index d1d88434bd6..68e65acb87d 100644
--- a/searchcore/src/vespa/searchcore/proton/server/documentdbconfigmanager.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/documentdbconfigmanager.cpp
@@ -192,6 +192,7 @@ deriveConfig(const ProtonConfig::Summary & summary, const ProtonConfig::Flush::M
WriteableFileChunk::Config fileConfig(deriveCompression(chunk.compression), chunk.maxbytes);
LogDataStore::Config logConfig;
logConfig.setMaxFileSize(log.maxfilesize)
+ .setMaxNumLids(log.maxnumlids)
.setMaxDiskBloatFactor(std::min(flush.diskbloatfactor, flush.each.diskbloatfactor))
.setMaxBucketSpread(log.maxbucketspread).setMinFileSizeFactor(log.minfilesizefactor)
.compactCompression(deriveCompression(log.compact.compression))