You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by gt...@apache.org on 2015/04/03 16:12:18 UTC

[1/3] activemq git commit: https://issues.apache.org/jira/browse/AMQ-5674 - revisit change - use single redelivey delay attribute for both initial and subsequent delays - resolves regression in BrokerRedeliveryTest

Repository: activemq
Updated Branches:
  refs/heads/master 94f1e98ad -> e16d05436


https://issues.apache.org/jira/browse/AMQ-5674  - revisit change - use single redelivey delay attribute for both initial and subsequent delays - resolves regression in BrokerRedeliveryTest


Project: http://git-wip-us.apache.org/repos/asf/activemq/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq/commit/1d71cb70
Tree: http://git-wip-us.apache.org/repos/asf/activemq/tree/1d71cb70
Diff: http://git-wip-us.apache.org/repos/asf/activemq/diff/1d71cb70

Branch: refs/heads/master
Commit: 1d71cb70367859223edfab65405d999a0ef21f7d
Parents: 7741e02
Author: gtully <ga...@gmail.com>
Authored: Fri Apr 3 14:18:55 2015 +0100
Committer: gtully <ga...@gmail.com>
Committed: Fri Apr 3 14:19:15 2015 +0100

----------------------------------------------------------------------
 .../apache/activemq/broker/util/RedeliveryPlugin.java | 14 ++++----------
 .../java/org/apache/activemq/RedeliveryPolicy.java    |  5 +----
 .../apache/activemq/ra/ActiveMQActivationSpec.java    |  1 +
 .../org/apache/activemq/RedeliveryPolicyTest.java     |  6 +++---
 .../apache/activemq/broker/BrokerRedeliveryTest.java  |  2 +-
 5 files changed, 10 insertions(+), 18 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq/blob/1d71cb70/activemq-broker/src/main/java/org/apache/activemq/broker/util/RedeliveryPlugin.java
----------------------------------------------------------------------
diff --git a/activemq-broker/src/main/java/org/apache/activemq/broker/util/RedeliveryPlugin.java b/activemq-broker/src/main/java/org/apache/activemq/broker/util/RedeliveryPlugin.java
index 5a90753..f270744 100644
--- a/activemq-broker/src/main/java/org/apache/activemq/broker/util/RedeliveryPlugin.java
+++ b/activemq-broker/src/main/java/org/apache/activemq/broker/util/RedeliveryPlugin.java
@@ -140,9 +140,10 @@ public class RedeliveryPlugin extends BrokerPluginSupport {
                     int redeliveryCount = messageReference.getRedeliveryCounter();
                     if (RedeliveryPolicy.NO_MAXIMUM_REDELIVERIES == maximumRedeliveries || redeliveryCount < maximumRedeliveries) {
 
-                        long delay = ( redeliveryCount == 0 ?
-                                redeliveryPolicy.getInitialRedeliveryDelay() :
-                                redeliveryPolicy.getNextRedeliveryDelay(getExistingDelay(messageReference)));
+                        long delay = redeliveryPolicy.getInitialRedeliveryDelay();
+                        for (int i = 0; i < redeliveryCount; i++) {
+                            delay = redeliveryPolicy.getNextRedeliveryDelay(delay);
+                        }
 
                         scheduleRedelivery(context, messageReference, delay, ++redeliveryCount);
                     } else if (isSendToDlqIfMaxRetriesExceeded()) {
@@ -199,11 +200,4 @@ public class RedeliveryPlugin extends BrokerPluginSupport {
         }
     }
 
-    private int getExistingDelay(MessageReference messageReference) throws IOException {
-        Object val = messageReference.getMessage().getProperty(REDELIVERY_DELAY);
-        if (val instanceof Long) {
-            return ((Long)val).intValue();
-        }
-        return 0;
-    }
 }

http://git-wip-us.apache.org/repos/asf/activemq/blob/1d71cb70/activemq-client/src/main/java/org/apache/activemq/RedeliveryPolicy.java
----------------------------------------------------------------------
diff --git a/activemq-client/src/main/java/org/apache/activemq/RedeliveryPolicy.java b/activemq-client/src/main/java/org/apache/activemq/RedeliveryPolicy.java
index e0a8f33..91f2b71 100644
--- a/activemq-client/src/main/java/org/apache/activemq/RedeliveryPolicy.java
+++ b/activemq-client/src/main/java/org/apache/activemq/RedeliveryPolicy.java
@@ -98,10 +98,7 @@ public class RedeliveryPolicy extends DestinationMapEntry implements Cloneable,
     }
 
     public long getNextRedeliveryDelay(long previousDelay) {
-        long nextDelay = initialRedeliveryDelay;
-        if (nextDelay == 0) {
-            nextDelay = redeliveryDelay;
-        }
+        long nextDelay = redeliveryDelay;
 
         if (previousDelay > 0 && useExponentialBackOff && backOffMultiplier > 1) {
             nextDelay = (long) (previousDelay * backOffMultiplier);

http://git-wip-us.apache.org/repos/asf/activemq/blob/1d71cb70/activemq-ra/src/main/java/org/apache/activemq/ra/ActiveMQActivationSpec.java
----------------------------------------------------------------------
diff --git a/activemq-ra/src/main/java/org/apache/activemq/ra/ActiveMQActivationSpec.java b/activemq-ra/src/main/java/org/apache/activemq/ra/ActiveMQActivationSpec.java
index c17f7f0..0c1440b 100644
--- a/activemq-ra/src/main/java/org/apache/activemq/ra/ActiveMQActivationSpec.java
+++ b/activemq-ra/src/main/java/org/apache/activemq/ra/ActiveMQActivationSpec.java
@@ -639,6 +639,7 @@ public class ActiveMQActivationSpec implements MessageActivationSpec, Serializab
      */
     public void setInitialRedeliveryDelay(long initialRedeliveryDelay) {
         lazyCreateRedeliveryPolicy().setInitialRedeliveryDelay(initialRedeliveryDelay);
+        redeliveryPolicy.setRedeliveryDelay(initialRedeliveryDelay);
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/activemq/blob/1d71cb70/activemq-unit-tests/src/test/java/org/apache/activemq/RedeliveryPolicyTest.java
----------------------------------------------------------------------
diff --git a/activemq-unit-tests/src/test/java/org/apache/activemq/RedeliveryPolicyTest.java b/activemq-unit-tests/src/test/java/org/apache/activemq/RedeliveryPolicyTest.java
index 1f8f687..b7a870a 100644
--- a/activemq-unit-tests/src/test/java/org/apache/activemq/RedeliveryPolicyTest.java
+++ b/activemq-unit-tests/src/test/java/org/apache/activemq/RedeliveryPolicyTest.java
@@ -75,11 +75,11 @@ public class RedeliveryPolicyTest extends JmsTestSupport {
         policy.setInitialRedeliveryDelay(500);
 
         long delay = policy.getNextRedeliveryDelay(500);
-        assertEquals(500, delay);
+        assertEquals(1000, delay);
         delay = policy.getNextRedeliveryDelay(delay);
-        assertEquals(500, delay);
+        assertEquals(1000, delay);
         delay = policy.getNextRedeliveryDelay(delay);
-        assertEquals(500, delay);
+        assertEquals(1000, delay);
 
     }
 

http://git-wip-us.apache.org/repos/asf/activemq/blob/1d71cb70/activemq-unit-tests/src/test/java/org/apache/activemq/broker/BrokerRedeliveryTest.java
----------------------------------------------------------------------
diff --git a/activemq-unit-tests/src/test/java/org/apache/activemq/broker/BrokerRedeliveryTest.java b/activemq-unit-tests/src/test/java/org/apache/activemq/broker/BrokerRedeliveryTest.java
index 1fc7a6a..4320ade 100644
--- a/activemq-unit-tests/src/test/java/org/apache/activemq/broker/BrokerRedeliveryTest.java
+++ b/activemq-unit-tests/src/test/java/org/apache/activemq/broker/BrokerRedeliveryTest.java
@@ -81,7 +81,7 @@ public class BrokerRedeliveryTest extends org.apache.activemq.TestSupport {
             LOG.info("got: " + brokerRedeliveryMessage);
             assertNotNull("got message via broker redelivery after delay", brokerRedeliveryMessage);
             assertEquals("message matches", message.getStringProperty("data"), brokerRedeliveryMessage.getStringProperty("data"));
-            assertEquals("has expiryDelay specified", i == 0 ? initialRedeliveryDelayMillis : redeliveryDelayMillis, brokerRedeliveryMessage.getLongProperty(RedeliveryPlugin.REDELIVERY_DELAY));
+            assertEquals("has expiryDelay specified - iteration:" + i, i == 0 ? initialRedeliveryDelayMillis : redeliveryDelayMillis, brokerRedeliveryMessage.getLongProperty(RedeliveryPlugin.REDELIVERY_DELAY));
 
             consumerSession.rollback();
         }


[2/3] activemq git commit: https://issues.apache.org/jira/browse/AMQ-5606 - reenable the karaf itest with the new amqp client - ActiveMQAMQPBrokerFeatureTest

Posted by gt...@apache.org.
https://issues.apache.org/jira/browse/AMQ-5606 - reenable the karaf itest with the new amqp client - ActiveMQAMQPBrokerFeatureTest


Project: http://git-wip-us.apache.org/repos/asf/activemq/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq/commit/7741e026
Tree: http://git-wip-us.apache.org/repos/asf/activemq/tree/7741e026
Diff: http://git-wip-us.apache.org/repos/asf/activemq/diff/7741e026

Branch: refs/heads/master
Commit: 7741e02622f97eb63d0870caefd8ad81f46248c7
Parents: 94f1e98
Author: gtully <ga...@gmail.com>
Authored: Thu Apr 2 16:56:10 2015 +0100
Committer: gtully <ga...@gmail.com>
Committed: Fri Apr 3 14:19:15 2015 +0100

----------------------------------------------------------------------
 activemq-karaf-itest/pom.xml                    |  8 +++++++-
 .../itest/ActiveMQAMQPBrokerFeatureTest.java    | 21 ++++++++------------
 pom.xml                                         |  1 +
 3 files changed, 16 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq/blob/7741e026/activemq-karaf-itest/pom.xml
----------------------------------------------------------------------
diff --git a/activemq-karaf-itest/pom.xml b/activemq-karaf-itest/pom.xml
index 721c6db..b6a0378 100644
--- a/activemq-karaf-itest/pom.xml
+++ b/activemq-karaf-itest/pom.xml
@@ -98,7 +98,7 @@
     </dependency>
     <dependency>
       <groupId>org.apache.qpid</groupId>
-      <artifactId>proton-jms</artifactId>
+      <artifactId>proton-j</artifactId>
       <version>${qpid-proton-version}</version>
     </dependency>
     <dependency>
@@ -107,6 +107,12 @@
       <version>${qpid-jms-version}</version>
       <scope>test</scope>
     </dependency>
+    <dependency>
+      <groupId>io.netty</groupId>
+      <artifactId>netty-all</artifactId>
+      <version>${netty-all-version}</version>
+      <scope>test</scope>
+    </dependency>
 
     <dependency>
       <groupId>org.apache.camel.karaf</groupId>

http://git-wip-us.apache.org/repos/asf/activemq/blob/7741e026/activemq-karaf-itest/src/test/java/org/apache/activemq/karaf/itest/ActiveMQAMQPBrokerFeatureTest.java
----------------------------------------------------------------------
diff --git a/activemq-karaf-itest/src/test/java/org/apache/activemq/karaf/itest/ActiveMQAMQPBrokerFeatureTest.java b/activemq-karaf-itest/src/test/java/org/apache/activemq/karaf/itest/ActiveMQAMQPBrokerFeatureTest.java
index dac4f47..f9ecba0 100644
--- a/activemq-karaf-itest/src/test/java/org/apache/activemq/karaf/itest/ActiveMQAMQPBrokerFeatureTest.java
+++ b/activemq-karaf-itest/src/test/java/org/apache/activemq/karaf/itest/ActiveMQAMQPBrokerFeatureTest.java
@@ -27,7 +27,6 @@ import org.ops4j.pax.exam.CoreOptions;
 import org.ops4j.pax.exam.Option;
 import org.ops4j.pax.exam.junit.PaxExam;
 
-@Ignore
 @RunWith(PaxExam.class)
 public class ActiveMQAMQPBrokerFeatureTest extends ActiveMQBrokerFeatureTest {
     private static final Integer AMQP_PORT = 61636;
@@ -35,9 +34,13 @@ public class ActiveMQAMQPBrokerFeatureTest extends ActiveMQBrokerFeatureTest {
     @Configuration
     public static Option[] configure() {
         Option[] activeMQOptions = configure("activemq");
+        Option netty = CoreOptions.wrappedBundle(CoreOptions.mavenBundle("io.netty", "netty-all").versionAsInProject().getURL().toString() + "$Bundle-SymbolicName=netty-all");
+        Option protonJ = CoreOptions.wrappedBundle(CoreOptions.mavenBundle("org.apache.qpid", "proton-j").versionAsInProject().getURL().toString() + "$Bundle-SymbolicName=proton-j");
         Option qpidClient = CoreOptions.wrappedBundle(CoreOptions.mavenBundle("org.apache.qpid", "qpid-jms-client").versionAsInProject().getURL().toString() + "$Bundle-SymbolicName=qpid-jms-client");
 
-        Option[] options = append(qpidClient, activeMQOptions);
+        Option[] options = append(protonJ, activeMQOptions);
+        options = append(netty, options);
+        options = append(qpidClient, options);
 
         Option[] configuredOptions = configureBrokerStart(options);
         return configuredOptions;
@@ -46,22 +49,14 @@ public class ActiveMQAMQPBrokerFeatureTest extends ActiveMQBrokerFeatureTest {
     @Override
     protected Connection getConnection() throws Throwable {
 
-        String amqpURI = "amqp://localhost" + AMQP_PORT;
+        String amqpURI = "amqp://localhost:" + AMQP_PORT;
         JmsConnectionFactory factory = new JmsConnectionFactory(amqpURI);
 
         factory.setUsername(AbstractFeatureTest.USER);
         factory.setPassword(AbstractFeatureTest.PASSWORD);
 
-        Connection connection = null;
-        ClassLoader originalLoader = Thread.currentThread().getContextClassLoader();
-        try {
-            // ensure service loader uses a loader that can find the impl - not the system classpath
-            Thread.currentThread().setContextClassLoader(factory.getClass().getClassLoader());
-            connection = factory.createConnection();
-            connection.start();
-        } finally {
-            Thread.currentThread().setContextClassLoader(originalLoader);
-        }
+        Connection connection = factory.createConnection();
+        connection.start();
         return connection;
     }
 

http://git-wip-us.apache.org/repos/asf/activemq/blob/7741e026/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index c5ebd5d..96c761a 100755
--- a/pom.xml
+++ b/pom.xml
@@ -106,6 +106,7 @@
     <zookeeper-version>3.4.6</zookeeper-version>
     <qpid-proton-version>0.8</qpid-proton-version>
     <qpid-jms-version>0.1.0</qpid-jms-version>
+    <netty-all-version>4.0.17.Final</netty-all-version>
     <regexp-version>1.3</regexp-version>
     <rome-version>1.0</rome-version>
     <saxon-version>9.5.1-2</saxon-version>


[3/3] activemq git commit: https://issues.apache.org/jira/browse/AMQ-5697 - fix regression in SimpleAuthorizationMapTest

Posted by gt...@apache.org.
https://issues.apache.org/jira/browse/AMQ-5697 - fix regression in SimpleAuthorizationMapTest


Project: http://git-wip-us.apache.org/repos/asf/activemq/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq/commit/e16d0543
Tree: http://git-wip-us.apache.org/repos/asf/activemq/tree/e16d0543
Diff: http://git-wip-us.apache.org/repos/asf/activemq/diff/e16d0543

Branch: refs/heads/master
Commit: e16d054362b51786576b71d01031aec1550653db
Parents: 1d71cb7
Author: gtully <ga...@gmail.com>
Authored: Fri Apr 3 15:13:44 2015 +0100
Committer: gtully <ga...@gmail.com>
Committed: Fri Apr 3 15:13:44 2015 +0100

----------------------------------------------------------------------
 .../apache/activemq/security/AuthorizationMapTest.java   | 11 ++++++++---
 .../activemq/security/SimpleAuthorizationMapTest.java    |  8 ++++++++
 2 files changed, 16 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq/blob/e16d0543/activemq-unit-tests/src/test/java/org/apache/activemq/security/AuthorizationMapTest.java
----------------------------------------------------------------------
diff --git a/activemq-unit-tests/src/test/java/org/apache/activemq/security/AuthorizationMapTest.java b/activemq-unit-tests/src/test/java/org/apache/activemq/security/AuthorizationMapTest.java
index dc4192f..59c9495 100644
--- a/activemq-unit-tests/src/test/java/org/apache/activemq/security/AuthorizationMapTest.java
+++ b/activemq-unit-tests/src/test/java/org/apache/activemq/security/AuthorizationMapTest.java
@@ -45,9 +45,8 @@ public class AuthorizationMapTest extends TestCase {
     }
 
     public void testComposite() {
-        DefaultAuthorizationMap map = (DefaultAuthorizationMap)createAuthorizationMap();
-        map.put(new ActiveMQQueue("QUEUEA"), createEntry("QUEUEA", "users", "users", "users"));
-        map.put(new ActiveMQQueue("QUEUEB"), createEntry("QUEUEB", "users", "users", "users"));
+        AuthorizationMap map = createAuthorizationMap();
+        addABEntry(map);
 
         Set<?> readACLs = map.getReadACLs(new ActiveMQQueue("USERS.FOO.BAR,DENIED"));
         assertEquals("set size: " + readACLs, 1, readACLs.size());
@@ -62,6 +61,12 @@ public class AuthorizationMapTest extends TestCase {
         assertTrue("Contains users group", readACLs.contains(USERS));
     }
 
+    protected void addABEntry(AuthorizationMap map) {
+        DefaultAuthorizationMap defaultMap = (DefaultAuthorizationMap) map;
+        defaultMap.put(new ActiveMQQueue("QUEUEA"), createEntry("QUEUEA", "users", "users", "users"));
+        defaultMap.put(new ActiveMQQueue("QUEUEB"), createEntry("QUEUEB", "users", "users", "users"));
+    }
+
     public void testAuthorizationMapWithTempDest() {
         AuthorizationMap map = createAuthorizationMapWithTempDest();
 

http://git-wip-us.apache.org/repos/asf/activemq/blob/e16d0543/activemq-unit-tests/src/test/java/org/apache/activemq/security/SimpleAuthorizationMapTest.java
----------------------------------------------------------------------
diff --git a/activemq-unit-tests/src/test/java/org/apache/activemq/security/SimpleAuthorizationMapTest.java b/activemq-unit-tests/src/test/java/org/apache/activemq/security/SimpleAuthorizationMapTest.java
index f86e0fc..4300600 100644
--- a/activemq-unit-tests/src/test/java/org/apache/activemq/security/SimpleAuthorizationMapTest.java
+++ b/activemq-unit-tests/src/test/java/org/apache/activemq/security/SimpleAuthorizationMapTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.activemq.security;
 
+import org.apache.activemq.command.ActiveMQQueue;
 /**
  * 
  * 
@@ -25,4 +26,11 @@ public class SimpleAuthorizationMapTest extends AuthorizationMapTest {
     protected AuthorizationMap createAuthorizationMap() {
         return SimpleSecurityBrokerSystemTest.createAuthorizationMap();
     }
+
+    protected void addABEntry(AuthorizationMap map) {
+        SimpleAuthorizationMap simpleMap = (SimpleAuthorizationMap) map;
+        simpleMap.getReadACLs().put(new ActiveMQQueue("QUEUEA"), USERS);
+        simpleMap.getReadACLs().put(new ActiveMQQueue("QUEUEB"), USERS);
+    }
+
 }