From 655132fb059cfa70fb338d54f1bb0fb48198fb0f Mon Sep 17 00:00:00 2001
From: Valery Kharseko <vharseko@3a-systems.ru>
Date: Wed, 02 Sep 2026 06:44:10 +0000
Subject: [PATCH] [#873] Give each backend its own compressed schema trees (#881)
---
opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/JEStorage.java | 28 ++++++++++++++++++++++++++++
1 files changed, 28 insertions(+), 0 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/JEStorage.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/JEStorage.java
index cc9b870..4db4d9f 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/JEStorage.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/JEStorage.java
@@ -428,6 +428,21 @@
}
@Override
+ public boolean treeExists(TreeName treeName)
+ {
+ // Deliberately not getOrOpenTree(): dbConfig() sets allowCreate, so asking the tree itself
+ // would create the very database whose absence is being tested.
+ try
+ {
+ return env.getDatabaseNames().contains(toDatabaseName(treeName));
+ }
+ catch (DatabaseException e)
+ {
+ throw new StorageRuntimeException(e);
+ }
+ }
+
+ @Override
public Cursor<ByteString, ByteString> openCursor(final TreeName treeName)
{
try
@@ -551,6 +566,12 @@
}
@Override
+ public boolean treeExists(TreeName treeName)
+ {
+ return delegate.treeExists(treeName);
+ }
+
+ @Override
public void openTree(TreeName treeName, boolean createOnDemand)
{
if (createOnDemand)
@@ -638,6 +659,13 @@
{
return 0;
}
+
+ @Override
+ public boolean treeExists(TreeName treeName)
+ {
+ // No environment was ever opened, so nothing is stored.
+ return false;
+ }
}
private WriteableTransaction newWriteableTransaction(Transaction txn)
--
Gitblit v1.10.0