[ 
https://issues.apache.org/jira/browse/AMQ-9344?focusedWorklogId=900198&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-900198
 ]

ASF GitHub Bot logged work on AMQ-9344:
---------------------------------------

                Author: ASF GitHub Bot
            Created on: 17/Jan/24 18:40
            Start Date: 17/Jan/24 18:40
    Worklog Time Spent: 10m 
      Work Description: cshannon commented on code in PR #1139:
URL: https://github.com/apache/activemq/pull/1139#discussion_r1456289894


##########
activemq-broker/src/main/java/org/apache/activemq/broker/TransactionBroker.java:
##########
@@ -291,13 +294,43 @@ public void send(ProducerBrokerExchange producerExchange, 
final Message message)
             transaction = getTransaction(context, message.getTransactionId(), 
false);
         }
         context.setTransaction(transaction);
+
         try {
+            // [AMQ-9344] Limit uncommitted transactions by count
+            verifyUncommittedCount(producerExchange, transaction, message);
             next.send(producerExchange, message);
         } finally {
             context.setTransaction(originalTx);
         }
     }
 
+    protected void verifyUncommittedCount(ProducerBrokerExchange 
producerExchange, Transaction transaction, Message message) throws Exception {
+        // maxUncommittedCount <= 0 disables
+        int maxUncommittedCount = 
this.getBrokerService().getMaxUncommittedCount();

Review Comment:
   That should be fine since it's just a getter I was just figuring it's pretty 
unlikely it would ever be changed, it would be rare as likely you are going to 
set the limit to something reasonable in the first place.





Issue Time Tracking
-------------------

    Worklog Id:     (was: 900198)
    Time Spent: 1h 20m  (was: 1h 10m)

> Ability to configure a limit on uncommitted message count in a transaction
> --------------------------------------------------------------------------
>
>                 Key: AMQ-9344
>                 URL: https://issues.apache.org/jira/browse/AMQ-9344
>             Project: ActiveMQ
>          Issue Type: New Feature
>            Reporter: Matt Pavlovich
>            Assignee: Matt Pavlovich
>            Priority: Major
>             Fix For: 6.1.0
>
>          Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> 1. Add a config flag to limit the max number (by count and/or bytes) of 
> uncommitted message per transaction
> 2. Add a config flag to limit the max number of simultaneous transactions per 
> destination
> On limit exceeding, rollback the tx and return a ResourceAllocationException 
> to the client
> Possible default values:
> 6.x - unlimited (current behavior)
> 7.x - 10,000 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to