Commit Graph

518 Commits

Author SHA1 Message Date
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
Clebert Suconic 09490cdba3 ACTIVEMQ6-54 Fixing tests broken after Paging fix
https://issues.apache.org/jira/browse/ACTIVEMQ6-54

Changing the order of depaging introduced an extra check that needs to be checked now.
This will probably take care of the issue by checking if the page is complete before depage.
2014-12-10 22:06:35 -05:00
Clebert Suconic fecd376448 Fixing build after XA Test
The JMS Testsuite still need the TM for some tests, not having a TM would break compilation on the JMS Test
2014-12-10 10:39:08 -05:00
Martyn Taylor 2982f37512 ActiveMQ6-6 Remove last of JBoss Transactions SPI 2014-12-10 14:00:34 +00:00
Martyn Taylor 8f91af1b5c ActiveMQ6-6 Factor out WildFly XA Recovery
Pulls out WildFly XA Recovery specifics into a different project.  Some
XA recovery code is still present and is used as integration points for
integrating TM XA recovery processes.
2014-12-09 16:08:34 +00:00
Clebert Suconic d7c7d86d55 Merging #36 on SPI and TX integration 2014-12-08 12:25:18 -05:00
Andy Taylor e34fd09ce3 ACTIVEMQ6-6 - remove SPI usage
https://issues.apache.org/jira/browse/ACTIVEMQ6-6

Removed the jboss security implementations and also implemented the location of Transaction Managers using Service Loader and removed the jboss implementation.
2014-12-08 11:06:24 +00:00
Clebert Suconic 933d90a4f3 ACTIVEMQ6-54 Depaging is not kicking in on some scenarios, and Browsing is not looking towards paging
https://issues.apache.org/jira/browse/ACTIVEMQ6-54

This is fixing a few issues around paging:
- Browsing it not looking towards Paging. I'm using the queue.totalIterator which is a read-only iterator that goes towards the pages messages.
- Depage is not kicking correctly in some scenarios. I have improved the logic on scheduling depage for that.
2014-12-05 14:48:14 -05:00
jbertram 7cfd76d321 Handful of test fixes 2014-12-05 09:27:53 -06:00
jbertram e6a3d3a0c5 ACTIVEMQ6-14 Replace JNDI server with client impl 2014-12-05 09:27:52 -06:00
Clebert Suconic a3afd62575 ACTIVEMQ6-20 removing twitter integration
https://issues.apache.org/jira/browse/ACTIVEMQ6-20

this has been identified as a dead feature.
It was only useful for presentations...
it had its time and we have better examples we can use...
It's time for this feature to go!
2014-12-02 12:33:16 -05:00
Howard Gao 293b242ffc ACTIVEMQ6-43 Replace License Headers on codebase
upgrade mycila plugin to 2.6
2014-12-01 10:20:24 +08:00
Martyn Taylor 60fbb1055b ACTIVEMQ6-6 Add Service Extension Component
Adds a new service extensions components used to house any extension
points for integration and extension.  In addition this patch adds
initial extension points for XAResource wrapping.
2014-11-25 15:51:03 +00:00
Clebert Suconic 5361e58354 ACTIVEMQ6-44 - Internal error during UDP parsing
https://issues.apache.org/jira/browse/ACTIVEMQ6-44

The DiscoveryGroup should be resilient to failures on the communication.
We shouldn't kill the Loop if an exception happened during the read of the UDP messages.
2014-11-21 11:27:02 -05:00
Clebert Suconic 89a84c6ae2 More name changes to activemq
more hornetq changes
2014-11-19 16:01:54 -05:00
Martyn Taylor e91ef714c7 Replace urn:hornetq with urn:activemq 2014-11-19 15:15:36 +00:00
Martyn Taylor 4a6b980fed Remove references to HornetQ in doc and Comments 2014-11-19 15:15:35 +00:00
Clebert Suconic cd31652ddc ACTIVEMQ6-4 Fixing tests after package and classes renames
https://issues.apache.org/jira/browse/ACTIVEMQ6-4

this will include a few fixes for the tests including
hornetq-version renaming to activemq-version
2014-11-18 23:04:34 -05:00
jbertram 034adfbf9b ACTIVEMQ6-4 Rename HornetQ* classes to ActiveMQ* 2014-11-18 16:53:09 -06:00
jbertram e7a3e7d25b ACTIVEMQ6-9 Clean up docs 2014-11-18 16:53:08 -06:00
Martyn Taylor 176e817805 ACTIVEMQ6-5 Replace 3rd party CatX deps with CatA 2014-11-18 17:33:52 +00:00
Andy Taylor aeaba39219 ACTIVEMQ6-4 - rename all config files
https://issues.apache.org/jira/browse/ACTIVEMQ6-4

rename all the config files to activemq and fix schema names in them
2014-11-18 15:54:53 +00:00
Andy Taylor 574c8fe997 ACTIVEMQ6-4 - refactor schemas
https://issues.apache.org/jira/browse/ACTIVEMQ6-4

Refactor all the schemas to use an activemq namespace and rename schema files
2014-11-18 11:27:10 +00:00
Andy Taylor d0d686b527 ACTIVEMQ6-4 - refactor default configuration
https://issues.apache.org/jira/browse/ACTIVEMQ6-4

Remove the auto generation of the default config and rename to ActiveMQ
2014-11-18 11:27:10 +00:00
Clebert Suconic 1bf2e41f23 ACTIVEMQ6-3 Renaming Exception classes and fixing native compilation
https://issues.apache.org/jira/browse/ACTIVEMQ6-3

The Native Layer has some dependencies on the Exception classes so
I had to rename them now in order to fix the native dependencies
2014-11-17 21:31:19 -05:00
jbertram 36d86ffb00 ACTIVEMQ6-36 Disallow SSLv3 for POODLE 2014-11-17 13:37:51 -06:00
Clebert Suconic 9a587c5633 ACTIVEMQ6-3 renaming package names from activemq6 to activemq
https://issues.apache.org/jira/browse/ACTIVEMQ6-3

We are renaming packages from activemq6 to activemq as that's more generic and version independent
The previous commit renamed the directories. On this commit now I'm changing the code.
If we changed the code and the directories on the same commit git would remove and add a lot of files
without recognizing the renames.
2014-11-17 09:33:53 -05:00
Clebert Suconic 3c44e26854 ACTIVEMQ6-3 renaming directories from activemq6 to activemq
https://issues.apache.org/jira/browse/ACTIVEMQ6-3

We are renaming packages from activemq6 to activemq as that's more generic and version independent
On this first commit I'm just renaming the directories otherwise the history would be lost. The next commit will rename the text on the directories.
If I squash these two commits git will make us delete / add again.
2014-11-17 09:33:36 -05:00
Martyn Taylor 1f869f9f4c Use new package names in config and classes 2014-11-11 18:28:18 +00:00
Andy Taylor 23e8edd979 ACTIVEMQ6-4 - Rename packages to ActiveMQ
https://issues.apache.org/jira/browse/ACTIVEMQ6-4

Repackage the modules, java source and maven poms to apache.activemq6
2014-11-11 18:28:18 +00:00
Martyn Taylor 177e6820b5 ACTIVEMQ6-2 Update to HQ master 2014-11-11 10:48:14 +00:00
Andy Taylor 8ecd255f98 ACTIVEMQ6-1 - Initial HornetQ Donation Commit
https://issues.apache.org/jira/browse/ACTIVEMQ6-1

This is the initial donation of the HornetQ codebase as per document http://incubator.apache.org/ip-clearance/hornetq.html
2014-11-10 10:31:25 -06:00