This is an automated email from the ASF dual-hosted git repository.

rnewson pushed a commit to branch nouveau-healthcheck-test-failure-fix
in repository https://gitbox.apache.org/repos/asf/couchdb.git

commit f0b4989f9752dc9c1876efc22b1ffc2d1cf6c151
Author: Robert Newson <robert.news...@ibm.com>
AuthorDate: Thu Jun 6 22:39:07 2024 +0100

    IndexManager keep at least one index open
    
    the IndexHealthCheckTest intermittently fails we think because
    Caffeine is closing the index (flagged to be deleted on close) while
    the health check is running, as the test IndexManager had a maxIndexesOpen
    of 0, since that is what the int member variable is initialised to if
    not set explicitly.
---
 Makefile                                                              | 2 +-
 .../src/main/java/org/apache/couchdb/nouveau/core/IndexManager.java   | 4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/Makefile b/Makefile
index 3386d9c26..7b31656cc 100644
--- a/Makefile
+++ b/Makefile
@@ -563,7 +563,7 @@ nouveau-test: nouveau-test-gradle nouveau-test-elixir
 .PHONY: nouveau-test-gradle
 nouveau-test-gradle: couch nouveau
 ifeq ($(with_nouveau), true)
-       @cd nouveau && ./gradlew test --info
+       @cd nouveau && ./gradlew test --info --rerun
 endif
 
 .PHONY: nouveau-test-elixir
diff --git 
a/nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexManager.java 
b/nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexManager.java
index f6bfaccc3..8f891b1d7 100644
--- a/nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexManager.java
+++ b/nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexManager.java
@@ -26,6 +26,7 @@ import com.github.benmanes.caffeine.cache.RemovalListener;
 import com.github.benmanes.caffeine.cache.Scheduler;
 import com.github.benmanes.caffeine.cache.Weigher;
 import io.dropwizard.lifecycle.Managed;
+import jakarta.validation.constraints.Positive;
 import jakarta.ws.rs.WebApplicationException;
 import jakarta.ws.rs.core.Response.Status;
 import java.io.File;
@@ -68,7 +69,8 @@ public final class IndexManager implements Managed {
 
     private static final Logger LOGGER = 
LoggerFactory.getLogger(IndexManager.class);
 
-    private int maxIndexesOpen;
+    @Positive
+    private int maxIndexesOpen = 1;
 
     private int commitIntervalSeconds;
 

Reply via email to