Commit Graph

348 Commits

Author SHA1 Message Date
Martyn Taylor 319439ab27 [maven-release-plugin] prepare for next development iteration 2016-06-09 12:25:19 +01:00
Martyn Taylor 2c5ab446be [maven-release-plugin] prepare release 1.3.0 2016-06-09 12:24:48 +01:00
Martyn Taylor 4a07091718 [maven-release-plugin] prepare for next development iteration 2016-06-09 11:25:03 +01:00
Martyn Taylor 93cf7b4b9b [maven-release-plugin] prepare release 1.3.0 2016-06-09 11:23:03 +01:00
Clebert Suconic 17ffcd48c2 fixing log.trace 2016-06-08 21:41:57 -04:00
Martyn Taylor 4574b3ee13 [maven-release-plugin] prepare for next development iteration 2016-06-08 11:03:35 +01:00
Martyn Taylor 2b3d22c5cc [maven-release-plugin] prepare release 1.3.0 2016-06-08 11:02:14 +01:00
Clebert Suconic f0f431acea Adding more time on checkWeakReferences
This will fix a few intermittent failures
2016-06-07 17:03:41 -04:00
Ingo Weiss 685442861e [ARTEMIS-558] java.util.MissingFormatArgumentException: Format specifier '%s' during backup activation 2016-06-07 17:01:51 -04:00
Clebert Suconic 2e6586548b ARTEMIS-552 Replication target being finished can lead to instability on live
https://issues.apache.org/jira/browse/ARTEMIS-552
2016-06-06 16:28:51 -04:00
jbertram e53649a6b9 ARTEMIS-322 auto-create/delete JMS topic
Implements a new feature for the broker whereby it may automatically create and
delete JMS topics which are not explicitly defined through the management API
or file-based configuration. A JMS topic is created in response to a sent
message or connected subscriber. The topic may subsequently be deleted when it
no longer has any subscribers. Auto-creation and auto-deletion can both be
turned on/off via address-setting.
2016-06-06 16:00:57 -04:00
Clebert Suconic 8fdd1f6496 Revert "ARTEMIS-539"
This reverts commit a3efafd975.
This reverts commit cf3396a3a6.
This reverts commit 17ea05bce6.
This reverts commit af4aa9fcb6.
2016-06-06 14:12:25 -04:00
Clebert Suconic 17ea05bce6 ARTEMIS-539 fixing default address on client as well 2016-06-03 12:04:20 -04:00
Martyn Taylor 2932a2a711 Ensure ResultSet is closed on table operation 2016-06-03 12:03:00 -04:00
Martyn Taylor 634fc1b482 Added MySQL Support 2016-06-01 19:04:25 +01:00
Martyn Taylor 466d43c63d Refactored JDBC Sequential File Factory 2016-06-01 16:09:42 +01:00
Clebert Suconic af4aa9fcb6 ARTEMIS-539 ServerSession defaultAddress can get out of sync after full queues 2016-05-25 14:10:17 -05:00
Clebert Suconic 10dfe97ec0 Adding JORAM Tests for AMQP with a few fixes around the protocol manager for JMS 2016-05-25 09:41:40 -04:00
Dejan Bosanac 5db163753d https://issues.apache.org/jira/browse/ARTEMIS-537 - allow artemis to work properly with karaf jaas implementation 2016-05-25 09:33:56 -04:00
jbertram d9b721b35b ARTEMIS-405 correct some missing docs 2016-05-23 18:26:21 -04:00
jbertram 76f6c9c3bd Make a few tests more robust 2016-05-20 11:24:55 -05:00
Clebert Suconic 3e2adf123b ARTEMIS-524 Paging could lose data eventually after crashes
https://issues.apache.org/jira/browse/ARTEMIS-524

I am keeping all the debug ad tracing I added during the debug of this issue,
for that reason this commit may look longer than expected

The fix will be highlited by the tests added on org.apache.activemq.artemis.tests.integration.client.PagingTest
2016-05-17 20:28:40 -04:00
jbertram 04c9564d77 ARTEMIS-517 API to check sync with backup 2016-05-16 10:01:18 -05:00
Martyn Taylor 54752a9ced ARTEMIS-46 Adds AMQP Drain Support 2016-05-11 12:04:58 +01:00
Erich Duda a622fa7443 ARTEMIS-518 - Improvement of default thread factory 2016-05-09 14:33:41 -04:00
jbertram 19147113cb Fix RaceOnSyncLargeMessageOverReplication2Test 2016-05-05 20:21:18 -05:00
jbertram 5c7aaa760a Auto-delete JMS, not just core 2016-05-05 11:43:39 -05:00
jbertram 500a734d04 Fix AutoDeleteJmsQueueTest 2016-05-04 15:26:59 -05:00
jbertram cbfd819541 ARTEMIS-512 fix variable name conflict 2016-05-04 13:04:10 -05:00
Martyn Taylor 1c3d63516f ARTEMIS-514 Add support for LargeMEssages backed by Database 2016-05-04 13:36:28 -04:00
jbertram 4bab1f0644 ARTEMIS-512 NPEs in LDAP authz 2016-05-03 14:22:32 +01:00
Clebert Suconic f0df9d8c78 Individualizing logger.traces on org.apache.activemq.artemis.core.server (artemis-server project)
This makes it easier to debug through loggers
2016-04-28 14:35:11 -04:00
Howard Gao ada6600ee3 ARTEMIS-505 Fix OptimizedAckTest and testCloseConsumer
OptimizedAckTest: Using core api to replace old activemq
broker API to checking message count.
JmsQueueTransactionTest#testCloseConsumer: a bug in
delivery when prefetchSize is 0.
(InitalReconnectDelayTest)close connection after test.
2016-04-27 10:06:14 -04:00
Bernd Gutjahr 1591d25692 ARTEMIS-507 New thread pool for client threads
- Added a thread pool executor, that combines cached and fixed size thread pooling.
  It behaves like a cached thread pool in that it reuses exising threads and removes
  idle threads after a timeout, limits the maximum number of threads in the pool, but
  queue additional request instead of rejecting them.
- changed existing code to use the new thread pool instead of a fixed-size thread pool in
  all places that are configured with a client thread pool size.
2016-04-27 11:03:32 +01:00
Ingo Weiss 82019cb3be [ARTEMIS-502] AMQ224044, error acknowledging message: java.lang.NullPointerException, can happen sometimes during load 2016-04-25 14:33:17 +01:00
Howard Gao 3012447404 ARTEMIS-488 Fix OpenWire Test (Temp Queue removal and others)
Temp Queue not deleted when connection is closed.
Enable Stomp in openwire test because some test uses it.
Remove unused code in opwnwire
Wrong XA error code returned when xid is missing
(ActiveMQXAConnectionFactory.testRollbackXaErrorCode)
regression in ActiveMQSslConnectionFactoryTest (SSL related)
2016-04-20 12:33:01 -04:00
Bernd Gutjahr 1b5396c033 Protected ActiveMQClient API against misuse.
1. Changed public fields in ActiveMQClient to private and added getters.

Exposing fields for thread pool sized allow to modify them in undesired ways.
I made these fields private and added corresponding getter methods.
In addition, I renamed the field 'globalThreadMaxPoolSize'
to 'globalThreadPoolSize' to be more consistent with the
'globalScheduledThreadPoolSize' field name.
I also adapted some tests to always call clearThreadPools after
the thread pool size configuration has been changed.

2. Protect against injecting null as thread pools

ActiveMQClient.injectPools allowed null as injected thread pools.
The effect was that internal threads pools were created,
but not shutdown correctly.
2016-04-20 15:29:25 +01:00
Clebert Suconic b89faae458 ARTEMIS-490 Fixing new largeMessage copy 2016-04-20 10:08:29 -04:00
Clebert Suconic bd3d0492fd ARTEMIS-482 testsuite fixes:
The new Executor operationr needs to be synchronized as a few tests are failing because of this
another fix on the test base class
2016-04-20 14:05:17 +01:00
jbertram 9d7a49b388 ARTEMIS-417 more broker-level JMX attrs 2016-04-19 23:00:32 -04:00
Clebert Suconic 03b2650990 ARTEMIS-482 fixing testsuite. Stopping Executor at the proper place
You have to stop the InVMExecutor after servers were stopped otherwise tests may hang
2016-04-19 17:35:29 -04:00
Clebert Suconic e81fa5c359 ARTEMIS-490 Fixing LargeMessage copy through replication
this will fix cases like DLQ and Diverts
2016-04-19 15:00:09 +01:00
Ingo Weiss e378e4f88f ARTEMIS-480 BridgeReconnectTest.testDeliveringCountOnBridgeConnectionFailure fails due to racing condition 2016-04-18 17:59:44 -04:00
jbertram 30907ffd8c ARTEMIS-400 allow SSL store reload 2016-04-18 17:51:46 -04:00
jbertram 5591bcabcc ARTEMIS-405 JMX attributes doc 2016-04-18 17:50:09 -04:00
Clebert Suconic 287ee86b3f ARTEMIS-465 - Fixing trace 2016-04-15 10:37:28 -04:00
Clebert Suconic b7118df7d0 ARTEMIS-482 Cleanup new ThreadPool on the testsuite to avoid leak report 2016-04-14 23:14:22 -04:00
Clebert Suconic ec73961f72 ARTEMIS-474 another fix on JChannelWrapper 2016-04-14 21:57:17 -04:00
Clebert Suconic 630db2d69c ARTEMIS-474 Clustering fails on certain topologies
Communication between nodes will fail under certain topologies
JGroups has something called JForkChannel that could be used on container systems.
And be injected into Artemis.
For some reason that channel cannot be reused for more than one channel per VM.
And it cannot ever be closed.

I am keeping the trace logs I used to debug this issue in case anything similar to this happens again.
2016-04-14 18:55:01 -04:00
Clebert Suconic d6c7e30594 ARTEMIS-484 Large Message Loss on Initial replication
https://issues.apache.org/jira/browse/ARTEMIS-484

The File copy after the initial synchronization on large messages was broken.
On this commit we fix how the buffer is cleaned up before each read since
a previously unfinished body read would make the buffer dirty.

I'm keeping also lots of Traces I have added to debug this issue, so they will
be useful if anything like this happens again.
2016-04-14 18:55:01 -04:00
Clebert Suconic 2e894554ca ARTEMIS-474 fixing page.close() deadlock with replica 2016-04-14 18:55:01 -04:00
Martyn Taylor fc8a1eff43 ARTEMIS-482 Assign dedicated ThreadPool for InVMTransport 2016-04-14 15:49:07 +01:00
John D. Ament 5b8ab20219 ARTEMIS-463 Refactored protocol loading code to not duplicate logic, and load from the default list. 2016-04-12 16:15:55 -04:00
Ville Skyttä 11acf2180f Avoid unnecessary empty array creation 2016-04-11 16:55:26 -04:00
Ville Skyttä 3dc3e8520d Remove redundant toString calls 2016-04-11 16:54:30 -04:00
Ville Skyttä b5ffda4701 Fix getter and setter validation test 2016-04-11 16:53:10 -04:00
Ville Skyttä 487b09fccc Replace some manual array copies with System.arraycopy 2016-04-11 16:52:10 -04:00
Ville Skyttä e6e1311f8d Add missing @Overrides 2016-04-11 16:51:01 -04:00
Ville Skyttä 782d3419b8 Remove dead code 2016-04-11 16:50:43 -04:00
Jeff Mesnil ed5533ecb6 [ARTEMIS-472] add cause to AMQ222137 warning
JIRA: https://issues.apache.org/jira/browse/ARTEMIS-472
2016-04-08 13:16:15 +01:00
Clebert Suconic 50eac7c824 ARTEMIS-468 Amendments to how redelivery count is handled on openwire 2016-04-07 13:56:31 -04:00
Howard Gao 8a998ad805 ARTEMIS-468 Fix openwire redelivery related regressions under integration-tests 2016-04-07 12:12:28 -04:00
Martyn Taylor e2c6d0b7f7 ARTEMIS-465 Create LM on write packet in ReplicationEndpoint
If a LM write packet is received from the live assume that the large
message exists and create a local reference.

Old behavour would reject the packet which could lead to loss of data on
failover see JIRA.
2016-04-04 23:15:54 -04:00
Dominik Pospisil 078d38bc37 [ARTEMIS-444] Extend AIOSequentialFileFactory to check underlying FS 2016-04-04 12:23:36 -04:00
Clebert Suconic 3aedf27386 ARTEMIS-463 More simplifications on the openwire head
https://issues.apache.org/jira/browse/ARTEMIS-463

This will have some extra refactoring on the protocol head, transferring responsibility to the broker classes in a lot of cases
and removing some duplicated code

This was a team effort from Clebert Suconic and Howard Gao
2016-04-04 11:08:43 -05:00
Clebert Suconic 6ddf486f8f ARTEMIS-463 Refactoring on Openwire
https://issues.apache.org/jira/browse/ARTEMIS-463

This was a team effort from Clebert Suconic and Howard Gao
2016-04-04 11:08:43 -05:00
Ville Skyttä 3a2d5de49e Remove unnecessary code 2016-04-04 11:04:49 -05:00
Ville Skyttä 16ee65309c Add missing @Override annotations 2016-04-04 11:03:48 -05:00
Martyn Taylor afdb78dd5c ARTEMIS-456 Synchronize sendReplicatePacket method
There is a potential deadlock scenario if 2 threads try
sendReplicatePacket.  Thread 1 registers Netty callback which will
invoke readyForWrites() method, which locks the callback list and waits
on the replicationLock.  Thread 2 enters sendReplicatePacket and gets
the replicationLock and is blocked on the callback list lock.  This fix
ensures the sendReplicatePacket blocks on the ReplicationManager meaning
no interleaving of the Netty callback thread and the wait on lock can
happen.
2016-03-23 10:52:56 -05:00
jbertram e2b799d003 ARTEMIS-451 JAAS user/role props reload 2016-03-22 10:48:38 -05:00
Clebert Suconic ee6a03295f ARTEMIS-437 Improving lock over certain protocols
Avoiding deadlocks between acks and other factors
2016-03-16 08:23:58 -04:00
jbertram 196f0ca8d6 ARTEMIS-432 client gets msg after session stop 2016-03-11 15:33:28 -05:00
Ville Skyttä 31404f8a38 Remove redundant null checks 2016-03-07 15:49:50 -05:00
Andy Taylor a3962d6d26 ARTEMIS-426 - java.lang.IllegalStateException: AMQ119116: Netty Acceptor unavailable
also related to https://issues.apache.org/jira/browse/ARTEMIS-416

https://issues.apache.org/jira/browse/ARTEMIS-426
2016-03-01 14:17:41 +00:00
Martyn Taylor 964b145733 ARTEMIS-423 Do not set backup node as self 2016-02-29 16:11:58 +00:00
Ville Skyttä 7c275cdb1a Use generics more 2016-02-28 01:06:59 +02:00
Clebert Suconic 6bdfe95f66 ARTEMIS-350 small improvement on the writable logic 2016-02-23 15:04:49 -05:00
Clebert Suconic c4760488e3 fixing regression caused by #397 2016-02-23 14:22:51 -05:00
jbertram 2fcd474bb3 ARTEMIS-350 fix for potential race
It's possible for the latch used for flow control here to get out of sync. In
other words, multiple count-downs can occur between count-ups so that the latch
always has a count > 0. When this situation arises then every single packet
sent to the replica is delayed by 5 seconds.

The solution here essentially is to eliminate the latch completely and use a
condition/wait/notify pattern.
2016-02-23 12:56:45 -06:00
Andy Taylor f6ea511b8a ARTEMIS-416 - Netty Acceptor allows transfer of connections when paused
Throw an exception if the acceptor is paused or not started

https://issues.apache.org/jira/browse/ARTEMIS-416
2016-02-22 10:47:13 -05:00
Ville Skyttä aa3f3bd6a7 Use try-with-resources more 2016-02-21 12:09:43 +02:00
jbertram e762f823d1 ARTEMIS-391 log WARN on cxn limit 2016-02-18 10:19:59 -06:00
Clebert Suconic 9ebc6786b6 ARTEMIS-401 Refactoring Acceptors and ProtocolManager to support parameters
https://issues.apache.org/jira/browse/ARTEMIS-401
2016-02-18 10:14:26 -06:00
jbertram dffe93152b ARTEMIS-395 auto-delete only if setting is true 2016-02-09 14:24:51 -05:00
jbertram 94dc2976ef ARTEMIS-388 listen for activation failures 2016-02-09 14:24:07 -05:00
kurobako b8dd0219a3 eliminated NPE possibility in QueueImpl class 2016-02-09 11:08:35 -05:00
Clebert Suconic e9ce4ce40b ARTEMIS-392 Fixing Allocator after socket upgrade
https://issues.apache.org/jira/browse/ARTEMIS-392
2016-02-08 10:34:16 -06:00
Martyn Taylor 32a9d60a3d Allow users to configure jdbc driver class name
This patch allows users to configure the Driver class that the JDBC
store and journal uses and removes Derby as a default.
2016-02-08 11:23:38 -05:00
Dmitrii Tikhomirov 2953e46aec ARTEMIS-393 Server logs message with queue deploy even when topic is being deployed. 2016-02-08 10:12:56 -05:00
jbertram 8dcea17f11 ARTEMIS-387 grammar fix 2016-02-05 12:13:11 -06:00
jbertram 5a483f922a ARTEMIS-376 NPE during fail-back 2016-02-04 14:20:02 -06:00
jbertram 1eb631e2b8 ARTEMIS-374 support schedule messages on LVQ 2016-02-01 11:58:56 -06:00
Clebert Suconic e62a820414 Fixing ServerMessage's copy and MQTT delivery 2016-01-27 17:12:56 -05:00
Martyn Taylor 5383a0c409 Handful of JDBC Journal Fixes
This patch fixes a number of bugs with the JDBC Journal implementation.
Mainly around how it was handling transactions.  The XA transactions
tests are now enabled to test both the File and Database store.
2016-01-27 12:17:55 -05:00
Lachezar Dobrev cc4d24cfbb ARTEMIS-362 Broadcast only filled buffer content.
When publishing server connectors to other cluster members the whole buffer is sent.
This fixes ARTEMIS-362 by extracting the filled part of the buffer for broadcasting.

Added test case that checks that packet size does not exceed 1500 bytes with one connector.
2016-01-26 16:30:44 -05:00
Ville Skyttä 4e5b5b393a Access static methods and fields directly 2016-01-25 12:12:54 -05:00
Ville Skyttä 13cb6ddfd1 Add missing @Override annotations 2016-01-25 12:10:25 -05:00
Ville Skyttä 3f20e0d19a Remove redundant type parameters 2016-01-25 12:10:25 -05:00
Martin Styk 812affffbe ARTEMIS-360 - PagingTest.testSpreadMessagesWithFilterWithDeadConsumer fails on timeout waiting for stop paging
extended waiting time
2016-01-25 14:37:43 +01:00
Clebert Suconic 7957f574f6 ARTEMIS-357 No need to check copy any longer 2016-01-23 10:45:35 -05:00