Skip to content

Commit dcf64bd

Browse files
author
Youri K
committed
add compactAllData
1 parent aba1953 commit dcf64bd

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

src/main/scala/com/scalableminds/fossildb/db/RocksDBStore.scala

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,13 @@ class RocksDBManager(dataDir: Path, columnFamilies: List[String], optionsFilePat
7171
logger.info("Restoring from backup complete. Reopening RocksDB")
7272
}
7373

74+
def compactAllData() = {
75+
logger.info("Compacting all data")
76+
RocksDB.loadLibrary()
77+
db.compactRange()
78+
logger.info("All data has been compacted to last level containing data")
79+
}
80+
7481
def close(): Future[Unit] = {
7582
logger.info("Closing RocksDB handle")
7683
Future.successful(db.close())

src/main/scala/com/scalableminds/fossildb/db/StoreManager.scala

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,14 @@ class StoreManager(dataDir: Path, backupDir: Path, columnFamilies: List[String],
6666
}
6767
}
6868

69+
def compactAllData = {
70+
failDuringBackup
71+
failDuringRestore
72+
try {
73+
rocksDBManager.get.compactAllData()
74+
}
75+
}
76+
6977
def close = {
7078
rocksDBManager.map(_.close)
7179
}

0 commit comments

Comments
 (0)