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

madhan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ranger.git

commit 52f07b9446a4e250bc43c57c3c6b934b25c9d25f
Author: Madhan Neethiraj <mad...@apache.org>
AuthorDate: Wed Jul 26 14:24:31 2023 -0700

    RANGER-4332: updated AuditBatchQueue.log() to block instead of throwing 
'Queue full' exception
---
 .../main/java/org/apache/ranger/audit/queue/AuditBatchQueue.java | 9 +++++++--
 .../src/test/java/org/apache/ranger/audit/TestAuditQueue.java    | 2 +-
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git 
a/agents-audit/src/main/java/org/apache/ranger/audit/queue/AuditBatchQueue.java 
b/agents-audit/src/main/java/org/apache/ranger/audit/queue/AuditBatchQueue.java
index d9cd52b59..afa2879e2 100644
--- 
a/agents-audit/src/main/java/org/apache/ranger/audit/queue/AuditBatchQueue.java
+++ 
b/agents-audit/src/main/java/org/apache/ranger/audit/queue/AuditBatchQueue.java
@@ -56,8 +56,13 @@ public class AuditBatchQueue extends AuditQueue implements 
Runnable {
         */
        @Override
        public boolean log(AuditEventBase event) {
-               // Add to batchQueue. Block if full
-               queue.add(event);
+               try {
+                       // Add to batchQueue. Block if full
+                       queue.put(event);
+               } catch (InterruptedException ex) {
+                       throw new RuntimeException(ex);
+               }
+
                return true;
        }
 
diff --git 
a/security-admin/src/test/java/org/apache/ranger/audit/TestAuditQueue.java 
b/security-admin/src/test/java/org/apache/ranger/audit/TestAuditQueue.java
index d30854bef..c62fdd89a 100644
--- a/security-admin/src/test/java/org/apache/ranger/audit/TestAuditQueue.java
+++ b/security-admin/src/test/java/org/apache/ranger/audit/TestAuditQueue.java
@@ -255,7 +255,7 @@ public class TestAuditQueue {
                int batchSize = messageToSend / 3;
                int expectedBatchSize = batchSize
                                + (batchSize * 3 < messageToSend ? 1 : 0);
-               int queueSize = messageToSend * 2;
+               int queueSize = batchSize * 2;
                int intervalMS = messageToSend * 100; // Deliberately big 
interval
                Properties props = new Properties();
                props.put(basePropName + "." + AuditQueue.PROP_BATCH_SIZE, ""

Reply via email to