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

afs pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git

commit bd3f89604eaf1868acbd6177de2705a14cf874c2
Author: shah <[email protected]>
AuthorDate: Sat Aug 1 20:07:36 2026 +0200

    Add behavioral tests for ByteBufferPool no-bucket acquire
    
    Uses getNoBucketDirectAcquires() to verify acquire behavior directly,
    not just pool capacity. Second test confirms it fails against Jetty's
    default pool, proving the check discriminates.
---
 .../jena/fuseki/main/TestFusekiServerBuild.java    | 23 ++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestFusekiServerBuild.java
 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestFusekiServerBuild.java
index 24cc9e325f..1cf0eade9f 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestFusekiServerBuild.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestFusekiServerBuild.java
@@ -58,6 +58,7 @@ import org.apache.jena.fuseki.main.sys.FusekiSystemConstants;
 import org.apache.jena.system.Txn;
 import org.apache.jena.update.UpdateExecution;
 import org.eclipse.jetty.io.ArrayByteBufferPool;
+import org.eclipse.jetty.io.RetainableByteBuffer;
 import org.eclipse.jetty.server.Server;
 import org.junit.jupiter.api.Test;
 import org.slf4j.Logger;
@@ -96,6 +97,28 @@ public class TestFusekiServerBuild {
         assertTrue(pool.getMaxCapacity() >= 
FusekiSystemConstants.jettyOutputBufferSize);
     }
 
+    @Test public void fuseki_build_byte_buffer_pool_no_bucket_acquire() {
+        FusekiServer server = FusekiServer.create().port(0).build();
+        Server jettyServer = server.getJettyServer();
+        ArrayByteBufferPool pool = 
jettyServer.getBean(ArrayByteBufferPool.class);
+
+        int size = FusekiSystemConstants.jettyOutputBufferSize;
+        RetainableByteBuffer.Mutable buffer = pool.acquire(size, true);
+        buffer.release();
+
+        assertTrue(pool.getNoBucketDirectAcquires().isEmpty());
+    }
+
+    @Test public void 
byte_buffer_pool_default_capacity_fails_no_bucket_check() {
+        ArrayByteBufferPool defaultPool = new ArrayByteBufferPool();
+        int size = FusekiSystemConstants.jettyOutputBufferSize;
+
+        RetainableByteBuffer.Mutable buffer = defaultPool.acquire(size, true);
+        buffer.release();
+
+        assertFalse(defaultPool.getNoBucketDirectAcquires().isEmpty());
+    }
+
     // The port in "testing/jetty.xml" is 1077
 
     @Test public void fuseki_ext_jetty_xml_1() {

Reply via email to