Commit Graph

81 Commits

Author SHA1 Message Date
Clebert Suconic f896a394e9 Fixing when the storage is stopped for the storage manager
In some cases the ID Generator will be called after the JournalStorage was stopped.
AS a result you could have cases where the ID generator is called and the journal storage is stopped.

Also I added some check to IDs and added some code to cleanup old IDS on the BatchIDManager
2015-02-26 22:52:27 -05:00
Andy Taylor e6a501a43a fixed test to be more robust 2015-02-26 13:41:56 +00:00
Andy Taylor 97e63645d3 topic control test fix 2015-02-26 11:06:36 +00:00
Clebert Suconic 210222e24f moving export-journal / import-journal to the proper tools place
This is simply moving the export/import journal to its proper place.
The previous commit should have added docs about this
2015-02-26 00:26:52 -05:00
Martyn Taylor e194b7803e Replace all references of port 5445 with 61616 2015-02-25 13:27:04 +00:00
Andy Taylor fab1734af7 documentation updates 2015-02-23 09:50:08 +00:00
jbertram 0e537d0881 Port a test from the HornetQ code-base.
A bug was recently discovered on a legacy HornetQ branch. ActiveMQ 6
doesn't suffer from the same problem, but the test is still valuable.
The HornetQ issue is described on
https://bugzilla.redhat.com/show_bug.cgi?id=1193085.
2015-02-20 16:35:25 -06:00
Andy Taylor 64d0547268 ACTIVEMQ6-80 - update acceptor config to use URI's
https://issues.apache.org/jira/browse/ACTIVEMQ6-80

The configuration of acceptors and connectors now takes a uri rather than params
2015-02-19 12:10:49 +00:00
jbertram a17955e665 Remove reference to JBoss' Maven repo.
Remove the reference to the JBoss Maven repo, and make all the necessary
adjustments on the child-projects. It turns out we don't even need the
security dependencies in the tests.
2015-02-12 14:42:51 -06:00
jbertram 2cbef28cc7 ACTIVEMQ-77 auto queue creation on AMQP send/rec
Implements a new feature for the broker whereby it may automatically
create and delete queues which are not explicitly defined through
the management API or file-based configuration when a client sends a
message to or receives from a queue via the AMQP protocol. Note,
the destination has to be named like "jms.queue.*" to be auto-
created. The queue may subsequently be deleted when it no longer has
any messages and consumers. Auto-creation and auto-deletion can both
be turned on/off via address-setting.
2015-02-12 14:02:45 -06:00
Clebert Suconic 87966029c7 This closes #93 on URI work and connection factory serialization 2015-02-12 15:01:12 -05:00
Andy Taylor 3b76ccc92b ACTIVEMQ6-7 - Improve Serialization on Connection Factory
https://issues.apache.org/jira/browse/ACTIVEMQ6-7

Connection Factory is now externalizable and is now serialized as a string that represents a URI. There are schemas for every possible type for connection factory and server locator.

The client JNDI representation of factories has also been changed to be consistent with this.
2015-02-12 09:14:24 +00:00
Clebert Suconic 60179cfc98 Fixing test failure
This test started to fail after performance improvements from  ACTIVEMQ6-78
After some investigation it turned out that this test was racing with the client
crashing even before the queue was created or sending a non persistent message
asynchronously while the client crashed before the server received the message.

I've also decreased some of the times on pings so the test could run a bit faster
2015-02-11 12:47:14 -05:00
Clebert Suconic f7c4d56cc7 ACTIVEMQ6-78 Improving performance over Netty NIO blocked calls
https://issues.apache.org/jira/browse/ACTIVEMQ6-78 performance work

There are two aspects of this work. First avoid asynchronous packets and avoid
context switch over the executors. Packet had a method to make certain packets such
as commit to use a different executor. Since it's NIO everything is done at the Netty thread now.

The second aspect was to make sure we use the proper buffering
2015-02-11 12:47:14 -05:00
Clebert Suconic 41b28f4b23 ACTIVEMQ6-78 Adding tests to evaluate this task
https://issues.apache.org/jira/browse/ACTIVEMQ6-78

This commit is just adding tests I used to debug the blocked calls issue
There are some profiling parameters you can use that I added as a comment to the pom

The reason this is a separate commit is that it would be easier to validate the results of optimizations while
checking after and before any changes
2015-02-11 12:47:01 -05:00
Clebert Suconic b24d72900b ACTIVEMQ6-7 - Improve Serialization on Connection Factory
https://issues.apache.org/jira/browse/ACTIVEMQ6-7
2015-02-11 11:36:10 +00:00
jbertram 1310442244 ACTIVEMQ6-76 auto queue creation on STOMP send/sub
Implements a new feature for the broker whereby it may automatically
create and delete queues which are not explicitly defined through
the management API or file-based configuration when a client sends a
message to or consumes from a queue via the STOMP protocol. Note,
the destination has to be named like "jms.queue.*" to be auto-
created. The queue may subsequently be deleted when it no longer has
any messages and consumers. Auto-creation and auto-deletion can both
be turned on/off via address-setting.
2015-02-09 09:03:58 -06:00
jbertram 593ea2dde2 test needs more time 2015-02-04 11:31:07 -06:00
jbertram 20452083d7 give receiver a bit more time on bridge test 2015-02-02 15:00:08 -06:00
Clebert Suconic 5e72f7e283 This closes #88 - fixing race on test 2015-02-02 14:19:43 -05:00
jbertram d523f630a0 fix potential race condition in test 2015-02-02 12:26:22 -06:00
Andy Taylor 076faa759f ACTIVEMQ6-74 - removing unused old jaas implementation and associated tests etc
https://issues.apache.org/jira/browse/ACTIVEMQ6-74

This is ready for the import of the ActiveMQ 5 JAAS implementation for 6.1
2015-02-02 15:45:58 +00:00
jbertram fe11fb4c02 avoid potential NPE 2015-01-30 13:35:28 -06:00
jbertram 9e214e9c43 remove unnecessary cache operation 2015-01-30 13:35:27 -06:00
jbertram d895988faf fix race in test 2015-01-27 15:40:15 -06:00
jbertram 8f4142f87e Fix test, remove redundant operation 2015-01-26 16:25:30 -06:00
jbertram dfb7d3c382 Fix test, adjust logging 2015-01-26 14:03:54 -06:00
jbertram 11d4b0a80d removing redundant tests 2015-01-23 08:30:01 -06:00
Martyn Taylor 8b631c1426 Only check TM exists for JMSBridge with ONCE_ONLY
A transaction manager is only required on the JMSBridge when the QoS
level is set to ONCE_AND_ONCE_ONLY.  Previous to the this patch it was
also checking for a TM on the AT_MOST_ONCE QoS level.  This patch also
ensures that the TM is set to null after each test run.
2015-01-23 10:37:39 +00:00
Clebert Suconic 2c7db814f0 fixing checkstyle that I messed up on my last commit 2015-01-22 12:07:53 -05:00
Clebert Suconic 4ebacc9d87 Fixing a few intermittent failures
These tests were not as broken as on 2.3.x from the old hornetq branch where this fix originated.
However I will play safe here as I believe the race could be after the exception is raised and before the counter was added
(on ActiveMQMessageHandlerTest)
2015-01-21 18:40:19 -05:00
Clebert Suconic 0eb1e332d3 ACTIVEMQ6-73 Adding missing methods
https://issues.apache.org/jira/browse/ACTIVEMQ6-73
https://bugzilla.redhat.com/show_bug.cgi?id=1174152

this is adding missing methods on the Management interface as originally raised at
https://bugzilla.redhat.com/show_bug.cgi?id=1174152 by RedHat
2015-01-21 18:32:21 -05:00
jbertram 754d481d53 ACTIVEMQ6-52 Graceful shutdown
Implements a feature whereby the broker will not shutdown while there are
clients connected. A timeout can be specified so that even if there are
clients connected the broker will still shutdown after a certain time.
2015-01-21 13:18:55 -06:00
Martyn Taylor 26ca3084e2 Rework dependency management in top level poms
This patch moves test dependencies into out of the main pom and into the
tests module pom.  This will make managing 3rd party category X
dependencies much easier going forward.  In addition each dependency
license has been outlined in the pom and README entry added to outline
future policy when adding 3rd party depdendencies.
2015-01-19 15:40:30 +00:00
Clebert Suconic 9748340a0e This closes #66 on JMS / RA fixes around tests and TM 2015-01-16 11:54:33 -05:00
Martyn Taylor 2e9aad9ef4 Update JMS and RA Tests to ensure fresh TX usage
Some of the OutgoingConnection and RA tests were failing due to a
previous transaction being present when using the Arjuna TM.  This patch
adds methods to allow tests which TM to use and ensures that Dummy TM is
cleaned up each after each test.
2015-01-16 16:28:27 +00:00
Justin Bertram fe1ba7ca21 ACTIVEMQ6-69 remove deprecated items 2015-01-15 11:55:24 -06:00
Andy Taylor 4b63891aaa ACTIVEMQ6-67 - cleaned up configuration
https://issues.apache.org/jira/browse/ACTIVEMQ6-67

fixed distribution so that file based security works and hot deployers as broken and no longer needed with new bootstrap.

Also combined the jms and core configuration files.
2015-01-15 15:48:22 +00:00
jbertram e293d80f08 ACTIVEMQ6-13 auto-create/auto-delete jms queues
Implements a new feature for the broker whereby it may automatically
create and delete JMS queues which are not explicitly defined through
the management API or file-based configuration. A JMS queue is created
in response to a sent message or connected consumer. The queue may
subsequently be deleted when it no longer has any messages and
consumers. Auto-creation and auto-deletion can both be turned on/off
via address-setting.
2015-01-13 15:29:17 -06:00
Clebert Suconic ec9ff4f55e ACTIVEMQ6-68 Improving Scale down routine and fixing test
https://issues.apache.org/jira/browse/ACTIVEMQ6-68

The logic on transferring method is a bit complex, where
I found a better way to calculate the targetIDs.

This will also fix a few ScaleDownTests

I also added some extra tests using ScaleDownDirect
2015-01-12 21:46:55 -05:00
Martyn Taylor e58f2362cc Fix failing RA OutgoingConnectionTests
Some of the outgoing connection tests require a dummy transaction
manager to setup a fake transaction.  The default transaction manager is
set to the JBoss TX manager and so the tests were failing.  This patch
split the OutgoingConnectionTest into ones that require a real TM
manager vs Dummy TM Manager.
.
2015-01-06 17:06:56 +00:00
Clebert Suconic e0b0b6bf89 ACTIVEMQ6-64 Messages duplicated during ScaleDown or queue.totalIterator
https://issues.apache.org/jira/browse/ACTIVEMQ6-64

The redelivery list was not isolated on the PageIterator. This is moving the
redelivery list to the Iterator so we would have proper isolation of the functionality.

The previous version was assuming a single instance of PageIterator, QueueImpl and PageSubscription.
When we started using more than one instance of the Iterator we created this bug.
2015-01-05 20:34:05 -05:00
Howard Gao 1d022fe474 ACTIVEMQ6-43(reopened) : Replace License Headers on codebase
- added missing license headers found by maven rat plugin.
  most of them added automatically via apache-rat
  a few manually added

- added apache-rat maven plugin to the build cycle
2015-01-05 13:14:25 -05:00
John D. Ament 96dc7e40ea ACTIVEMQ6-40 Update to the geronimo jms 2 spec JAR. 2015-01-02 12:51:37 -05:00
jbertram 16d74b2bec Merge #50 ttl fix from Howard 2014-12-31 11:05:07 -06:00
Howard Gao 1d159e6da0 Bug 1174886 - HornetQ TTL / check-period not being respected
on the replication channel

The connection-ttl and client-failure-check-period are not passed
to the server locator used to create replication connection. So the
fix sets the two parameters in SharedNothingBackupActivation.
2014-12-23 20:38:35 +08:00
Andy Taylor 2514611285 ACTIVEMQ6-14 - more JNDI removal
https://issues.apache.org/jira/browse/ACTIVEMQ6-14

cleaned up more remaining server JNDI code and fixed some abstraction and naming around JNDI and bindings
2014-12-19 08:07:06 +00:00
Martyn Taylor f28c9be8af Only Set TM on Bridge in QoS modes that require it
The bridge currently tries to assign a TM even when the quality of
service level is set to Duplicates OK.  This QoS does not use or require
a TM.  This patch stops the bridge from attempting to assign a TM for
this QoS and also checks that a TM is set of the other QoS.  If TM is
not set for a QoS that requires one, a error is logged and RunTime
exception thrown.
2014-12-16 16:33:58 +00:00
Martyn Taylor 739c0f368b Allow tests to set TM in TMLocatorImpl
Some tests require a proper TM to be returned by the TMLocator
implementation whilst others require a DummyTM to be returned.  This
patch makes allows TM returned by the locator class to be changed by the
test.
2014-12-16 16:33:58 +00:00
Martyn Taylor 891e3ef1cb Add TM Locator impl to JMSBridge tests 2014-12-12 16:35:13 +00:00