JBoss hornetq SVN: r12186 - in trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration: management and 1 other directory.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 09:58:13 -0500 (Thu, 23 Feb 2012)
New Revision: 12186
Modified:
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTest.java
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTestBase.java
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/management/BroadcastGroupControlUsingCoreTest.java
Log:
improve tearDown() to avoid leaking threads.
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTest.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTest.java 2012-02-23 14:57:50 UTC (rev 12185)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTest.java 2012-02-23 14:58:13 UTC (rev 12186)
@@ -39,14 +39,12 @@
import org.hornetq.core.config.BridgeConfiguration;
import org.hornetq.core.config.CoreQueueConfiguration;
import org.hornetq.core.config.impl.ConfigurationImpl;
-import org.hornetq.core.logging.Logger;
import org.hornetq.core.postoffice.DuplicateIDCache;
import org.hornetq.core.postoffice.impl.PostOfficeImpl;
import org.hornetq.core.protocol.core.Packet;
import org.hornetq.core.protocol.core.impl.wireformat.SessionSendContinuationMessage;
import org.hornetq.core.protocol.core.impl.wireformat.SessionSendMessage;
import org.hornetq.core.remoting.impl.invm.TransportConstants;
-import org.hornetq.core.remoting.impl.netty.NettyConnectorFactory;
import org.hornetq.core.server.HornetQServer;
import org.hornetq.core.server.MessageReference;
import org.hornetq.core.server.Queue;
@@ -63,7 +61,7 @@
*
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
* @author Clebert Suconic
- *
+ *
* Created 14 Jan 2009 14:05:01
*
*
@@ -80,11 +78,11 @@
{
if (isNetty())
{
- return NettyConnectorFactory.class.getName();
+ return NETTY_CONNECTOR_FACTORY;
}
else
{
- return "org.hornetq.core.remoting.impl.invm.InVMConnectorFactory";
+ return INVM_CONNECTOR_FACTORY;
}
}
@@ -179,10 +177,10 @@
server1.start();
server0.start();
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc);
- ClientSessionFactory sf0 = locator.createSessionFactory(server0tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc));
+ ClientSessionFactory sf0 = addSessionFactory(locator.createSessionFactory(server0tc));
- ClientSessionFactory sf1 = locator.createSessionFactory(server1tc);
+ ClientSessionFactory sf1 = addSessionFactory(locator.createSessionFactory(server1tc));
ClientSession session0 = sf0.createSession(false, true, true);
@@ -263,8 +261,8 @@
{
}
}
-
-
+
+
assertEquals(0, loadQueues(server0).size());
}
@@ -274,12 +272,12 @@
{
internalTestMessageLoss(false);
}
-
+
public void testLostMessageLargeMessage() throws Exception
{
internalTestMessageLoss(true);
}
-
+
/** This test will ignore messages
What will cause the bridge to fail with a timeout
The bridge should still recover the failure and reconnect on that case */
@@ -289,7 +287,7 @@
{
public boolean ignoreSends = true;
public CountDownLatch latch;
-
+
MyInterceptor(int numberOfIgnores)
{
latch = new CountDownLatch(numberOfIgnores);
@@ -312,11 +310,11 @@
return true;
}
}
-
+
}
-
+
MyInterceptor myInterceptor = new MyInterceptor(3);
-
+
HornetQServer server0 = null;
HornetQServer server1 = null;
ServerLocator locator = null;
@@ -368,7 +366,7 @@
false,
ConfigurationImpl.DEFAULT_CLUSTER_USER,
ConfigurationImpl.DEFAULT_CLUSTER_PASSWORD);
-
+
bridgeConfiguration.setCallTimeout(500);
List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
@@ -386,11 +384,11 @@
server1.getConfiguration().setQueueConfigurations(queueConfigs1);
server1.start();
-
+
server1.getRemotingService().addInterceptor(myInterceptor);
server0.start();
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc));
ClientSessionFactory sf0 = locator.createSessionFactory(server0tc);
ClientSessionFactory sf1 = locator.createSessionFactory(server1tc);
@@ -424,7 +422,7 @@
producer0.send(message);
}
-
+
myInterceptor.latch.await();
myInterceptor.ignoreSends = false;
@@ -477,10 +475,8 @@
{
}
}
-
-
- assertEquals(0, loadQueues(server0).size());
+ assertEquals("there should be no queues", 0, loadQueues(server0).size());
}
/**
@@ -601,7 +597,7 @@
server1.start();
server0.start();
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc));
ClientSessionFactory sf0 = locator.createSessionFactory(server0tc);
ClientSessionFactory sf1 = locator.createSessionFactory(server1tc);
@@ -659,7 +655,7 @@
ClientMessage message = consumer1.receive(2000);
Assert.assertNotNull(message);
-
+
Assert.assertEquals("goat", message.getStringProperty(selectorKey));
Assert.assertEquals(i, message.getObjectProperty(propKey));
@@ -671,9 +667,9 @@
readMessages(message);
}
}
-
+
session0.commit();
-
+
session1.commit();
Assert.assertNull(consumer1.receiveImmediate());
@@ -710,13 +706,13 @@
}
}
-
+
if (useFiles)
{
Map<Long, AtomicInteger> counters = loadQueues(server0);
assertEquals(1, counters.size());
Long key = counters.keySet().iterator().next();
-
+
AtomicInteger value = counters.get(key);
assertNotNull(value);
assertEquals(numMessages, counters.get(key).intValue());
@@ -785,7 +781,7 @@
server0.start();
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc));
ClientSessionFactory sf0 = locator.createSessionFactory(server0tc);
ClientSession session0 = sf0.createSession(false, true, true);
@@ -881,7 +877,7 @@
}
}
-
+
assertEquals(0, loadQueues(server0).size());
@@ -946,7 +942,7 @@
server0.start();
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc));
ClientSessionFactory sf0 = locator.createSessionFactory(server0tc);
ClientSession session0 = sf0.createSession(false, true, true);
@@ -1070,7 +1066,7 @@
}
}
-
+
assertEquals(0, loadQueues(server0).size());
@@ -1149,7 +1145,7 @@
server1.start();
server0.start();
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc));
ClientSessionFactory sf0 = locator.createSessionFactory(server0tc);
ClientSessionFactory sf1 = locator.createSessionFactory(server1tc);
@@ -1232,7 +1228,7 @@
}
}
-
+
assertEquals(0, loadQueues(server0).size());
@@ -1318,7 +1314,7 @@
{
try
{
- ServerLocator locator = HornetQClient.createServerLocatorWithoutHA(server1tc);
+ ServerLocator locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server1tc));
ClientSessionFactory sf = locator.createSessionFactory();
@@ -1367,8 +1363,8 @@
@Override
public void run()
{
- ServerLocator locator = HornetQClient.createServerLocatorWithoutHA(server0tc);
-
+ ServerLocator locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc));
+
locator.setBlockOnDurableSend(false);
locator.setBlockOnNonDurableSend(false);
@@ -1392,8 +1388,8 @@
ClientMessage message = session.createMessage(true);
message.putIntProperty("seq", i);
-
-
+
+
if (i % 100 == 0)
{
message.setPriority((byte)(RandomUtil.randomPositiveInt() % 9));
@@ -1433,7 +1429,7 @@
for (int repeat = 0 ; repeat < totalrepeats; repeat++)
{
ArrayList<Thread> threads = new ArrayList<Thread>();
-
+
threads.add(new ConsumerThread());
threads.add(new ProducerThread(numMessages / 2));
threads.add(new ProducerThread(numMessages / 2));
@@ -1442,12 +1438,12 @@
{
t.start();
}
-
+
for (Thread t : threads)
{
t.join();
}
-
+
assertEquals(0, errors.get());
}
}
@@ -1471,7 +1467,7 @@
}
}
-
+
assertEquals(0, loadQueues(server0).size());
@@ -1548,7 +1544,7 @@
server1.start();
server0.start();
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc));
ClientSessionFactory sf0 = locator.createSessionFactory(server0tc);
ClientSessionFactory sf1 = locator.createSessionFactory(server1tc);
@@ -1620,8 +1616,8 @@
{
}
}
-
-
+
+
assertEquals(0, loadQueues(server0).size());
@@ -1700,7 +1696,7 @@
server1.start();
server0.start();
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc));
ClientSessionFactory sf0 = locator.createSessionFactory(server0tc);
ClientSessionFactory sf1 = locator.createSessionFactory(server1tc);
@@ -1729,7 +1725,7 @@
producer0.send(message);
}
-
+
session0.commit();
for (int i = 0; i < numMessages; i++)
@@ -1739,9 +1735,9 @@
Assert.assertNotNull(message);
Assert.assertEquals(i, message.getObjectProperty(propKey));
-
+
HornetQBuffer buff = message.getBodyBuffer();
-
+
for (int posMsg = 0 ; posMsg < LARGE_MESSAGE_SIZE; posMsg++)
{
assertEquals(getSamplebyte(posMsg), buff.readByte());
@@ -1749,7 +1745,7 @@
message.acknowledge();
}
-
+
session1.commit();
Assert.assertNull(consumer1.receiveImmediate());
@@ -1761,8 +1757,8 @@
sf0.close();
sf1.close();
-
-
+
+
}
finally
{
@@ -1786,7 +1782,7 @@
{
}
}
-
+
assertEquals(0, loadQueues(server0).size());
}
@@ -1864,7 +1860,7 @@
server1.start();
server0.start();
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server1tc));
ClientSessionFactory sf0 = locator.createSessionFactory(server0tc);
ClientSessionFactory sf1 = locator.createSessionFactory(server1tc);
@@ -1938,7 +1934,7 @@
{
}
}
-
+
assertEquals(0, loadQueues(server0).size());
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTestBase.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTestBase.java 2012-02-23 14:57:50 UTC (rev 12185)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTestBase.java 2012-02-23 14:58:13 UTC (rev 12186)
@@ -21,7 +21,6 @@
import org.hornetq.api.core.TransportConfiguration;
import org.hornetq.core.config.Configuration;
import org.hornetq.core.remoting.impl.invm.InVMConnector;
-import org.hornetq.core.remoting.impl.netty.NettyAcceptorFactory;
import org.hornetq.core.server.HornetQServer;
import org.hornetq.core.server.HornetQServers;
import org.hornetq.core.server.NodeManager;
@@ -81,15 +80,13 @@
{
params.put(org.hornetq.core.remoting.impl.netty.TransportConstants.PORT_PROP_NAME,
org.hornetq.core.remoting.impl.netty.TransportConstants.DEFAULT_PORT + id);
- serviceConf.getAcceptorConfigurations().add(new TransportConfiguration(NettyAcceptorFactory.class.getName(),
- params));
+ serviceConf.getAcceptorConfigurations().add(new TransportConfiguration(NETTY_ACCEPTOR_FACTORY, params));
}
else
{
params.put(org.hornetq.core.remoting.impl.invm.TransportConstants.SERVER_ID_PROP_NAME, id);
- serviceConf.getAcceptorConfigurations()
- .add(new TransportConfiguration("org.hornetq.core.remoting.impl.invm.InVMAcceptorFactory", params));
+ serviceConf.getAcceptorConfigurations().add(new TransportConfiguration(INVM_ACCEPTOR_FACTORY, params));
}
HornetQServer service;
if(nodeManager == null)
@@ -129,15 +126,13 @@
{
params.put(org.hornetq.core.remoting.impl.netty.TransportConstants.PORT_PROP_NAME,
org.hornetq.core.remoting.impl.netty.TransportConstants.DEFAULT_PORT + id);
- serviceConf.getAcceptorConfigurations().add(new TransportConfiguration(NettyAcceptorFactory.class.getName(),
- params));
+ serviceConf.getAcceptorConfigurations().add(new TransportConfiguration(NETTY_ACCEPTOR_FACTORY, params));
}
else
{
params.put(org.hornetq.core.remoting.impl.invm.TransportConstants.SERVER_ID_PROP_NAME, id);
- serviceConf.getAcceptorConfigurations()
- .add(new TransportConfiguration("org.hornetq.core.remoting.impl.invm.InVMAcceptorFactory", params));
+ serviceConf.getAcceptorConfigurations().add(new TransportConfiguration(INVM_ACCEPTOR_FACTORY, params));
}
HornetQServer service;
if(nodeManager == null)
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/management/BroadcastGroupControlUsingCoreTest.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/management/BroadcastGroupControlUsingCoreTest.java 2012-02-23 14:57:50 UTC (rev 12185)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/management/BroadcastGroupControlUsingCoreTest.java 2012-02-23 14:58:13 UTC (rev 12186)
@@ -13,15 +13,11 @@
package org.hornetq.tests.integration.management;
-import org.hornetq.api.core.TransportConfiguration;
import org.hornetq.api.core.client.ClientSession;
import org.hornetq.api.core.client.ClientSessionFactory;
-import org.hornetq.api.core.client.HornetQClient;
import org.hornetq.api.core.client.ServerLocator;
import org.hornetq.api.core.management.BroadcastGroupControl;
import org.hornetq.api.core.management.ResourceNames;
-import org.hornetq.core.client.impl.ClientSessionFactoryImpl;
-import org.hornetq.core.remoting.impl.invm.InVMConnectorFactory;
/**
* A BroadcastGroupControlUsingCoreTest
@@ -33,24 +29,12 @@
public class BroadcastGroupControlUsingCoreTest extends BroadcastGroupControlTest
{
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- private ClientSession session;
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- // BroadcastGroupControlTest overrides --------------------------------
-
@Override
protected BroadcastGroupControl createManagementControl(final String name) throws Exception
{
- ServerLocator locator = HornetQClient.createServerLocatorWithoutHA(new TransportConfiguration(InVMConnectorFactory.class.getName()));
- ClientSessionFactory sf = locator.createSessionFactory();
- session = sf.createSession(false, true, true);
+ ServerLocator locator = createInVMNonHALocator();
+ ClientSessionFactory sf = addSessionFactory(locator.createSessionFactory());
+ final ClientSession session = addClientSession(sf.createSession(false, true, true));
session.start();
return new BroadcastGroupControl()
@@ -109,28 +93,4 @@
}
};
}
-
- // Public --------------------------------------------------------
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void tearDown() throws Exception
- {
- if (session != null)
- {
- session.close();
- }
-
- session = null;
-
- super.tearDown();
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-
}
13 years
JBoss hornetq SVN: r12185 - trunk/hornetq-core/src/main/java/org/hornetq/core/client/impl.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 09:57:50 -0500 (Thu, 23 Feb 2012)
New Revision: 12185
Modified:
trunk/hornetq-core/src/main/java/org/hornetq/core/client/impl/ServerLocatorImpl.java
Log:
Check for null TransportConfiguration as seen in DiscoveryClusterWithBackupFailoverTest.testFailBackupNodes() build 148.
Modified: trunk/hornetq-core/src/main/java/org/hornetq/core/client/impl/ServerLocatorImpl.java
===================================================================
--- trunk/hornetq-core/src/main/java/org/hornetq/core/client/impl/ServerLocatorImpl.java 2012-02-23 14:19:44 UTC (rev 12184)
+++ trunk/hornetq-core/src/main/java/org/hornetq/core/client/impl/ServerLocatorImpl.java 2012-02-23 14:57:50 UTC (rev 12185)
@@ -729,6 +729,11 @@
retry = false;
TransportConfiguration tc = selectConnector();
+ if (tc == null)
+ {
+ throw new HornetQException(HornetQException.ILLEGAL_STATE,
+ "Couldn't select a TransportConfiguration to create SessionFactory");
+ }
// try each factory in the list until we find one which works
13 years
JBoss hornetq SVN: r12184 - trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/stomp/v11.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 09:19:44 -0500 (Thu, 23 Feb 2012)
New Revision: 12184
Modified:
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/stomp/v11/ExtraStompTest.java
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/stomp/v11/StompTestBase2.java
Log:
protect tearDown from setUp failures, say ChannelException on server initialization.
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/stomp/v11/ExtraStompTest.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/stomp/v11/ExtraStompTest.java 2012-02-23 14:19:24 UTC (rev 12183)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/stomp/v11/ExtraStompTest.java 2012-02-23 14:19:44 UTC (rev 12184)
@@ -10,16 +10,12 @@
public class ExtraStompTest extends StompTestBase2
{
+ @Override
protected void setUp() throws Exception
{
persistenceEnabled = true;
super.setUp();
}
-
- protected void tearDown() throws Exception
- {
- super.tearDown();
- }
public void testSendAndReceive10() throws Exception
{
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/stomp/v11/StompTestBase2.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/stomp/v11/StompTestBase2.java 2012-02-23 14:19:24 UTC (rev 12183)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/stomp/v11/StompTestBase2.java 2012-02-23 14:19:44 UTC (rev 12184)
@@ -55,7 +55,7 @@
private static final transient Logger log = Logger.getLogger(StompTestBase2.class);
protected String hostname = "127.0.0.1";
-
+
protected int port = 61613;
private ConnectionFactory connectionFactory;
@@ -69,15 +69,16 @@
protected Topic topic;
protected JMSServerManager server;
-
+
protected String defUser = "brianm";
-
+
protected String defPass = "wombats";
-
+
protected boolean persistenceEnabled = false;
// Implementation methods
// -------------------------------------------------------------------------
+ @Override
protected void setUp() throws Exception
{
super.setUp();
@@ -95,14 +96,14 @@
/**
* @return
- * @throws Exception
+ * @throws Exception
*/
protected JMSServerManager createServer() throws Exception
{
Configuration config = createBasicConfig();
config.setSecurityEnabled(false);
config.setPersistenceEnabled(persistenceEnabled);
-
+
System.out.println("-----------------server persist: " + persistenceEnabled);
Map<String, Object> params = new HashMap<String, Object>();
@@ -111,7 +112,7 @@
TransportConfiguration stompTransport = new TransportConfiguration(NettyAcceptorFactory.class.getName(), params);
config.getAcceptorConfigurations().add(stompTransport);
config.getAcceptorConfigurations().add(new TransportConfiguration(InVMAcceptorFactory.class.getName()));
- HornetQServer hornetQServer = HornetQServers.newHornetQServer(config, defUser, defPass);
+ HornetQServer hornetQServer = addServer(HornetQServers.newHornetQServer(config, defUser, defPass));
JMSConfiguration jmsConfig = new JMSConfigurationImpl();
jmsConfig.getQueueConfigurations()
@@ -122,13 +123,20 @@
return server;
}
+ @Override
protected void tearDown() throws Exception
{
- connection.close();
-
- server.stop();
-
- super.tearDown();
+ try
+ {
+ if (connection != null)
+ connection.close();
+ if (server != null)
+ server.stop();
+ }
+ finally
+ {
+ super.tearDown();
+ }
}
protected ConnectionFactory createConnectionFactory()
13 years
JBoss hornetq SVN: r12183 - in trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration: xa and 1 other directory.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 09:19:24 -0500 (Thu, 23 Feb 2012)
New Revision: 12183
Modified:
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeReconnectTest.java
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTestBase.java
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/xa/BasicXaTest.java
Log:
Improve tests tearDown() to avoid leaks
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeReconnectTest.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeReconnectTest.java 2012-02-23 14:19:03 UTC (rev 12182)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeReconnectTest.java 2012-02-23 14:19:24 UTC (rev 12183)
@@ -48,7 +48,7 @@
* A BridgeReconnectTest
*
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
- *
+ *
* Created 20 Jan 2009 19:20:41
*
*
@@ -167,15 +167,15 @@
waitForServerStart(service2);
- locator = HornetQClient.createServerLocatorWithoutHA(server0tc, server2tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithoutHA(server0tc, server2tc));
- ClientSessionFactory csf0 = locator.createSessionFactory(server2tc);
+ ClientSessionFactory csf0 = addSessionFactory(locator.createSessionFactory(server2tc));
ClientSession session0 = csf0.createSession(false, true, true);
ClientProducer prod0 = session0.createProducer(testAddress);
- ClientSessionFactory csf2 = locator.createSessionFactory(server2tc);
+ ClientSessionFactory csf2 = addSessionFactory(locator.createSessionFactory(server2tc));
ClientSession session2 = csf2.createSession(false, true, true);
@@ -305,12 +305,12 @@
// Now we will simulate a failure of the bridge connection between server0 and server1
server0.stop(true);
- locator = HornetQClient.createServerLocatorWithHA(server2tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithHA(server2tc));
locator.setReconnectAttempts(100);
- ClientSessionFactory csf0 = locator.createSessionFactory(server2tc);
+ ClientSessionFactory csf0 = addSessionFactory(locator.createSessionFactory(server2tc));
ClientSession session0 = csf0.createSession(false, true, true);
- ClientSessionFactory csf2 = locator.createSessionFactory(server2tc);
+ ClientSessionFactory csf2 = addSessionFactory(locator.createSessionFactory(server2tc));
ClientSession session2 = csf2.createSession(false, true, true);
ClientProducer prod0 = session0.createProducer(testAddress);
@@ -430,7 +430,7 @@
server1.start();
server0.start();
- locator = HornetQClient.createServerLocatorWithHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithHA(server0tc, server1tc));
ClientSessionFactory csf0 = locator.createSessionFactory(server0tc);
ClientSession session0 = csf0.createSession(false, true, true);
@@ -574,11 +574,11 @@
{
server1.start();
server0.start();
-
+
waitForServerStart(server0);
waitForServerStart(server1);
- locator = HornetQClient.createServerLocatorWithHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithHA(server0tc, server1tc));
ClientSessionFactory csf0 = locator.createSessionFactory(server0tc);
ClientSession session0 = csf0.createSession(false, true, true);
@@ -644,7 +644,7 @@
Assert.assertEquals(0, server0.getRemotingService().getConnections().size());
Assert.assertEquals(0, server1.getRemotingService().getConnections().size());
}
-
+
public void testFailoverThenFailAgainAndReconnect() throws Exception
{
Map<String, Object> server0Params = new HashMap<String, Object>();
@@ -715,7 +715,7 @@
server1.start();
server0.start();
- locator = HornetQClient.createServerLocatorWithHA(server0tc, server1tc);
+ locator = addServerLocator(HornetQClient.createServerLocatorWithHA(server0tc, server1tc));
ClientSessionFactory csf0 = locator.createSessionFactory(server0tc);
ClientSession session0 = csf0.createSession(false, true, true);
@@ -733,7 +733,7 @@
InVMConnector.failOnCreateConnection = true;
InVMConnector.numberOfFailures = reconnectAttempts - 1;
forwardingConnection.fail(new HornetQException(HornetQException.NOT_CONNECTED));
-
+
final int numMessages = NUM_MESSAGES;
SimpleString propKey = new SimpleString("propkey");
@@ -790,8 +790,8 @@
supposed = i;
}
}
-
+
session0.close();
session1.close();
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTestBase.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTestBase.java 2012-02-23 14:19:03 UTC (rev 12182)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/bridge/BridgeTestBase.java 2012-02-23 14:19:24 UTC (rev 12183)
@@ -13,7 +13,6 @@
package org.hornetq.tests.integration.cluster.bridge;
-import java.util.ArrayList;
import java.util.Map;
import java.util.concurrent.TimeUnit;
@@ -42,19 +41,9 @@
public abstract class BridgeTestBase extends UnitTestCase
{
- private ArrayList<HornetQServer> servers;
-
@Override
- public void setUp() throws Exception
- {
- super.setUp();
- servers = new ArrayList<HornetQServer>();
- }
-
- @Override
public void tearDown() throws Exception
{
- servers = null;
InVMConnector.failOnCreateConnection = false;
super.tearDown();
@@ -112,7 +101,6 @@
service = new InVMNodeManagerServer(serviceConf, nodeManager);
}
addServer(service);
- servers.add(service);
return service;
}
@@ -161,7 +149,6 @@
service = new InVMNodeManagerServer(serviceConf, nodeManager);
}
addServer(service);
- servers.add(service);
return service;
}
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/xa/BasicXaTest.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/xa/BasicXaTest.java 2012-02-23 14:19:03 UTC (rev 12182)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/xa/BasicXaTest.java 2012-02-23 14:19:24 UTC (rev 12183)
@@ -94,13 +94,8 @@
ServerLocator locator = createInVMNonHALocator();
ClientSessionFactory factory = createSessionFactory(locator);
- ClientSession session = null;
+ ClientSession session = addClientSession(factory.createSession(true, false, false));
- try
- {
-
- session = factory.createSession(true, false, false);
-
session.createQueue("Test", "Test");
ClientProducer prod = session.createProducer("Test");
@@ -112,13 +107,6 @@
ClientConsumer cons = session.createConsumer("Test");
assertNotNull("Send went through an invalid XA Session", cons.receiveImmediate());
- }
- finally
- {
- factory.close();
-
- session.close();
- }
}
@@ -129,13 +117,8 @@
ClientSessionFactory factory = createSessionFactory(locator);
- ClientSession session = null;
+ ClientSession session = addClientSession(factory.createSession(false, true, true));
- try
- {
-
- session = factory.createSession(false, true, true);
-
session.createQueue("Test", "Test");
ClientProducer prod = session.createProducer("Test");
@@ -144,7 +127,7 @@
session.close();
- session = factory.createSession(true, false, false);
+ session = addClientSession(factory.createSession(true, false, false));
session.start();
@@ -159,7 +142,7 @@
session.close();
- session = factory.createSession(false, false, false);
+ session = addClientSession(factory.createSession(false, false, false));
session.start();
@@ -168,14 +151,6 @@
msg = cons.receiveImmediate();
assertNull("Acknowledge went through invalid XA Session", msg);
-
-
-
- }
- finally
- {
- session.close();
- }
}
13 years
JBoss hornetq SVN: r12182 - in trunk: tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover and 1 other directory.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 09:19:03 -0500 (Thu, 23 Feb 2012)
New Revision: 12182
Modified:
trunk/hornetq-journal/src/main/java/org/hornetq/core/journal/impl/JournalFilesRepository.java
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncJournalTest.java
Log:
HORNETQ-720 Fix test, exact match for sync'ed journal files and match records for 'regular' replicated journal files.
Modified: trunk/hornetq-journal/src/main/java/org/hornetq/core/journal/impl/JournalFilesRepository.java
===================================================================
--- trunk/hornetq-journal/src/main/java/org/hornetq/core/journal/impl/JournalFilesRepository.java 2012-02-23 14:18:38 UTC (rev 12181)
+++ trunk/hornetq-journal/src/main/java/org/hornetq/core/journal/impl/JournalFilesRepository.java 2012-02-23 14:19:03 UTC (rev 12182)
@@ -83,7 +83,7 @@
private Executor openFilesExecutor;
- private Runnable pushOpenRunnable = new Runnable()
+ private final Runnable pushOpenRunnable = new Runnable()
{
public void run()
{
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncJournalTest.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncJournalTest.java 2012-02-23 14:18:38 UTC (rev 12181)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncJournalTest.java 2012-02-23 14:19:03 UTC (rev 12182)
@@ -4,6 +4,7 @@
import java.util.Set;
import org.hornetq.api.core.HornetQException;
+import org.hornetq.api.core.Pair;
import org.hornetq.api.core.TransportConfiguration;
import org.hornetq.api.core.client.ClientConsumer;
import org.hornetq.api.core.client.ClientMessage;
@@ -62,11 +63,13 @@
messageJournal.forceMoveNextFile();
sendMessages(session, producer, n_msgs);
}
+ Set<Pair<Long, Integer>> preSyncFileIDs = getFileIds(messageJournal);
backupServer.start();
// Deliver messages with Backup in-sync
waitForRemoteBackup(sessionFactory, BACKUP_WAIT_TIME, false, backupServer.getServer());
+ final JournalImpl backupMsgJournal = getMessageJournalFromServer(backupServer);
sendMessages(session, producer, n_msgs);
// Deliver messages with Backup up-to-date
@@ -75,7 +78,7 @@
// SEND more messages, now with the backup replicating
sendMessages(session, producer, n_msgs);
- Set<Long> liveIds = getFileIds(messageJournal);
+ Set<Pair<Long, Integer>> liveIds = getFileIds(messageJournal);
int size = messageJournal.getFileSize();
PagingStore ps = liveServer.getServer().getPagingManager().getPageStore(ADDRESS);
if (ps.getPageSizeBytes() == PAGE_SIZE)
@@ -85,12 +88,26 @@
}
finishSyncAndFailover();
- JournalImpl backupMsgJournal = getMessageJournalFromServer(backupServer);
-
assertEquals("file sizes must be the same", size, backupMsgJournal.getFileSize());
- Set<Long> backupIds = getFileIds(backupMsgJournal);
- assertEquals("File IDs must match!", liveIds, backupIds);
+ Set<Pair<Long, Integer>> backupIds = getFileIds(backupMsgJournal);
+ for (Pair<Long, Integer> pair : preSyncFileIDs)
+ {
+ assertTrue("sanity check", liveIds.remove(pair));
+ assertTrue("backup must have the same file " + pair, backupIds.remove(pair));
+ }
+ int total = 0;
+ for (Pair<Long, Integer> pair : liveIds)
+ {
+ total += pair.getB();
+ }
+ int totalBackup = 0;
+ for (Pair<Long, Integer> pair : backupIds)
+ {
+ totalBackup += pair.getB();
+ }
+ assertEquals("number of records must match ", total, totalBackup);
+
// "+ 2": there two other calls that send N_MSGS.
for (int i = 0; i < totalRounds + 3; i++)
{
@@ -210,16 +227,26 @@
}
}
- private Set<Long> getFileIds(JournalImpl journal)
+ private Set<Pair<Long, Integer>> getFileIds(JournalImpl journal)
{
- Set<Long> results = new HashSet<Long>();
+ Set<Pair<Long, Integer>> results = new HashSet<Pair<Long, Integer>>();
for (JournalFile jf : journal.getDataFiles())
{
- results.add(Long.valueOf(jf.getFileID()));
+ results.add(getPair(jf));
}
+ results.add(getPair(journal.getCurrentFile()));
return results;
}
+ /**
+ * @param jf
+ * @return
+ */
+ private Pair<Long, Integer> getPair(JournalFile jf)
+ {
+ return new Pair<Long, Integer>(jf.getFileID(), jf.getPosCount());
+ }
+
static JournalImpl getMessageJournalFromServer(TestableServer server)
{
JournalStorageManager sm = (JournalStorageManager)server.getServer().getStorageManager();
13 years
JBoss hornetq SVN: r12181 - trunk/hornetq-journal/src/main/java/org/hornetq/core/asyncio/impl.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 09:18:38 -0500 (Thu, 23 Feb 2012)
New Revision: 12181
Modified:
trunk/hornetq-journal/src/main/java/org/hornetq/core/asyncio/impl/AsynchronousFileImpl.java
Log:
Fix risk of problems should someone call PriorityQueue.remove(o) using CallbackHolder.
Modified: trunk/hornetq-journal/src/main/java/org/hornetq/core/asyncio/impl/AsynchronousFileImpl.java
===================================================================
--- trunk/hornetq-journal/src/main/java/org/hornetq/core/asyncio/impl/AsynchronousFileImpl.java 2012-02-23 14:18:22 UTC (rev 12180)
+++ trunk/hornetq-journal/src/main/java/org/hornetq/core/asyncio/impl/AsynchronousFileImpl.java 2012-02-23 14:18:38 UTC (rev 12181)
@@ -711,6 +711,14 @@
// Inner classes ---------------------------------------------------------------------
+ /**
+ * Explicitly adding a compare to clause that returns 0 for at least the same object.
+ * <p>
+ * If {@link Comparable#compareTo(Object)} does not return 0 -for at least the same object- some
+ * Collection classes methods will fail (example {@link PriorityQueue#remove(Object)}. If it
+ * returns 0, then {@link #equals(Object)} must return {@code true} for the exact same cases,
+ * otherwise we will get compatibility problems between Java5 and Java6.
+ */
private static class CallbackHolder implements Comparable<CallbackHolder>
{
final long sequence;
@@ -731,6 +739,8 @@
public int compareTo(final CallbackHolder o)
{
// It shouldn't be equals in any case
+ if (this == o)
+ return 0;
if (sequence <= o.sequence)
{
return -1;
@@ -740,9 +750,27 @@
return 1;
}
}
+
+ /**
+ * See {@link CallbackHolder}.
+ */
+ @Override
+ public int hashCode()
+ {
+ return super.hashCode();
+ }
+
+ /**
+ * See {@link CallbackHolder}.
+ */
+ @Override
+ public boolean equals(Object obj)
+ {
+ return super.equals(obj);
+ }
}
- private static class ErrorCallback extends CallbackHolder
+ private static final class ErrorCallback extends CallbackHolder
{
final int errorCode;
13 years
JBoss hornetq SVN: r12180 - trunk/hornetq-journal/src/main/java/org/hornetq/core/journal/impl.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 09:18:22 -0500 (Thu, 23 Feb 2012)
New Revision: 12180
Modified:
trunk/hornetq-journal/src/main/java/org/hornetq/core/journal/impl/JournalImpl.java
Log:
Comparators should implement Serializable if possible. Because:
If a comparator is used to construct an ordered collection (ex: TreeMap),
the Collection will only be serializable if the Comparator is as well.
Modified: trunk/hornetq-journal/src/main/java/org/hornetq/core/journal/impl/JournalImpl.java
===================================================================
--- trunk/hornetq-journal/src/main/java/org/hornetq/core/journal/impl/JournalImpl.java 2012-02-23 09:41:02 UTC (rev 12179)
+++ trunk/hornetq-journal/src/main/java/org/hornetq/core/journal/impl/JournalImpl.java 2012-02-23 14:18:22 UTC (rev 12180)
@@ -13,6 +13,7 @@
package org.hornetq.core.journal.impl;
+import java.io.Serializable;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.Collections;
@@ -2953,8 +2954,10 @@
}
- private static class JournalFileComparator implements Comparator<JournalFile>
+ private static class JournalFileComparator implements Comparator<JournalFile>, Serializable
{
+ private static final long serialVersionUID = -6264728973604070321L;
+
public int compare(final JournalFile f1, final JournalFile f2)
{
long id1 = f1.getFileID();
13 years
JBoss hornetq SVN: r12179 - trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/impl/invm.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 04:41:02 -0500 (Thu, 23 Feb 2012)
New Revision: 12179
Modified:
trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/impl/invm/InVMAcceptor.java
trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/impl/invm/InVMRegistry.java
Log:
Remove unused fields, make classes final.
Modified: trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/impl/invm/InVMAcceptor.java
===================================================================
--- trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/impl/invm/InVMAcceptor.java 2012-02-23 09:40:37 UTC (rev 12178)
+++ trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/impl/invm/InVMAcceptor.java 2012-02-23 09:41:02 UTC (rev 12179)
@@ -20,7 +20,6 @@
import org.hornetq.api.core.HornetQException;
import org.hornetq.api.core.SimpleString;
import org.hornetq.api.core.management.NotificationType;
-import org.hornetq.core.logging.Logger;
import org.hornetq.core.security.HornetQPrincipal;
import org.hornetq.core.server.cluster.ClusterConnection;
import org.hornetq.core.server.management.Notification;
@@ -37,18 +36,16 @@
/**
* A InVMAcceptor
- *
+ *
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
*
*/
-public class InVMAcceptor implements Acceptor
+public final class InVMAcceptor implements Acceptor
{
- private static final Logger log = Logger.getLogger(InVMAcceptor.class);
-
private final int id;
private final BufferHandler handler;
-
+
private final ConnectionLifeCycleListener listener;
private final ConcurrentMap<String, Connection> connections = new ConcurrentHashMap<String, Connection>();
@@ -56,36 +53,36 @@
private volatile boolean started;
private final ExecutorFactory executorFactory;
-
+
private final ClusterConnection clusterConnection;
private boolean paused;
private NotificationService notificationService;
-
+
private final Map<String, Object> configuration;
private HornetQPrincipal defaultHornetQPrincipal;
public InVMAcceptor(final ClusterConnection clusterConnection,
final Map<String, Object> configuration,
- final BufferHandler handler,
+ final BufferHandler handler,
final ConnectionLifeCycleListener listener,
final Executor threadPool)
{
this.clusterConnection = clusterConnection;
-
+
this.configuration = configuration;
-
+
this.handler = handler;
-
+
this.listener = listener;
id = ConfigurationHelper.getIntProperty(TransportConstants.SERVER_ID_PROP_NAME, 0, configuration);
executorFactory = new OrderedExecutorFactory(threadPool);
}
-
+
public Map<String, Object> getConfiguration()
{
return configuration;
@@ -95,7 +92,7 @@
{
return clusterConnection;
}
-
+
public synchronized void start() throws Exception
{
if (started)
@@ -248,7 +245,7 @@
private class Listener implements ConnectionLifeCycleListener
{
//private static Listener instance = new Listener();
-
+
private final InVMConnector connector;
Listener(final InVMConnector connector)
@@ -269,10 +266,10 @@
public void connectionDestroyed(final Object connectionID)
{
InVMConnection connection = (InVMConnection)connections.remove(connectionID);
-
+
if (connection != null)
{
-
+
listener.connectionDestroyed(connectionID);
// Execute on different thread after all the packets are sent, to avoid deadlocks
Modified: trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/impl/invm/InVMRegistry.java
===================================================================
--- trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/impl/invm/InVMRegistry.java 2012-02-23 09:40:37 UTC (rev 12178)
+++ trunk/hornetq-core/src/main/java/org/hornetq/core/remoting/impl/invm/InVMRegistry.java 2012-02-23 09:41:02 UTC (rev 12179)
@@ -15,18 +15,14 @@
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
-import org.hornetq.core.logging.Logger;
-
/**
* A InVMRegistry
- *
+ *
* @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
*
*/
-public class InVMRegistry
+public final class InVMRegistry
{
- private static final Logger log = Logger.getLogger(InVMRegistry.class);
-
public static final InVMRegistry instance = new InVMRegistry();
private final ConcurrentMap<Integer, InVMAcceptor> acceptors = new ConcurrentHashMap<Integer, InVMAcceptor>();
13 years
JBoss hornetq SVN: r12178 - in trunk: tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover and 1 other directory.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 04:40:37 -0500 (Thu, 23 Feb 2012)
New Revision: 12178
Modified:
trunk/hornetq-core/src/test/java/org/hornetq/tests/util/UnitTestCase.java
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncJournalTest.java
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncLargeMessageTest.java
trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/FailoverTestBase.java
Log:
HORNETQ-720 Fix test by addressing synchronization in tested condition
Modified: trunk/hornetq-core/src/test/java/org/hornetq/tests/util/UnitTestCase.java
===================================================================
--- trunk/hornetq-core/src/test/java/org/hornetq/tests/util/UnitTestCase.java 2012-02-23 09:40:07 UTC (rev 12177)
+++ trunk/hornetq-core/src/test/java/org/hornetq/tests/util/UnitTestCase.java 2012-02-23 09:40:37 UTC (rev 12178)
@@ -57,6 +57,7 @@
import org.hornetq.api.core.TransportConfiguration;
import org.hornetq.api.core.client.ClientConsumer;
import org.hornetq.api.core.client.ClientMessage;
+import org.hornetq.api.core.client.ClientProducer;
import org.hornetq.api.core.client.ClientSession;
import org.hornetq.api.core.client.ClientSessionFactory;
import org.hornetq.api.core.client.HornetQClient;
@@ -136,6 +137,7 @@
private final Collection<ClientSessionFactory> sessionFactories = new ArrayList<ClientSessionFactory>();
private final Collection<ClientSession> clientSessions = new HashSet<ClientSession>();
private final Collection<ClientConsumer> clientConsumers = new HashSet<ClientConsumer>();
+ private final Collection<ClientProducer> clientProducers = new HashSet<ClientProducer>();
private final Collection<HornetQComponent> otherComponents = new HashSet<HornetQComponent>();
private boolean checkThread = true;
@@ -947,6 +949,7 @@
try
{
assertAllClientConsumersAreClosed();
+ assertAllClientProducersAreClosed();
assertAllClientSessionsAreClosed();
}
finally
@@ -1087,6 +1090,18 @@
}
}
+ private void assertAllClientProducersAreClosed()
+ {
+ synchronized (clientProducers)
+ {
+ for (ClientProducer p : clientProducers)
+ {
+ assertTrue(p + " should be closed", p.isClosed());
+ }
+ clientProducers.clear();
+ }
+ }
+
/**
*
*/
@@ -1140,10 +1155,7 @@
return failedThread;
}
- /**
- *
- */
- protected void cleanupPools()
+ private void cleanupPools()
{
OperationContextImpl.clearContext();
@@ -1589,6 +1601,18 @@
return consumer;
}
+ protected final ClientProducer addClientProducer(ClientProducer consumer)
+ {
+ if (consumer != null)
+ {
+ synchronized (clientProducers)
+ {
+ clientProducers.add(consumer);
+ }
+ }
+ return consumer;
+ }
+
protected final void addHornetQComponent(HornetQComponent component)
{
if (component != null)
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncJournalTest.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncJournalTest.java 2012-02-23 09:40:07 UTC (rev 12177)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncJournalTest.java 2012-02-23 09:40:37 UTC (rev 12178)
@@ -25,7 +25,7 @@
private static final int BACKUP_WAIT_TIME = 20;
private ServerLocatorInternal locator;
protected ClientSessionFactoryInternal sessionFactory;
- private ClientSession session;
+ protected ClientSession session;
private ClientProducer producer;
private BackupSyncDelay syncDelay;
protected int n_msgs = 20;
@@ -171,9 +171,11 @@
protected void createProducerSendSomeMessages() throws HornetQException, Exception
{
- session = sessionFactory.createSession(true, true);
+ session = addClientSession(sessionFactory.createSession(true, true));
session.createQueue(FailoverTestBase.ADDRESS, FailoverTestBase.ADDRESS, null, true);
- producer = session.createProducer(FailoverTestBase.ADDRESS);
+ if (producer != null)
+ producer.close();
+ producer = addClientProducer(session.createProducer(FailoverTestBase.ADDRESS));
sendMessages(session, producer, n_msgs);
session.commit();
}
@@ -181,7 +183,7 @@
protected void receiveMsgsInRange(int start, int end) throws HornetQException
{
session.start();
- ClientConsumer consumer = session.createConsumer(FailoverTestBase.ADDRESS);
+ ClientConsumer consumer = addClientConsumer(session.createConsumer(FailoverTestBase.ADDRESS));
receiveMessages(consumer, start, end, true);
consumer.close();
session.commit();
@@ -225,16 +227,6 @@
}
@Override
- protected void tearDown() throws Exception
- {
- if (session != null)
- session.close();
- if (producer != null)
- producer.close();
- super.tearDown();
- }
-
- @Override
protected void createConfigs() throws Exception
{
createReplicatedConfigs();
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncLargeMessageTest.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncLargeMessageTest.java 2012-02-23 09:40:07 UTC (rev 12177)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/BackupSyncLargeMessageTest.java 2012-02-23 09:40:37 UTC (rev 12178)
@@ -52,7 +52,12 @@
createProducerSendSomeMessages();
startBackupFinishSyncing();
receiveMsgsInRange(0, n_msgs / 2);
- backupServer.stop();
+ int j = 0;
+ while (getAllMessageFileIds(dir).size() != n_msgs / 2 && j < 20)
+ {
+ Thread.sleep(50);
+ j++;
+ }
assertEquals("we really ought to delete these after delivery", n_msgs / 2, getAllMessageFileIds(dir).size());
}
Modified: trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/FailoverTestBase.java
===================================================================
--- trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/FailoverTestBase.java 2012-02-23 09:40:07 UTC (rev 12177)
+++ trunk/tests/integration-tests/src/test/java/org/hornetq/tests/integration/cluster/failover/FailoverTestBase.java 2012-02-23 09:40:37 UTC (rev 12178)
@@ -268,13 +268,13 @@
protected ClientSessionFactoryInternal createSessionFactoryAndWaitForTopology(ServerLocator locator, int topologyMembers)
throws Exception
{
- ClientSessionFactoryInternal sf;
CountDownLatch countDownLatch = new CountDownLatch(topologyMembers);
locator.addClusterTopologyListener(new LatchClusterTopologyListener(countDownLatch));
- sf = (ClientSessionFactoryInternal) locator.createSessionFactory();
+ ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal)locator.createSessionFactory();
addSessionFactory(sf);
+
assertTrue("topology members expected " + topologyMembers, countDownLatch.await(5, TimeUnit.SECONDS));
return sf;
}
13 years
JBoss hornetq SVN: r12177 - trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/topic.
by do-not-reply@jboss.org
Author: borges
Date: 2012-02-23 04:40:07 -0500 (Thu, 23 Feb 2012)
New Revision: 12177
Modified:
trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/topic/PushSubscription.java
Log:
Avoid NPE inside finalize
Modified: trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/topic/PushSubscription.java
===================================================================
--- trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/topic/PushSubscription.java 2012-02-23 09:39:51 UTC (rev 12176)
+++ trunk/hornetq-rest/hornetq-rest/src/main/java/org/hornetq/rest/topic/PushSubscription.java 2012-02-23 09:40:07 UTC (rev 12177)
@@ -46,7 +46,8 @@
{
try
{
- session.close();
+ if (session != null)
+ session.close();
}
catch (HornetQException e)
{
13 years