Fix RocksDB: The info log (LOG, LOG.old.*) grows without limit because log rotation and retention are left at RocksDB defaults

This commit is contained in:
Maurus Decimus committed 2026-10-04 18:39:02 +02:00
1 parent 4e86c7ad2c
commit 063e4ac90c
2 files changed
+5

No files matched your search

+1
View File
@@ -25,6 +25,7 @@ If you are upgrading from v0.16.x, replace the binary (or run `docker pull`). If
- DNSBL answers with several return codes, such as a Spamhaus ZEN listing in both SBL and PBL, are scored for only the first code returned.
- DNSBL lookups that return "not listed" are cached for 24 hours regardless of the zone's negative TTL.
- MTA: Queue quotas with an empty `match` expression are never enforced, including the global queue quota created on first start.
- RocksDB: The info log (`LOG`, `LOG.old.*`) grows without limit because log rotation and retention are left at RocksDB defaults.
## [0.16.24] - 2026-09-27
+4
View File
@@ -24,6 +24,8 @@ const CHURN_DELETION_WINDOW: usize = 4096;
const CHURN_DELETION_TRIGGER: usize = 1024;
const CHURN_DELETION_RATIO: f64 = 0.5;
const BYTES_PER_SYNC: u64 = 1024 * 1024;
const MAX_LOG_FILE_SIZE: usize = 10 * 1024 * 1024;
const KEEP_LOG_FILE_NUM: usize = 5;
#[derive(Clone, Copy)]
enum CfProfile {
@@ -115,6 +117,8 @@ impl RocksDbStore {
.set_db_write_buffer_size((config.buffer_size as usize).max(MIN_DB_WRITE_BUFFER_SIZE));
db_opts.set_bytes_per_sync(BYTES_PER_SYNC);
db_opts.set_wal_bytes_per_sync(BYTES_PER_SYNC);
db_opts.set_max_log_file_size(MAX_LOG_FILE_SIZE);
db_opts.set_keep_log_file_num(KEEP_LOG_FILE_NUM);
Ok(Store::RocksDb(Arc::new(RocksDbStore {
db: OptimisticTransactionDB::open_cf_descriptors(&db_opts, idx_path, cfs)