diff --git a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/LmdbObjectPersistentStore.java b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/LmdbObjectPersistentStore.java index 6b8e31c2..d7ab6573 100644 --- a/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/LmdbObjectPersistentStore.java +++ b/dhfs-parent/objects/src/main/java/com/usatiuk/objects/stores/LmdbObjectPersistentStore.java @@ -67,12 +67,15 @@ public class LmdbObjectPersistentStore implements ObjectPersistentStore { Log.info("Initializing with root " + _root); _root.toFile().mkdirs(); } + Log.info("Opening LMDB with root " + _root); _env = create() .setMapSize(lmdbSize) .setMaxDbs(1) .open(_root.toFile(), EnvFlags.MDB_NOTLS); _db = _env.openDbi(DB_NAME, MDB_CREATE); + Log.info("Opened LMDB with root " + _root); + try (Txn txn = _env.txnWrite()) { var read = readTxId(txn); if (read.isPresent()) { @@ -87,6 +90,7 @@ public class LmdbObjectPersistentStore implements ObjectPersistentStore { } _ready = true; + Log.info("LMDB storage ready"); } private Optional readTxId(Txn txn) { @@ -95,6 +99,9 @@ public class LmdbObjectPersistentStore implements ObjectPersistentStore { } void shutdown(@Observes @Priority(900) ShutdownEvent event) throws IOException { + if (!_ready) { + return; + } _ready = false; _db.close(); _env.close(); @@ -112,6 +119,7 @@ public class LmdbObjectPersistentStore implements ObjectPersistentStore { */ @Override public Snapshot getSnapshot() { + verifyReady(); var txn = _env.txnRead(); try { long commitId = readTxId(txn).orElseThrow();