Skip to content

Commit 082899d

Browse files
authored
Add MAX_BACKGROUND_JOBS config for RocksDB (#1694)
1 parent 8ed3572 commit 082899d

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

samza-kv-rocksdb/src/main/java/org/apache/samza/storage/kv/RocksDbOptionsHelper.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,11 +72,20 @@ public class RocksDbOptionsHelper {
7272
private static final String ROCKSDB_MAX_OPEN_FILES = "rocksdb.max.open.files";
7373
private static final String ROCKSDB_MAX_FILE_OPENING_THREADS = "rocksdb.max.file.opening.threads";
7474

75+
private static final String ROCKSDB_MAX_BACKGROUND_JOBS = "rocksdb.max.background.jobs";
76+
7577
/**
7678
* RocksDB default for {@link RocksDbOptionsHelper#ROCKSDB_COMPACTION_MAX_BACKGROUND_COMPACTIONS} is 1.
7779
*/
7880
private static final int DEFAULT_ROCKSDB_COMPACTION_MAX_BACKGROUND_COMPACTIONS = 4;
7981

82+
/**
83+
* RocksDB default for {@link RocksDbOptionsHelper#ROCKSDB_MAX_BACKGROUND_JOBS} is 2
84+
* Note: {@link RocksDbOptionsHelper#ROCKSDB_COMPACTION_MAX_BACKGROUND_COMPACTIONS} is deprecated and is decided by
85+
* ROCKSDB_MAX_BACKGROUND_JOBS now.
86+
*/
87+
private static final int DEFAULT_ROCKSDB_MAX_BACKGROUND_JOBS = 4;
88+
8089

8190
public static Options options(Config storeConfig, int numTasksForContainer, File storeDir, StorageEngineFactory.StoreMode storeMode) {
8291
Options options = new Options();
@@ -174,6 +183,10 @@ private static void setCompactionOptions(Config storeConfig, Options options) {
174183
options.setTargetFileSizeBase(storeConfig.getLong(ROCKSDB_COMPACTION_TARGET_FILE_SIZE_MULTIPLIER));
175184
}
176185

186+
if (storeConfig.containsKey(ROCKSDB_MAX_BACKGROUND_JOBS)) {
187+
options.setMaxBackgroundJobs(storeConfig.getInt(ROCKSDB_MAX_BACKGROUND_JOBS, DEFAULT_ROCKSDB_MAX_BACKGROUND_JOBS));
188+
}
189+
177190
CompactionStyle compactionStyle = CompactionStyle.UNIVERSAL;
178191
String compactionStyleInConfig = storeConfig.get(ROCKSDB_COMPACTION_STYLE, "universal");
179192
switch (compactionStyleInConfig) {

0 commit comments

Comments
 (0)