You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ra...@apache.org on 2008/05/20 09:01:42 UTC

svn commit: r658127 - in /activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region: Queue.java Topic.java

Author: rajdavies
Date: Tue May 20 00:01:42 2008
New Revision: 658127

URL: http://svn.apache.org/viewvc?rev=658127&view=rev
Log:
Fix for https://issues.apache.org/activemq/browse/AMQ-1717

Modified:
    activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java
    activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java

Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java?rev=658127&r1=658126&r2=658127&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java Tue May 20 00:01:42 2008
@@ -424,6 +424,11 @@
         final ConnectionContext context = producerExchange.getConnectionContext();
         synchronized (sendLock) {
             if (store != null && message.isPersistent()) {
+                if (isProducerFlowControl() && context.isProducerFlowControl() ) {
+                    if (systemUsage.isSendFailIfNoSpace() && systemUsage.getStoreUsage().isFull()) {
+                        throw new javax.jms.ResourceAllocationException("Usage Manager Store is Full");
+                    }
+                }
                 while (!systemUsage.getStoreUsage().waitForSpace(1000)) {
                     if (context.getStopping().get()) {
                         throw new IOException(

Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java?rev=658127&r1=658126&r2=658127&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java Tue May 20 00:01:42 2008
@@ -385,6 +385,11 @@
 
         if (topicStore != null && message.isPersistent()
                 && !canOptimizeOutPersistence()) {
+            if (isProducerFlowControl() && context.isProducerFlowControl() ) {
+                if (systemUsage.isSendFailIfNoSpace() && systemUsage.getStoreUsage().isFull()) {
+                    throw new javax.jms.ResourceAllocationException("Usage Manager Store is Full");
+                }
+            }
             while (!systemUsage.getStoreUsage().waitForSpace(1000)) {
                 if (context.getStopping().get()) {
                     throw new IOException("Connection closed, send aborted.");