SuccessChanges

Summary

  1. Make RocksdbObjectStore.exists not require a separate RocksDBReference (details)
  2. Reuse WriteBatch object in RocksdbObjectStore.putAll() (details)
  3. Disable RocksDB memory mapped files on Windows (details)
Commit 24c48d41f2f3dbd82fcfa8b317618a498bcb3cb8 by groldan
Make RocksdbObjectStore.exists not require a separate RocksDBReference
Signed-off-by: Gabriel Roldan <groldan@boundlessgeo.com>
The file was modifiedsrc/storage/rocksdb/src/main/java/org/locationtech/geogig/rocksdb/RocksdbObjectStore.java (diff)
Commit 381a3a71bbaabbd58bee91c85035ea17e761abb9 by groldan
Reuse WriteBatch object in RocksdbObjectStore.putAll()
Signed-off-by: Gabriel Roldan <groldan@boundlessgeo.com>
The file was modifiedsrc/storage/rocksdb/src/main/java/org/locationtech/geogig/rocksdb/RocksdbObjectStore.java (diff)
Commit ae096ed67bc9397de44beffbf5575322d8fb7f60 by groldan
Disable RocksDB memory mapped files on Windows
Allowing MMapped files on Windows for rocksdb produces the following
error when inserting a large (>1M) objects through putAll():
org.rocksdb.RocksDBException: IO error: Failed to FlushViewOfFile:
.../000015.sst: The process cannot access the file because another
process has locked a portion of the file. at
org.rocksdb.RocksDB.write0(Native Method) ~[rocksdbjni-4.11.2.jar:na] at
org.rocksdb.RocksDB.write(RocksDB.java:555) ~[rocksdbjni-4.11.2.jar:na]
at
org.locationtech.geogig.rocksdb.RocksdbObjectStore.putAll(RocksdbObjectStore.java:371)
(Note: DBoptions.setAllowOsBuffer(true) is removed since it defaults to
true anyways and it's removed in rocksdb 5.x)
Signed-off-by: Gabriel Roldan <groldan@boundlessgeo.com>
The file was modifiedsrc/core/src/main/java/org/locationtech/geogig/model/internal/RocksdbHandle.java (diff)
The file was modifiedsrc/storage/rocksdb/src/main/java/org/locationtech/geogig/rocksdb/RocksConnectionManager.java (diff)