Commit Graph

1759 Commits

Author SHA1 Message Date
Clebert Suconic f9d101d0a1 ARTEMIS-1531 Adding timedbuffer operations on critical analyzer
Also, making TimedBuffer.stop() synchronized to avoid issues during device outages
2017-11-29 18:09:00 -05:00
Clebert Suconic 8b7282d849 ARTEMIS-1529 Fixing Ref count over asynchronous ack 2017-11-29 09:45:09 -05:00
Tomas Kratky dbb3aaddf6 ARTEMIS-1529 Adding test on durable topics 2017-11-29 09:45:09 -05:00
saurabhrai 4abca78785 ARTEMIS-1364: Enable internal sorting in hawtio web console 2017-11-29 08:52:33 +00:00
Stanislav Knot 9a6649d753 ARTEMIS-1508 test for diverting topic and queue using selector 2017-11-27 15:04:04 -05:00
Pat Fox 4edf6793bb ARTEMIS-1524 avoid null pointer due to race condition in listAddresses(). If address is deleted, ignore that address and continue 2017-11-27 13:05:12 -05:00
Andy Taylor 7beb378061 NO-JIRA Adding test for duplicate queues in config 2017-11-24 13:17:01 +00:00
Clebert Suconic 16d9b191a1 ARTEMIS-1513 Fix intermittent failure 2017-11-21 10:32:03 -05:00
Justin Bertram 40aa3f5821 ARTEMIS-1513 fix AMQP + core bridge 2017-11-21 09:44:30 -05:00
Clebert Suconic b27ed5de16 ARTEMIS-1514 Fix File open on Large Message 2017-11-21 09:27:27 -05:00
Martyn Taylor eddb144deb ARTEMIS-1514 Fix read large message into buffer 2017-11-21 13:23:12 +00:00
Howard Gao 5fe88e1c66 ARTEMIS-1365 Advisory consumers listed in Console
Openwire clients create consumers to advisory topics to receive
notifications. As a result there are internal queues created
on advisory topics. Those consumer shouldn't be exposed via
management APIs which are used by the Console

To fix that the broker doesn't register any queues from
advisory addresses.

Also refactors a code to remove Openwire specific contants
from AddressInfo class.
2017-11-17 17:39:40 +08:00
Clebert Suconic 9daa0321b6 ARTEMIS-1514 Large message fix
I'm doing an overal improvement on large message support for AMQP
However this commit is just about a Bug on the converter.

It will be moot after all the changes I'm making, but I would rather keep this separate
as a way to cherry-pick on previous versions eventually.
2017-11-15 20:54:58 -05:00
Howard Gao 19c6f2d5c4 NO-JIRA Added test coverage for broker paging with unlimited memory
This test starts 2 servers and send messages to
a queue until it enters into paging state. Then
it changes the address max-size to -1, restarts
the 2 servers again and consumes all the messages.
It verifies that even if the max-size has changed
all the paged messages will be depaged and consumed.
No stuck messages after restarting.

The tests is there to guard a case where messages
won't be depaged on server restart after the max-size
is changed to -1. This issue has been fixed into
master along with the fix for ARTEMIS-581, particularly
the changes to the method PagingStoreImpl.getMaxSize().
2017-11-15 17:19:30 -05:00
Clebert Suconic 68705a5a63 NO-JIRA Making sure System.properties are cleaned up between tests 2017-11-15 17:14:34 -05:00
Andy Taylor 6982244bf4 NO-JIRA Adding Advisory OpenWire tests 2017-11-15 16:09:51 -05:00
Martyn Taylor 2e7b660ca8 ARTEMIS-1489 CriticalAnalyzer Fault Injection Test
Fault injection via Byteman to simulate deadlock and slow disk
sync scenarios, ensures the Critical Analyzer detects the issues
reacts appropriately.
2017-11-15 13:37:29 -05:00
Justin Bertram 55d7260a07 ARTEMIS-1510 refactor Maven poms
Clean up unused declared dependencies and undeclared dependencies which
are pulled in transitively.
2017-11-13 17:03:35 -05:00
Martyn Taylor 18109e30d9 ARTEMIS-1428 Add WS tests for max frame size 2017-11-13 16:55:47 -05:00
Martyn Taylor a5c443afb0 ARTEMIS-1511 Update tests to use StompTest Client + Fix issues 2017-11-13 16:55:47 -05:00
Martyn Taylor c6e5163a51 ARTEMIS-1511 Enable WebSocket Transport in STOMP test client 2017-11-13 16:55:47 -05:00
Martyn Taylor 5211afdf86 ARTEMIS-1511 Refactor AMQP Transport for use with other test clients 2017-11-13 16:55:47 -05:00
Clebert Suconic 63b156e290 ARTEMIS-1495 Test Improvements
Server.stop is currently waiting completions on Sessions just because of test cases.

With the recent changes made into the Executors this is not needed any longer
2017-11-13 16:46:32 -05:00
Clebert Suconic 91db08072b ARTEMIS-1495 Fixing In Handler executor and added benchmark to measure impact of changes 2017-11-09 11:58:36 -05:00
Clebert Suconic 2e6176a693 ARTEMIS-1495 Removing flushes from codebase
Instead of flushing we just need to make sure there are no more calls into
page executors as we stop the PageManager.

This will avoid any possible starvations or deadlocks here.
2017-11-09 11:58:36 -05:00
Francesco Nigro 8bf879f156 ARTEMIS-1495 Test simulating a dead lock on queue auto create under stress 2017-11-09 11:58:36 -05:00
Francesco Nigro 8e8a6f0faf ARTEMIS-1509 Add support for JdbcNodeManager into the NettyFailoverTest 2017-11-08 14:52:57 +01:00
Francesco Nigro 3950169c21 ARTEMIS-1471 Needs Bounds Checking on writes for MappedSequentialFile
The MappedSequentialFile relies on the assumption that any writers
won't exceed the maximum capacity of the file, leaving the JVM to crash otherwise.
This commit adds proper bounds checking on write operations (and position changes too)
in order to provide recoverable effects if such scenario should occour.
In addition are provided minor fixes on Mapped and Nio SequentialFile::fill behaviour
to match the original contract.
2017-11-06 13:52:57 -05:00
Clebert Suconic 559a704818 ARTEMIS-1416 Fixing testsuite 2017-11-03 18:27:42 -04:00
Howard Gao ec13ed6df0 ARTEMIS-1416 Fix regressions in Joram tests
This closes #1621
2017-11-03 18:26:03 -04:00
Howard Gao f3ace6afd7 ARTEMIS-1416 Queue is not autocreated if address already exists
- Fix on core and amqp.
- Add test to verify amqp's current large message behavior.
- Add test to openwire also just to verify.
2017-11-03 18:25:23 -04:00
Clebert Suconic ea5967b09b NO-JIRA Fixing typo
I changed the assertion by mistake on 75dc271cdb
2017-11-03 13:18:09 -04:00
Stanislav Knot a5c0c024fa ARTEMIS-1486 added JMS client test 2017-11-03 10:53:05 -04:00
Justin Bertram 096d98407f ARTEMIS-1492 obfuscate passwords in acceptorControl 2017-11-02 20:46:26 -04:00
Clebert Suconic 75dc271cdb NO-JIRA Small refactoring on Wait
- Added Wait.assert methods, what would make it easier to assert on future conditions
- Moved Wait to artemis-junit, we are now using that module on the testsuite
2017-11-02 09:37:31 -04:00
Clebert Suconic 7f4a79b0c6 NO-JIRA Fixing intermittent test failures 2017-11-02 09:37:31 -04:00
Stanislav Knot 61ce7a7454 ARTEMIS-1486 Core client should be notified if consumer is closed on broker side 2017-11-02 11:19:35 +00:00
Justin Bertram 8703d9d51d [maven-release-plugin] prepare for next development iteration 2017-11-01 00:38:57 -05:00
Justin Bertram ec63189a0a [maven-release-plugin] prepare release 2.4.0 2017-11-01 00:38:56 -05:00
Justin Bertram a44b9d5edf [maven-release-plugin] prepare for next development iteration 2017-10-31 12:09:43 -05:00
Justin Bertram 34a7431d1b [maven-release-plugin] prepare release 2.4.0 2017-10-31 12:07:55 -05:00
Clebert Suconic 9eb780cbd1 ARTEMIS-1490 Race on address delete 2017-10-31 08:37:40 -05:00
Clebert Suconic f8a0eec2cf ARTEMIS-1489 Adjusting timeouts on test
The Critical analyzer is supposed to catch Deadlocks, and such
can only be resolved by killing the VM.

This test is using shutdown as it would be a bit more complex to
handle Byteman to then halt the VM. This will validate the
CriticalAnalyzer is capturing the event, and in such it would halt the VM.
2017-10-31 08:33:44 -05:00
Clebert Suconic 2bf690e21b ARTEMIS-1489 Adding Timed Buffer into Critical Analyzer 2017-10-31 08:33:44 -05:00
Martyn Taylor 5a476a189d ARTEMIS-1489 Add test for TimedBuffer Critical Analyser 2017-10-31 08:33:44 -05:00
Justin Bertram c93a250635 ARTEMIS-1473 fix default user/pass system props 2017-10-25 14:56:09 -05:00
Justin Bertram ac73f38d3d NO-JIRA fix timing issue in test 2017-10-25 12:45:48 -05:00
Chris Burlinchon 06dab31fd0 ARTEMIS-1479 Fix set validated user in large messages 2017-10-25 11:44:14 -04:00
Stanislav Knot 6faffd690e ARTEMIS-1420 enforce timeout on network client handshake 2017-10-24 14:28:23 -05:00
Christopher L. Shannon (cshannon) b386c7c5ae ARTEMIS-1469 - Add support for trusting any client certificate
Added a new trustAll flag which will support trusting any client
keystore when doing testing against a broker.  This setting should not
be used in production and is strictly for testing.
2017-10-19 08:57:10 -05:00
Michael André Pearce c1fcadb706 ARTEMIS-1464 Fix Core to AMQP conversion BytesMessage corrupts bytes
Extend test cases in MessageTypesTest to cover Core to AMQP combinations for all JMSTypeTests
Fix ServerJMSBytesMessage to correctly return bodyLength
Remove unused/dead code
2017-10-19 13:11:39 +01:00
Clebert Suconic fdcae9d32a ARTEMIS-450 Fixing deadlock over lots of rollbacks and Queue.addHead 2017-10-18 12:21:47 -04:00
Justin Bertram eee72a61d1 ARTEMIS-1456 use queue name when null address on createQueue 2017-10-17 10:03:33 +01:00
Howard Gao 105d8c3388 ARTEMIS-1366 Hide Advisory Address from Management Console
Openwire consumer is listed twice below "consumers" tab.
First it shows correctly the requested queue consume.
Second it shows consumer from multicast queue ActiveMQ.Advisory.
The second one is internal and should be hidden.
2017-10-16 16:51:54 -05:00
Andy Taylor 62a2b14dd0 ARTEMIS-1463 - add role based authentication to the JMX objects
This is done by creating a guard and using JAAS to check for access to mbean objects and their methods.

NB this also implements https://issues.apache.org/jira/browse/ARTEMIS-534

https://issues.apache.org/jira/browse/ARTEMIS-1463
2017-10-16 15:39:38 +01:00
Howard Gao 180703da6c NO-JIRA Adding Openwire basic divert tests
Adding 2 tests that showing how openwire clients
interact with core Divert.
2017-10-11 20:58:14 +08:00
Clebert Suconic ea89833204 ARTEMIS-1446 Use Contructor on TransformerConfiguration 2017-10-10 15:17:31 -04:00
Clebert Suconic 3b24a3b74c NO-JIRA Fixing broken test 2017-10-10 13:34:38 -04:00
Howard Gao 312d53d5ab ARTEMIS-1227 Internal properties not removed from messages
In a cluster if a node is shut down (or crashed) when a
message is being routed to a remote binding, a internal
property may be added to the message and persisted. The
name of the property is like _AMQ_ROUTE_TOsf.my-cluster*.
if the node starts back, it will load and reroute this message
and if it goes to a local consumer, this property won't
get removed and goes to the client.

The fix is to remove this internal property before it
is sent to any client.
2017-10-10 09:15:45 +08:00
Clebert Suconic 964cbcad07 ARTEMIS-1446 fixing test 2017-10-09 20:25:05 -04:00
Michael Andre Pearce 4db8cd54ca ARTEMIS-1446 - Support Transformer configuration by properties
Update Tranformer to be able to handle initiation via propertiers (map<string, string>)
Update Configuration to have more specific transfromer configuration type, and to take properties.
Support back compatibility.
Add AddHeadersTransformer which is a main use case, and can act as example also.
Update Control's to expose new property configuration
Add test cases
Update examples for new transformer config style
2017-10-09 17:29:10 -04:00
Clebert Suconic d190b611be ARTEMIS-1452 Improvements to IO parameters and options
- it is now possible to disable the TimedBuffer
- this is increasing the default on libaio maxAIO to 4k
- The Auto Tuning on the journal will use asynchronous writes to simulate what would happen on faster disks
- If you set datasync=false on the CLI, the system will suggest mapped and disable the buffer timeout

This closes #1436

This commit superseeds #1436 since it's now disabling the timed buffer through the CLI
2017-10-09 14:32:04 -04:00
Clebert Suconic 1d5fe2862a ARTEMIS-1444 Fixing byte buffer conversion
I'm also using a lower size on message, to speed up the new test.

(100M may be a lot on some CIs)
2017-10-09 12:50:38 -04:00
Martyn Taylor 988c91557d ARTEMIS-1444 Support Messages > JournalBufferSize in all Protocols 2017-10-09 12:50:38 -04:00
Robert Godfrey cc8a0cb90e ARTEMIS-1454: Support SASL in outgoing AMQP
Update ProtonHandler to allow for both client and server side SASL
and other related changes to allow for setting of client side mechanism
2017-10-09 10:05:35 +02:00
Timothy Bish 6d94997aa8 ARTEMIS-1314 Fixing issues with JMS selectors on AMQP
Allows for JMS selectors on JMSCorrelationID as well as JMSXGroupID
and JMSXUserID along with some fixes to avoid an NPE case and fixes
to the conversion of AMQP MessageID and CorrelationID values when
doing cross protocol mappings.  Adds new tests to cover more cases
of using the JMS selector with Qpid JMS and the AMQP test client.
2017-10-06 18:40:06 -04:00
Jeff Mesnil 5401ec383f [ARTEMIS-1450] Support InitialMessagePacketSize on JMS ConnectionFactoryConfiguration
JIRA: https://issues.apache.org/jira/browse/ARTEMIS-1450
2017-10-06 18:39:27 -04:00
Justin Bertram 03d56d2cf5 ARTEMIS-1445 fix auto-delete for AMQP and OpenWire 2017-10-05 14:08:52 -05:00
Clebert Suconic 02b305b02a ARTEMIS-1352 Fixing test on Auto created address 2017-10-03 11:59:42 -04:00
Clebert Suconic aa3e8941d1 ARTEMIS-1442 Shutdown server if can't move file on journal 2017-09-29 11:35:47 -04:00
Clebert Suconic 178d403117 NO-JIRA Adding CriticalAnalyzer test on HALT 2017-09-29 11:35:47 -04:00
Clebert Suconic 1b0fc06196 ARTEMIS-1440 ForceFailover to be asynchronous and allow management 2017-09-29 09:34:30 -04:00
Justin Bertram d1cd1e71a1 ARTEMIS-1352 auto-create MULTICAST queue when AMQP client sends to topic 2017-09-28 21:40:18 -04:00
Michael Andre Pearce e9eaa7daf6 ARTEMIS-1422 Fix match change to support wildcard config 2017-09-25 11:34:34 -04:00
Clebert Suconic 533797fbc4 ARTEMIS-1218 Fixing checkstyle 2017-09-25 11:10:38 -04:00
Justin Bertram 956c4c6493 NO-JIRA use lambdas in tests for readability 2017-09-25 11:00:56 -04:00
Justin Bertram dac625179a ARTEMIS-1218 implement MQTT link stealing 2017-09-25 11:00:56 -04:00
Jens Reimann 144dbadcb5 ARTEMIS-1391 embedding 2 MQTT brokers is broken 2017-09-25 11:00:56 -04:00
Jiri Danek 4d126adedb ARTEMIS-1398 NPE on null pwd from MQTT client 2017-09-25 10:55:11 -04:00
Pat Fox 50fcd48e28 ARTEMIS-1433 adding AddressMemoryUsage() and AddressMemoryUsagePercentage() to ActiveMQServerControl 2017-09-25 10:37:16 -04:00
Robbie Gemmell 1a077348e2 ARTEMIS-1434: update handling of tick deadline values
- account for potential to be negative due to using nanoTime derived values
- add some other edge case protections to avoid task ceasing in error
2017-09-22 16:33:21 +01:00
Howard Gao f84d26ebb2 ARTEMIS-1424 Openwire not work with different tightEncoding options
If message senders and receivers uses different
wireformat.tightEncodingEnabled options, broker will get marshalling
problem. This is because when openwire messages are converted to
core messages, and later these core messages converted to openwire
messages, the broker uses a mashaller that comes with the connection
used to carry the messages.

For example, if a producer sents a message using option "wireformat
.tightEncodingEnabled=false" and a receiver tries to receive it
using 'true' for the same option, it'll never get it because the
broker will fail to use a "tight encoding" marshaller to
decode a 'loose encoded' message.

To fix the problem, we always use 'tight encoding' for internal
message converters.
2017-09-19 07:50:24 +08:00
Pat Fox 89a64ff11c ARTEMIS-1423 adding numeric filtering for ActiveMQServerControl.listQueues()/listAddresses()/listSessions() 2017-09-18 15:15:31 -05:00
Michael Andre Pearce 60b0a0bd09 NOJIRA - Speed up Acknowledgement test
Currently this test can take over 30seconds just itself. It seems we can safely reduce the number of messages to validate perf improvement greatly reducing test time.
2017-09-16 12:33:49 -04:00
Clebert Suconic 481f753589 ARTEMIS-1419 Small tweak on openwire Test 2017-09-13 18:25:10 -04:00
Howard Gao e4fb722ad8 ARTEMIS-1419 OpenWire advisory message never deleted
By default, every openwire connection will create a queue
under the multicast address ActiveMQ.Advisory.TempQueue.
If a openwire client is create temporary queues these queues
will fill up with messages for as long as the associated
openwire connection is alive. It appears these messages
do not get consumed from the queues.

The reason behind is that advisory messages don't require
acknowledgement so the messages stay at the queue.
2017-09-13 18:21:43 -04:00
Michael Andre Pearce 7d943cc6f7 ARTEMIS-1405: Fix PurgeOnNoConsumer queue config is not persisted on restart
Added integration test, to prove issue, and assert fix.
Fix PersistentQueueBindingEncoding to return value, not false.
Fix some method arg name to align with class interface arg name
2017-09-13 18:21:13 -04:00
Pat Fox 196df92306 NO-JIRA add unit tests for ActiveMQServerControl listAddresses() and listConsumers() 2017-09-12 12:59:43 -05:00
Michael Andre Pearce ee53b2bf53 ARTEMIS-1413: FIX JMSDeliveryMode/Priority on AMQP to CORE conversion
Added test case for cross protocol on JMSDeliveryMode proving issue, and asserting fix
Added fix to AmqpCoreConverter to ensure durability (JMSDeliveryMode) is retained.

Similar issue spotted with JMSPriority as with JMSDeliveyMode, fixing at the same time.
Added extra test case for jmspriority
Added fix for jmspriority
2017-09-11 23:18:50 +01:00
Martyn Taylor 152791c230 ARTEMIS-1402 AMQP notfound on unmatched FQQN
Return an AMQP not:found error to the client, if the supplied queue in
an FQQN belongs to an address other than what is provided in the FQQN.
2017-09-08 12:41:36 +01:00
Martyn Taylor 32ac370edc ARTEMIS-1392 Fix NPE when FQQN queue does not exist during multicast subscribe 2017-09-08 12:41:36 +01:00
Francesco Nigro 35c3475092 ARTEMIS-1401 Numerical overflow fix when using System::nanoTime 2017-09-07 10:40:14 -04:00
gtully 99b2e4c0fb ARTEMIS-1373 - support memberOf type query for role mapping and respect roleName attribute AMQ-3064 2017-09-07 14:11:48 +01:00
Jens Reimann d2dcf1bba3 Drop Eclipse Foundation repository
Eclipse Paho 1.1.0 can be consumed from Maven Central.

Signed-off-by: Jens Reimann <jreimann@redhat.com>
2017-09-06 10:30:13 -04:00
Stanislav Knot 12f085a934 ARTEMIS-1385 fixed incomplete comment and typo (appendix) 2017-09-06 10:24:43 -04:00
Pat Fox 26389c472d NO-JIRA added unit test to exercise ActiveMQServerControl.listQueues() 2017-09-06 09:54:29 -04:00
Martyn Taylor 16dfd777b8 ARTEMIS-1387 Fix AMQPtoMQTT and Link route issues 2017-09-06 11:21:56 +01:00
gtully 125bd41f9d ARTEMIS-1372 ARTEMIS-1373 documentation updates 2017-09-06 10:22:28 +01:00
Clebert Suconic c8982d775b [maven-release-plugin] prepare for next development iteration 2017-09-05 17:03:48 -04:00
Clebert Suconic 84d5ac65b4 [maven-release-plugin] prepare release 2.3.0 2017-09-05 17:03:37 -04:00
gtully 5db68a451b ARTEMIS-1372 - alow auth to ldap via kerberos 2017-09-05 16:35:14 -04:00
gtully ab7dc69b5d ARTEMIS-1373 - allow LDAP login module apply role mapping to existing user principals in the subject 2017-09-05 16:35:14 -04:00
gtully 986af2e99d ARTEMIS-1381 - fix test QueueControlUsingCoreTest 2017-09-04 15:17:12 +01:00
Pat Fox 4618b192c2 ARTEMIS-1381 add JMX operation removeAllMessages() to the queue
fix checkstyle trailing spaces
2017-09-01 00:55:07 +02:00
Clebert Suconic 4f1504ee57 NO-JIRA: update extra tests pom 2017-08-31 14:32:09 -04:00
Clebert Suconic ed1b268d42 [maven-release-plugin] prepare for next development iteration 2017-08-31 13:48:09 -04:00
Clebert Suconic 21f2a4a52c [maven-release-plugin] prepare release 2.3.0 2017-08-31 13:47:57 -04:00
Clebert Suconic 6483e4a0aa ARTEMIS-1378 Improving update Queues and Addresses 2017-08-30 22:45:33 -04:00
Justin Bertram 2f5a9322d0 ARTEMIS-1379 Some queue stats not threadsafe 2017-08-30 10:53:43 -04:00
Clebert Suconic 0df12657af ARTEMIS-1378 Update Address is broken, may lose messages 2017-08-29 20:48:01 -04:00
Clebert Suconic 9df2ffe248 ARTEMIS-1297 fixing intermittent failure 2017-08-29 19:04:23 -04:00
Clebert Suconic 6fda75a9fc ARTEMIS-1297 Load balance or redistribution of AMQP Messages 2017-08-29 12:56:15 -05:00
Michael Andre Pearce 9fbbb7c416 ARTEMIS-1361 - Support Updating queue config from broker.xml at runtime
Add support to update Queue config via reload using existing updateQueue method at runtime.
Add/extend unit test cases to include testing reload of queue config.
2017-08-25 22:46:50 -04:00
Justin Bertram 605ab08c05 ARTEMIS-1371 update JGroups stack files 2017-08-25 22:46:13 -04:00
Clebert Suconic f2d74e7a43 ARTEMIS-1367 Moving CriticalAnalyzerPolicy 2017-08-24 18:08:01 -04:00
Clebert Suconic 78321668ea NO-JIRA: fixing test 2017-08-23 16:04:42 -04:00
Timothy Bish 9021e0301d NO-JIRA Fix tests that fail on loaded system
Tests that can fail on loaded system due to not waiting for metrics
updates.
2017-08-23 10:51:31 -04:00
Clebert Suconic a85e75daa1 NO-JIRA fixing intermittent test failure
There's no semantic change here, just a test fix
2017-08-23 10:49:35 -04:00
Clebert Suconic cf8b42a145 ARTEMIS-1367 Fixing test 2017-08-23 09:08:40 -04:00
Justin Bertram e82f611e2e NO-JIRA fix intermittently failing MQTT test 2017-08-22 22:08:24 -04:00
Clebert Suconic 27d37b735d NO-JIRA fixing TimedBufferTest 2017-08-19 12:48:34 -04:00
Clebert Suconic 4f8b4d054d NO-JIRA fixing test 2017-08-19 12:44:50 -04:00
Clebert Suconic 2033ee8c43 NO-JIRA fixing MQTT Test 2017-08-18 22:58:52 -04:00
Clebert Suconic ce6942a9aa ARTEMIS-1353 Initial replication of large messages out of executor
This is based on the work @jbertram made at the github pr #1466 and the discussions we had there
2017-08-18 16:19:25 -04:00
Andy Taylor 4ee9580e69 ARTEMIS-1350 - Added close button to console for client objs
https://issues.apache.org/jira/browse/ARTEMIS-1350
2017-08-18 13:55:37 +01:00
Justin Bertram bcf93404c6 NOJIRA fix policy for NettySecurityClientTest 2017-08-17 17:00:25 +01:00
Christopher L. Shannon (cshannon) 03785a3142 ARTEMIS-1347 - Pass the QueueBinding to beforeCreateConsumer
Instead of just the queue name the entire QueueBinding object is now
passed to the beforeCreateConsumer plugin method. Also cleaned up some
comments
2017-08-17 10:14:11 -05:00
Jiri Danek 23c42401bb NO-JIRA Add asserts to SessionTest#testIllegalStateException 2017-08-17 10:12:31 -05:00
Martyn Taylor bb3965b7f7 ARTEMIS-1349 Add management views for client objects 2017-08-17 10:44:41 +01:00
Clebert Suconic cb7183c473 ARTEMIS-1348 Fixing Checkstyle 2017-08-15 12:31:06 -04:00
Michael Andre Pearce 26752a7aaf ARTEMIS-1348 Support LVQ for AMQP
Add support for LVQ, using the same property key as core "_AMQ_LVQ_NAME"
Add test case for AMQP LVQ.
2017-08-12 23:43:37 +01:00
Clebert Suconic 8cef53f39d NO-JIRA Adding LargeMessage & LVQTest 2017-08-10 21:26:17 -04:00
Clebert Suconic cc26936917 ARTEMIS-1333 removing Exception(trace) from test 2017-08-10 14:42:16 -04:00
Christopher L. Shannon (cshannon) 64bacee28a ARTEMIS-1332 Always return a response to the client on session metadata add
This will make sure that if there is an ActiveMQException thrown the
client will get notified and not hang.
2017-08-10 12:28:14 -04:00
Clebert Suconic 012fe58b2c ARTEMIS-1333 fixing test, cannot flush itself from Runnable 2017-08-09 16:02:10 -04:00
Michael Andre Pearce 0bc5510059 ARTEMIS-1342: Support Netty Native KQueue on macOS
Add support for KQueue for when server or client runs on macOS. This is inline with the epoll support for linux.
2017-08-09 15:23:16 -04:00
Clebert Suconic fabc0701a3 ARTEMIS-1333 SendACK listener fix 2017-08-09 15:18:54 -04:00
Clebert Suconic 96c6268f5a ARTEMIS-1333 SendACK listener message loss (adding test)
next commit should have the fix.
this is to make it easy to confirm the fix by people looking.
2017-08-09 15:18:54 -04:00
Clebert Suconic 1ace306121 ARTEMIS-1328 Improving direct delivery check
Instead of wait to flush an executor,
I have added a method isFlushed() which will just translate to the
state on the OrderedExecutor.

In the case another executor is provided (for tests) there's a delegate
into normal executors.
2017-08-08 14:00:58 -04:00
gtully 9fedb47c40 [ARTEMIS-1310] [ARTEMIS-1264] consolidate configuration to require login configuration scope 2017-08-08 13:28:50 -04:00
gtully ca7197b5c3 [ARTEMIS-1310] add amqp sasl gssapi mechanism support
delegate to the jdk saslServer. Allow acceptor configuration of supported mechanismis; saslMechanisms=<a,b>
and allow login config scope for krb5 to be configured via saslLoginConfigScope=x
2017-08-08 13:28:50 -04:00
Michael Andre Pearce 7b40abead9 ARTEMIS-1308: Make acknowlegde in AcitveMQMessage non blocking
Allow commit within the acknowledge to be non blocking (batch) this toggles the on the existing blockonacknowlegde config.
2017-08-08 10:07:15 -04:00
Clebert Suconic 88f78d97ef ARTEMIS-1324 Fix test 2017-08-07 23:43:43 -04:00
Clebert Suconic f16af75354 ARTEMIS-1324 Deadlock detection and health check of critical components 2017-08-07 18:40:03 -04:00
Justin Bertram b6b8fa411f ARTEMIS-1322 ServerLocator option to ignore topology for load-balancing 2017-08-04 13:56:30 -05:00
Michael Andre Pearce 776ec0b9fd ARTEMIS-1313 getAddresses in PostOfficeImpl does not correctly return all addresses
Fix so that getAddresses uses addressInfoMap instead of the mappings so that addresses without queues also are returned
2017-08-02 12:50:34 -04:00
Howard Gao 613b459c52 ARTEMIS-1315 Client disconnection may cause consumer to hang
When calling a consumer to receive message with a timeout
(receive(long timeout), if the consumer's buffer is empty, it sends
a 'forced delivery' the waiting forever, expecting the server to
send back a 'forced delivery" message if the queue is empty.

If the connection is disconnected as the arrived 'forced
delivery' message is corrupted, this 'forced delivery' message
never gets to consumer. After the session is reconnected,
the consumer never knows that and stays waiting.

To fix that we can send a 'forced delivery' to server right
after the session is reconnected.
2017-08-02 12:48:43 -04:00
Clebert Suconic c3f8321c42 NO-JIRA Improving a test with Wait 2017-08-02 10:39:19 -04:00
Francesco Nigro 74f243cc4d ARTEMIS-1312 TimedBuffer doubled timeout with blocking flush 2017-08-01 11:52:28 -04:00
Francesco Nigro 567bfe3b9b ARTEMIS-1312 TimedBuffer doubled timeout with blocking flush 2017-08-01 06:34:25 -04:00
Justin Bertram 8c8ab0adc1 ARTEMIS-1299 support commas in RA connection parameter values 2017-07-28 18:00:50 -04:00
Clebert Suconic cd9ce6a502 ARTEMIS-1304 ignoring invalid test 2017-07-25 10:08:11 -04:00
Clebert Suconic 955557a31c NO-JIRA: Fix extra-tests pom after release 2017-07-24 21:30:53 -04:00
Clebert Suconic fdad83be22 [maven-release-plugin] prepare for next development iteration 2017-07-24 21:21:18 -04:00
Clebert Suconic 71b1cc2a20 [maven-release-plugin] prepare release 2.2.0 2017-07-24 21:21:06 -04:00
Clebert Suconic 50a900c04b ARTEMIS-1304 Message loss on Commmit timeout during failover 2017-07-24 20:23:56 -04:00
Clebert Suconic f37af02074 ARTEMIS-1276 fixing license headers 2017-07-24 11:10:55 -04:00
Jiri Danek 1b3d9cfed0 ARTEMIS-1276 fix JmsSendReceiveWithMessageExpirationTest 2017-07-24 10:50:52 -04:00
Erich Duda 22b4755fbb ARTEMIS-1265 JaCoCo profile for getting code coverage report
Added two maven profiles for:
 - generating JaCoCo exec files
 - generating JaCoCo reports
2017-07-24 09:56:08 -04:00
Jiri Danek d732262f8c ARTEMIS-1276 delete MessageEvictionTest (feature not implemented)
The test is broken. It can be fixed by doing

```java
FakeTransportConnector(URI uri) {
   setServer(new TransportServer {
     @Override
     public URI getConnectURI() {
        return uri;
     }
but then the test would fail because message
 eviction is not supported by Artemis.
2017-07-24 09:50:40 -04:00
Jiri Danek 7e9c3fdfb7 ARTEMIS-1276 avoid System.exit in tests as Surefire cannot deal with that
This change results in many more tests being run. Previously, 662 tests
were executed. Now, 1166 tests is executed. The running time has increased
from ~20 minutes to ~50 minutes.
2017-07-24 09:50:40 -04:00
xstefank 553043393e ARTEMIS-1257 ActiveMQActivationSpec.java should use boxed types for attributes values according to the JCA specification 2017-07-24 09:41:25 -04:00
Francesco Nigro fdbf4f450a ARTEMIS-1301 Network failures recognition on backpressure while streaming large messages 2017-07-20 10:33:04 +01:00
Martyn Taylor 34df3afe0c Revert "ARTEMIS-1290 QueueQuery add prefix on address"
This reverts commit 44506f2258.
2017-07-18 16:16:42 -04:00
Clebert Suconic ad372ec98e ARTEMIS-1294 Using older sleep on TimedBuffer
And also adding test
2017-07-18 16:01:51 -04:00
Andy Taylor 6f140897c6 ARTEMIS-1296 - fix quorum vote
Add a check on top of just being able to connect to a live broker

https://issues.apache.org/jira/browse/ARTEMIS-1296
2017-07-18 08:10:11 +01:00
Martyn Taylor 44506f2258 ARTEMIS-1290 QueueQuery add prefix on address 2017-07-17 10:31:20 -04:00
Clebert Suconic f18b4ee0c9 ARTEMIS-1287/ARTEMIS-1292 Complete Page on the Journal
fixing PagingTest.testDeletePhysicalPages
2017-07-14 15:04:45 -04:00
Clebert Suconic baeca47b44 ARTEMIS-1287 Another fix on CorePluginTest
Trying to fix this test that's only failing on jenkins
2017-07-14 00:48:12 -04:00
Clebert Suconic 593f99df37 ARTEMIS-1287 Fix on CorePluginTest
Sometimes the message is expired before it reaches the client
2017-07-13 18:14:03 -04:00
Clebert Suconic 31d5758885 ARTEMIS-1288 crash during compact control files issues
The system would become irresponsive if crashed right at the
control file writing.
2017-07-13 17:12:58 -04:00
Clebert Suconic ac6420038f ARTEMIS-1287 Simple test fix SimpleOpenWireTest 2017-07-13 16:16:00 -04:00
Clebert Suconic cc6ca36c51 NO-JIRA Cleanup on testsuite 2017-07-13 13:25:50 -04:00
Clebert Suconic 7137743612 NO-JIRA Making a test harder to fail 2017-07-13 12:32:20 -04:00
Clebert Suconic c1dfc202e7 NO-JIRA: Simple fix on a test 2017-07-13 10:54:58 -04:00
Clebert Suconic 0bfdcb764c NO-JIRA: more fixes on plugintests
some asynchronously things on the server were making these to fail.
add some checkpoints to make sure it happens smoothly.
2017-07-13 09:19:15 -04:00
Clebert Suconic 36a948b225 NO-JIRA: Fixing intermittent failures on PluginTests 2017-07-12 21:15:31 -04:00
Jiri Danek 3e1237c1eb NO-JIRA fix few typos and a docstring 2017-07-11 19:34:06 -04:00
Clebert Suconic 36357e4556 ARTEMIS-1282 ClientSession.ceateQueue (String) method is using temporary queues 2017-07-11 19:24:22 -04:00
Clebert Suconic 7fd17f407f ARTEMIS-1269 Simple Actor to replace certain executions
This is replacing an executor on ServerSessionPacketHandler
by a this actor.

This is to avoid creating a new runnable per packet received.

Instead of creating new Runnable, this will use a single static runnable
and the packet will be send by a message, which will be treated by a listener.

Look at ServerSessionPacketHandler on this commit for more information on how it works.
2017-07-11 14:22:36 -04:00
Clebert Suconic 82f071ff46 ARTEMIS-1280 Avoiding leak on Queue futures 2017-07-11 11:32:03 -04:00
Clebert Suconic eab0cb587c NO-JIRA: Fixing ReceiveTest::testReceiveImmediate 2017-07-11 11:15:11 -04:00
Martyn Taylor 905098bc4e ARTEMIS-1268 Fix LargeMessages over STOMP 2017-07-11 10:58:40 -04:00
Andy Taylor 9ad3ad4657 ARTEMIS-1277 - purgeOnNoConsumer is not working properly
make sure rollback doesn't add messages back

https://issues.apache.org/jira/browse/ARTEMIS-1277
2017-07-11 11:25:48 +01:00
Odyldzhon Toshbekov 34697d58e1 ARTEMIS-1272 fix mqtt acknowledgement issue 2017-07-10 22:37:58 -04:00
Erich Duda ab92306d81 ARTEMIS-1274 MultipleProducersTest.wrongQueue fails 2017-07-10 14:41:32 -04:00
Jiri Danek ad228e202f NO-JIRA: Addressing some deprecated usage on the codebase
- PROTOCOL_PROP_NAME
- ConnectionLifeCycleListener
- GENERIC_IGNORED_FILTER
- HttpHeaders.Names
- HttpHeaders.Names and similar
2017-07-10 14:06:07 -04:00
gtully d4150be0d9 ARTEMIS-1264 allow role mapping via chained login modules
Add krb5sslloginmodule that will populate userPrincipal that can be mapped to roles independently
Generalised callback handlers to take a connection and pull certs or peerprincipal based on
callback. This bubbled up into api change in securitystore and security manager
2017-07-06 23:41:02 -04:00
Clebert Suconic 01a5a60b37 NO-JIRA: fixing test 2017-07-06 23:37:01 -04:00
Clebert Suconic 89e84e1320 ARTEMIS-1269 Fixing blocked replication
If replication blocked anything on the journal
the processing from clients would be blocked
and nothing would work.

As part of this fix I am using an executor on ServerSessionPacketHandler
which will also scale better as the reader from Netty would be feed immediately.
2017-07-06 19:04:48 -04:00
gtully cda1e018e1 ARTEMIS-1264 Foundation work for authentication with Kerberos using KRB_ cypher suites.
Core client with netty connector and acceptor doing kerberos
jaas.doAs around sslengine init such that the SSL handshake can do kerberos ticket
generaton and validation.
The kerberos authenticated user is then validated with the security manager before
being populated into the message userId.
The feature is enabled with the kerb5Config property. When lowercase it is the
principal. With a leading uppercase char it is the login.config entry to use.
2017-07-06 11:30:25 -04:00
Clebert Suconic 387fca584e ARTEMIS-1269 replication won't finish synchronization 2017-07-01 00:48:33 -04:00
Francesco Nigro 7075e2e457 ARTEMIS-1266 Mapped Journal refactoring
The MAPPED journal refactoring include:
 - simplified lifecycle and logic (eg fixed file size with single mmap memory region)
 - supports for the TimedBuffer to coalesce msyncs (via Decorator pattern)
 - TLAB pooling of direct ByteBuffer like the NIO journal
 - remove of old benchmarks and benchmark dependencies
2017-06-30 16:17:19 +02:00
Howard Gao d50f577cd5 ARTEMIS-1221 Duplicated ID causes LargeMessage lost at backup
When a large message is replicated to backup, a pendingID is generated
when the large message is finished. This pendingID is generated by a
BatchingIDGenerator at backup.

It is possible that a pendingID generated at backup may be a duplicate
to an ID generated at live server.

This can cause a problem when a large message with a messageID that is
the same as another largemessage's pendingID is replicated and stored
in the backup's journal, and then a deleteRecord for the pendingID
is appended. If backup becomes live and loads the journal, it will
drop the large message add record because there is a deleteRecord of
the same ID (even though it is a pendingID of another message).
As a result the expecting client will never get this large message.

So in summary, the root cause is that the pendingIDs for large
messages are generated at backup while backup is not alive.

The solution to this is that instead of the backup generating
the pendingID, we make them all be generated in advance
at live server and let them replicated to backup whereever needed.
The ID generater at backup only works when backup becomes live
(when it is properly initialized from journal).
2017-06-29 00:03:47 +08:00
Clebert Suconic 5c2144b782 ARTEMIS-1256 PagingOMETest.testPageCleanup fails
Using a Wait condition.

This closes #1370
2017-06-27 12:48:35 -04:00
Christopher L. Shannon (cshannon) a538b969c0 ARTEMIS-1258 - Add ServerSession as an argument to beforeSend and
afterSend
2017-06-27 12:42:40 -04:00
Clebert Suconic 437232b50e ARTEMIS-1253 Renaming NetworkReplicationTest to NetworkIsolationTest 2017-06-27 12:21:37 -04:00
Clebert Suconic 36110da9c8 ARTEMIS-1253 Refactoring renaming stop(boolean) to fail(boolean)
This method name would clash with ServiceComponent
As the real meaning here on this method is just to failover
So I've renamed the method to avoid the clash with my next commit

(I've done this on a separate commit as you may need to redo this
 commit from scratch again in other branches instead of lots of clashes on cherry-pick)
2017-06-26 16:15:39 -04:00
Clebert Suconic 4bae814908 ARTEMIS-1253 Adding testcase 2017-06-26 16:15:39 -04:00
Howard Gao 045021f7df ARTEMIS-1220 Diverted LargeMessage file corrupted during replication
When a large message is being diverted, a new copy of the original
message is created and replicated (if there is a backup) to the backup.

In LargeServerMessageImpl.copy(long) it reuse a byte array to copy
message body. It is possible that one block of date is read into
the byte array before the previous read has been replicated,
causing the replicated bytes to corrupt.

If we make a copy of the byte array before replication, the corruption
of data will be avoided.
2017-06-26 14:31:43 -04:00
Clebert Suconic b50ae5a916 NO-JIRA Fixing a test 2017-06-23 14:44:23 -04:00
Erich Duda c5a25d3322 ARTEMIS-1250 ClusteredMessageCounterTest.testNonDurableMessageAddedWithPaging fails
Before sending of messages to server 0 begins, the test
should wait until consumer is registered at RemoteQueueBindingImpl
on server 0. Otherwise some messages may not be rebalanced
to server 1.
2017-06-23 13:39:25 +02:00
Clebert Suconic e709fc366d NO-JIRA: Fixing a test 2017-06-22 17:59:55 -04:00
Clebert Suconic 339fa20f2b NO-JIRA: Fixing JournalImplTestUnit
it doesn't really matter the number of files.. as long as the data is valid.
This type of assertion limits the implementation. it's mocking test with too much intrusion
over the implementation. Hence I'm removing these clauses that will fail eventually.
2017-06-22 17:49:43 -04:00
Guillaume Nodet b6dcff039f [ARTEMIS-1196] Fix missing JSON support 2017-06-22 12:16:25 -04:00
Michael Andre Pearce f63f130407 ARTEMIS-1235 delete queues when broker.xml changes
Add extra configuration to address-settings to be able to
control / enable address/queue deletion by pattern,
rather than a global toggle.

Add support in the reload logic to remove address
and/or queues if the address matches an address setting,
where it is enabled.
2017-06-22 12:12:12 -04:00
Jiri Danek 60fad35cfe ARTEMIS-1244 propagate retain flag of received message 2017-06-22 12:00:40 -04:00
Michal Tóth 2b80426153 ARTEMIS-1244 Retain flag code todo comment
Identified possible bug in MQTT receive of missing retained flag.
2017-06-22 11:51:11 -04:00
Michal Tóth e801df7974 ARTEMIS-607 New tests AMQP,MQTT,Stomp interceptor properties tests
Added tests for AMQP, MQTT and Stomp protocol for interceptors.
Tests are checking intercepted message properties.
Linked issue ARTEMIS-607
2017-06-22 11:51:11 -04:00
Clebert Suconic 85aeac99ab Revert "ARTEMIS-1227 Internal properties not removed from messages"
This reverts commit f465996444.

Following discussion on https://github.com/hornetq/hornetq/pull/2114
2017-06-22 09:49:45 -04:00
Clebert Suconic e78a902881 ARTEMIS-1224 fixing test 2017-06-21 20:00:13 -04:00
Howard Gao e258bdf188 ARTEMIS-1242 OpenWire Transactions never removed
Openwire doesn't remove the finished transactions
(committed or rolledback).
2017-06-21 11:22:59 -04:00
Howard Gao 3d0896f87c ARTEMIS-1240 Disconnect at client side on decoding error
When a broken packet arrives at client side it causes decoding error.
Currently artemis doesn't handle it properly. It should catch such
errors and disconnect the underlying connection, logging a proper
warning message
2017-06-21 10:25:34 -04:00
Michael Andre Pearce 44b7e455cb ARTEMIS-1205: AMQP Shared Durable Subscriber incorrect behaviour
Use AcitveMQDestination for subscription naming, fixing and aligning queue naming in the process.

The change is behind a configuration toggle so to avoid causing any breaking changes for uses not expecting.
2017-06-19 12:44:13 +01:00
Andy Taylor d2594a280b ARTEMIS-1211 - Allow local transactions when no jta in Resource Adapter
https://issues.apache.org/jira/browse/ARTEMIS-1211
2017-06-19 10:08:30 +01:00
Martyn Taylor f20703a13e ARTEMIS-1215 Fix address validation on sub # 2017-06-14 11:39:39 -05:00
Jiri Danek 9ad8b71273 ARTEMIS-1212 add a jms.queue. workaround to HornetQProtocolManagerTest 2017-06-14 11:35:50 -05:00
Andy Taylor 30a6ac703e ARTEMIS-1224 - change the journal file size to nearest multiple
https://issues.apache.org/jira/browse/ARTEMIS-1224
2017-06-14 10:16:23 +01:00
Howard Gao f465996444 ARTEMIS-1227 Internal properties not removed from messages
In a cluster if a node is shut down (or crashed) when a
message is being routed to a remote binding, a internal
property may be added to the message and persisted. The
name of the property is like _AMQ_ROUTE_TOsf.my-cluster*.
if the node starts back, it will load and reroute this message
and if it goes to a local consumer, this property won't
get removed and goes to the client.

The fix is to remove this internal property before it
is sent to any client.
2017-06-12 13:01:12 -05:00
Erich Duda 30e8ca656c ARTEMIS-1208 Do not use reconnect-atempts=-1 in tests 2017-06-08 17:38:11 -04:00
Clebert Suconic 4e173cfa8e [ARTEMIS-1209] Just enhancing the OpenWire test with a Wait.waitFor() 2017-06-07 16:27:16 -04:00
Ingo Weiss 45321c65bd [ARTEMIS-1209] JMS OpenWire client cannot read notifications from activemq.notifications topic
Issue: https://issues.apache.org/jira/browse/ARTEMIS-1209
2017-06-07 16:26:33 -04:00
Clebert Suconic 545414c18b ARTEMIS-1206 SetClientID from Core ConnectionFactory is not unique 2017-06-07 15:03:59 -04:00
Michael Andre Pearce e8fa02bf80 ARTEMIS-1207: Align when setClientId can be called
Update ActiveMQConnection to change/alighn behaviour for addtional methods:
- getMetaData
- stop

Adding test to avoid regression.

This is aligning with qpid-jms and openwire clients
2017-06-07 10:18:15 -04:00
Timothy Bish a1fb897b43 ARTEMIS-821 Add support for scheduled message for STOMP
Adds headers AMQ_SCHEDULED_DELAY and AMQ_SCHEDULED_TIME to STOMP
protocol handling to allow for delayed and scheduled time of a
message.  The AMQ_SCHEDULED_DELAY brings forward the same option
from the 5.x broker and the AMQ_SCHEDULED_TIME option adds a fixed
time of delivery alternative to match that of AMQP and others.
2017-06-06 11:20:44 -04:00
Michael Andre Pearce 754e9db5fd ARTEMIS-1207: [Core JMS Client] Align order of when setClientId can be called with AcitveMQ5 and QPID
Update ActiveMQConnection to change behaviour

Add test to avoid regression.
2017-06-06 10:57:44 -04:00
Jiri Danek 09eef28a01 ARTEMIS-1193 upgrade byteman 2.2.0 -> 3.0.10
Version 3.x adds ability to instrument code with Java 8 features,
notably lambdas.
2017-06-06 10:20:13 -04:00
Michael Andre Pearce d9d9699732 ARTEMIS-1205: AMQP Shared Durable Subscriber incorrect behaviour.
Add test case, to prove the issue, and then obviously ensure it works, post fix.
Apply changes in logic of createQueueName to handle global better and fix the behaviour.
Create queues so names are same as behaviour with core client.
2017-06-05 22:40:54 +01:00
Guillaume Nodet 71fc3a8bb5 [ARTEMIS-1197] Add missing role to default OSGi configuration 2017-05-31 11:57:14 -04:00
Michael Andre Pearce c65ea783ea ARTEMIS-1189 - Fix checkstyle violations post checkstyle upgrade
After upgrade of checkstyle, resolve violations

remove checkstyle override added as temp measure at point of upgrade forced by sevntu
2017-05-30 13:40:00 -04:00
Ville Skyttä fe505b37b4 Spelling fixes 2017-05-30 10:32:41 +03:00
Clebert Suconic 28a60bcdf7 NO-JIRA: trivial test fix after sync changes 2017-05-25 17:16:31 -04:00
Justin Bertram 4a6dc4f7ba Fixing failing tests after sync changes 2017-05-25 10:53:42 -04:00
Michael Andre Pearce 373803a85d ARTEMIS-1179: Add Optional Client JMS Destination Cache
Add topic and queue cache maps in Session.
Add configuration to use cache or not with defaulting to false, which keeps existing behaviour as the default.
2017-05-24 18:45:16 -04:00
Ulf Lilleengen 4f1308d2f0 ARTEMIS-1173: Don't set routing type if null 2017-05-18 09:31:07 -04:00
Andy Taylor 22f4736c88 ARTEMIS-1169 - Implement Interceptors for the AMQP protocol
Add Outgoing call

https://issues.apache.org/jira/browse/ARTEMIS-1169
2017-05-18 08:40:43 +01:00
Christopher L. Shannon (cshannon) 48a2dd1f45 ARTEMIS-1172 - Update beforeDeliver and afterDeliver method arguments
Adding ServerConsumer as an argument to both the beforeDeliver and
afterDeliver methods inside ActiveMQServerPlugin and deprecated the old
methods
2017-05-17 20:38:47 -04:00
Andy Taylor d17ef14c90 ARTEMIS-1169 - Implement Interceptors for the AMQP protocol
https://issues.apache.org/jira/browse/ARTEMIS-1169
2017-05-17 14:07:23 -05:00
Michael Andre Pearce a4e19b432b ARTEMIS-1164: NameNotFoundException when using java.naming.provider.url to set url via jndi
Support setting PROVIDER_URL on initial context to create default connection factories.
2017-05-17 10:28:18 -05:00
Timothy Bish 1a621092f9 ARTEMIS-1167 Adds new broker AMQP idle timeout test
Test broker side handling of AMQP idle timeout
2017-05-16 14:35:36 -04:00
Timothy Bish 1463a51164 ARTEMIS-1166 Test client WS transport needs to handle continuations
Ensure that the test client WS transport handles continuation frames so
that partial binary payloads aren't dropped.
2017-05-16 11:10:11 -04:00
Michael Andre Pearce c6ac1d943c ARTEMIS-1164: NameNotFoundException when using java.naming.provider.url to set url via jndi
Support setting PROVIDER_URL on initial context to create default connection factories.
2017-05-15 15:20:53 -05:00
Clebert Suconic 502f9c544c ARTEMIS-1160 Fixing Checkstyle 2017-05-15 10:52:05 -04:00
Timothy Bish e872f1524a ARTEMIS-1160 AMQP test client should configure netty WS maxFrameSize
Need to configure the WS Handshaker in the test client's netty transport
with the same value given to the proton connection via setMaxFrameSize
so that incoming frames larger than the default 65535 over WS don't
trigger netty to fail the connection.
2017-05-12 14:48:23 -04:00
Clebert Suconic ac97d6f057 NO-JIRA: trivial test fixes on AMQP 2017-05-12 14:36:01 -04:00
Clebert Suconic dc26ac96b4 ARTEMIS-1156: moving our collections on its own package 2017-05-12 10:06:05 -04:00
Michael André Pearce c1d55aa84f ARTEMIS-1156: FIX: Long Autoboxing occurring on Hot Path
Building on ARTEMIS-905 JCtools ConcurrentMap replacement  first proposed but currently parked by @franz1981, replace the collections with primitive key concurrent collections to avoid auto boxing.

The goal of this is to reduce/remove autoboxing on the hot path.
We are just adding jctools to the broker (should not be in client dependencies)
Like wise targeting specific use case with specific implementation rather than a blanket replace all.

Using collections from Bookkeeper, reduces outside tlab allocation, on resizing compared to JCTools, which occurs frequently on testing.
2017-05-12 10:05:51 -04:00
Timothy Bish 4ad78c7fd0 ARTEMIS-1159 Fixes and Improvements to the AMQP test client.
Port fixes to the AMQP test client recently made in the 5.x version.
Fixes some thread safety issues in the Transport.  Ensures more 
timely shutdown of the Connection executor.  Uses a dynamic Proxy 
to generate Read-Only Proton wrappers instead of the hand crafted 
versions.  Adds additional logging for test data
2017-05-11 16:46:22 -04:00
Clebert Suconic 02dcfe0468 ARTEMIS-1158 exposing Netty.channelID properly 2017-05-10 21:50:19 -04:00
Clebert Suconic ce61d20f5a [maven-release-plugin] prepare for next development iteration 2017-05-08 15:20:12 -04:00
Clebert Suconic 64e8f015ee [maven-release-plugin] prepare release 2.1.0 2017-05-08 15:20:01 -04:00
Clebert Suconic 890e381371 NO-JIRA: bumping 2.2.0-SNAPSHOT release on extra-tests 2017-05-08 12:06:18 -04:00
Christopher L. Shannon (cshannon) 9fdba8292f ARTEMIS-898 - Adding support for XML configuration of Broker Plugins
Broker plugins can now be added to the broker through XML config.
2017-05-08 11:59:41 -04:00
Francesco Nigro 21c9ed85cf ARTEMIS-1151 Adapting TimedBuffer and NIO Buffer Pooling
- NIO/ASYNCIO new TimedBuffer with adapting batch window heuristic
- NIO/ASYNCIO improved TimedBuffer write monitoring with
  lightweight concurrent performance counters
- NIO/ASYNCIO journal/paging operations benefit from less buffer copy
- NIO/ASYNCIO any buffer copy is always performed with raw batch copy
  using SIMD instrinsics (System::arrayCopy) or memcpy under the hood
- NIO improved clear buffers using SIMD instrinsics (Arrays::fill) and/or memset
- NIO journal operation perform by default TLABs allocation pooling (off heap)
  retaining only the last max sized buffer
- NIO improved file copy operations using zero-copy FileChannel::transfertTo
- NIO improved zeroing using pooled single OS page buffer to clean the file
  + pwrite (on Linux)
- NIO deterministic release of unpooled direct buffers to avoid OOM errors
  due to slow GC
- Exposed OS PAGE SIZE value using Env class
2017-05-08 11:55:28 -04:00
Clebert Suconic 36c9659279 [maven-release-plugin] prepare for next development iteration 2017-05-05 22:11:09 -04:00
Clebert Suconic 7b5082639f [maven-release-plugin] prepare release 2.1.0 2017-05-05 22:10:58 -04:00
Timothy Bish 0711b35e3c NO-JIRA Fix a test that is not actually testing anything right now
The test is improperly configured and the try / catch logic swallows any
errors making it seem as if the test is passing.
2017-05-05 16:05:04 -04:00
Clebert Suconic 4f22a56066 NO-JIRA Trivial test fix 2017-05-05 14:45:21 -04:00
Clebert Suconic 800976ec76 NO-JIRA: Trivial test fix on StompPluginTest 2017-05-04 15:58:15 -04:00
Bennet Schulz f82623a20c ARTEMIS-904 Remove cyclic dependencies from artemis-cli
move classes and methods to their correct location to avoid cyclic dependencies between packages and classes.

ARTEMIS-904 Remove cyclic dependencies from artemis-cli

move classes and methods to their correct location to avoid cyclic dependencies between packages and classes.

ARTEMIS-904 Remove cyclic dependencies from artemis-cli

move classes and methods to their correct location to avoid cyclic dependencies between packages and classes.
2017-05-04 10:25:06 -05:00
Bernd Gutjahr 7aa50546b3 ARTEMIS-1112: Fixed occasionally failing test
There was a typo in this test that could cause it to fail.
2017-05-04 11:18:56 +02:00
Bernd Gutjahr 6017e305d9 ARTEMIS-1112: Added wait-for-activation option to shared-store-master config
Added a wait-for-activation option to shared-store master HA policies.
This option is enabled by default to ensure unchanged server startup behavior.

If this option is enabled, ActiveMQServer.start() with a shared-store master server will not return
before the server has been activated.
If this options is disabled, start() will return after a background activation thread has been started.
The caller can use waitForActivation() to wait until server is activated, or just check the current activation status.
2017-05-03 16:40:15 -04:00
Timothy Bish cf3e2bf7f0 ARTEMIS-267 Add test for handling of AMQP header and durability
Adds a test that validates that messages that are either lacking a
header or are set to be non-durable are not persisted and are not
recovered on broker restart.
2017-05-03 16:33:12 -04:00
Clebert Suconic 0146109d6a ARTEMIS-1140: Trivial test fix 2017-05-03 16:17:32 -04:00
Christopher L. Shannon (cshannon) 1e1ede84c0 ARTEMIS-898 - Adding Plugin Support
Adding a new ActievMQServerPlugin interface to support adding custom
behavior to the broker at certain events such as connection or session
creation.

https://issues.apache.org/jira/browse/ARTEMIS-898
2017-05-03 11:21:32 -04:00
Clebert Suconic 303d97c76d NO-JIRA: Trivial test fixes 2017-05-03 10:32:22 -04:00
Clebert Suconic 174b238b28 NO-JIRA: Trivial test fix 2017-05-03 09:33:12 -04:00
Timothy Bish ba7b8aff59 ARTEMIS-1139 Add a few tests using Qpid JMS of AMQP over WS
Adds a couple tests using Qpid JMS to validate that AMQP over
WS is working.
2017-05-02 21:18:07 -04:00
Clebert Suconic 757161f3d2 NO-JIRA: Trivial test fix 2017-05-02 21:16:10 -04:00
Justin Bertram 578c0fabb2 ARTEMIS-1137 handle empty routing type on restart 2017-05-02 10:06:42 -05:00
Zoran Regvart 6db0c50272
Removes deprecated use and raw types
This cleans up the Netty implementation by replacing deprecated usage
and adds type parameters to raw types used.
2017-05-02 11:00:56 +02:00
Clebert Suconic 6df8c3a28d Revert " ARTEMIS-1112: don't block live activation if another live server is running"
This reverts commit 2f175b8d4e.
2017-05-01 09:50:45 -04:00
Timothy Bish 90efd86133 ARTEMIS-547 tests for auth on attach 2017-04-28 13:10:10 -05:00
Timothy Bish 19a640db3a ARTEMIS-1132 return security errors instead of generic failed
When creating some AMQP resources (senders, receivers, etc) the broker
can return an error of 'failed' instead of the security error that is
expected in these cases.  In the case of a receiver being created and
a security error happening the broker fails to send back a response
causing the client to hang waiting for an attach response.
2017-04-28 13:08:10 -05:00
Justin Bertram 444d7e392e ARTEMIS-1102 fix checkstyle 2017-04-28 10:42:55 -05:00
Timothy Bish bad6acb58f ARTEMIS-1123 Major AMQP Test Suite refactoring
Refactor the AMQP test suite grouping tests into more logical unit
tests and adding additional coverage in many areas.  Adds some negative
validation tests to cover features that were only partially tested.

Brings in tests from ActiveMQ 5.x that were not yet ported to Artemis
to increase coverage amd test scenarios previously seen to have issues
in the 5.x broker.

Improve tests that were failing sporadically due to not waiting for
broker stats to be updated after async calls were made.
2017-04-28 10:16:21 +01:00
Justin Bertram 7e0fedf52e ARTEMIS-590 connector option to use default SSL context 2017-04-28 10:14:09 +01:00
Justin Bertram 004eda42a2 ARTEMIS-1102 cert-based auth impl for OpenWire 2017-04-28 10:11:25 +01:00
Justin Bertram 82b6a9678d ARTEMIS-1113 STOMP + management-address fix 2017-04-28 10:10:13 +01:00
Bernd Gutjahr 2f175b8d4e ARTEMIS-1112: don't block live activation if another live server is running
Instead of going directly into backup mode within the shared-store
live activation, we just change the HA-policy to slave and return
to the caller - ActiveMQServerImpl.internalStart().
The caller will then handle the backup activation as usual
in a separate thread, such that EmbeddedJMS.start() can return.

Also added a related integration test.
2017-04-26 15:23:24 -05:00
Martyn Taylor 1c84bd39c4 ARTEMIS-826 Fix MQTT protocol detection 2017-04-25 13:53:21 +01:00
Howard Gao 694a5092b6 ARTEMIS-1128 QueueControlImpl.sendMessage() fixes
sendMessage() may throw ActiveMQException that causes CNFE
at the management client. Also it should check if headers
in the message is null (to prevent NPE).
2017-04-24 13:52:51 -05:00
Clebert Suconic 7facd28a18 NO-JIRA: Trivial test fix 2017-04-23 22:12:23 -04:00
Clebert Suconic 23b3d2182c ARTEMIS-1093 Moving FQQN methods into CompositeAddress 2017-04-23 16:01:20 -04:00
Howard Gao f344c1ebaf ARTEMIS-1093 Full qualified queue name support
Broker should support full qualified queue names (FQQN)
as well as bare queue names. This means when clients access
to a queue they have two equivalent ways to do so. One way
is by queue names and the other is by FQQN (i.e. address::qname)
names. Currently only receiving is supported.
2017-04-23 16:01:20 -04:00
Timothy Bish 9eed28e0aa ARTEMIS-1127 Match remote Sender and Receiver settle modes
On link attach we currently default out SenderSettleMode to MIXED which
while legal doesn't truly reflect what the client asked for. We instead
now update the link to reflect the mode requested by the client

Also add some tests to ensure that we always return the
ReceiverSettleMode as FIRST since we don't support SECOND.
2017-04-21 15:00:09 -04:00
Clebert Suconic bfe2bdd7b2 ARTEMIS-1115 Traces and tests on JDBC Persistence 2017-04-19 00:50:58 -04:00
Martyn Taylor 7b68b0a49a ARTEMIS-1115 Call CriticalIOListener on JDBC Error 2017-04-19 00:50:58 -04:00
Timothy Bish 0260a304b4 ARTEMIS-1123 Clean up and add new AMQP tests
Adds some new AMQP protocol handling tests brought forward from
ActiveMQ 5.x as well as cleaning up some of th existing tests
code to make adding some other tests easier.
2017-04-19 00:50:13 -04:00
Clebert Suconic 04535ee762 NO-JIRA Fixing AddressControlTest 2017-04-18 19:09:01 -04:00
Clebert Suconic c82ac631b8 NO-JIRA fixing NettySecurityClientTest 2017-04-18 15:14:21 -04:00
Clebert Suconic 1a39772489 ARTEMIS-1121 Improving expiry scanner
https://issues.apache.org/jira/browse/ARTEMIS-1121
2017-04-18 11:49:25 -04:00
Clebert Suconic ddacda5062 ARTEMIS-1114 Missing records after compacting
This is fixing an issue introduced on 4b47461f03 (ARTEMIS-822)
The Transactions were being looked up without the readLock and some of the controls for Read and Write lock
were broken after this.
2017-04-14 01:13:46 -04:00
Clebert Suconic 9c026cac28 NO-JIRA Fixing testReceiveWildcardTopicMatchDoubleWildcard
removing JmsTopicWildcardSendReceiveTest::testReceiveWildcardTopicMatchDoubleWildcard

Accordingly to bisect, this test was broken at 21b64b3e4f

and it contradicts the commit done at 21b64b3e4f

So, this is being removed
2017-04-13 19:18:37 -04:00
Francesco Nigro aa9ac4a914 ARTEMIS-1084 Throw RunTime on bad Oracle table size 2017-04-13 19:17:10 -04:00
Clebert Suconic f609884186 Revert "ARTEMIS-1093 Full qualified queue name support"
Testsuite won't complete with this commit.
Reerting it for further evaluation.

This reverts commit a9a3c47808.
2017-04-12 16:53:40 -04:00
Martyn Taylor 930df5b663 ARTEMIS-1111 Avoid deadlock on AMQP delivery during close 2017-04-12 12:35:17 -04:00
Clebert Suconic 3ff9057ac4 NO-JIRA Trivial test fix on ProtonTest::testAddressControlSendMessageWithText 2017-04-12 11:24:16 -04:00
Bernd Gutjahr 557f02ba4d ARTEMIS-1108: Removed AIOFileLockManager
AIOFileLockManager doesn't work on NFS-mounted share store directories.
Since the GFS2 bug https://bugzilla.redhat.com/show_bug.cgi?id=678585
has been fixed end of 2011, the class AIOFileLockManager is no longer needed and I have removed it.
2017-04-12 10:45:26 -04:00
Howard Gao a9a3c47808 ARTEMIS-1093 Full qualified queue name support
Broker should support full qualified queue names (FQQN)
as well as bare queue names. This means when clients access
to a queue they have two equivalent ways to do so. One way
is by queue names and the other is by FQQN (i.e. address::qname)
names. Currently only receiving is supported.
2017-04-12 09:59:28 +01:00
Clebert Suconic 5d407a88b3 NO-JIRA: Fixing ProtonTest::testAddressControlSendMessage 2017-04-11 19:08:02 -04:00
Andy Taylor fb3de112e4 ARTEMIS-1107 - fix and Test AddressControl.sendMessage()
https://issues.apache.org/jira/browse/ARTEMIS-1107
2017-04-11 08:29:43 +01:00
Justin Bertram 67a06588f4 ARTEMIS-1107 test AddressControl.sendMessage
Add tests for this management operation with both core and AMQP encoded
messages. Also fix a few problems with the implementation like not
checking the passed-in headers for null and not counting messages
properly.
2017-04-11 07:57:57 +01:00
Timothy Bish 3b45261f19 ARTEMIS-1101 Read the correct values for timestamp and user-id
Fix the getUserID and getTimestamp methods in AMQPMessage to read and
return the correct values.  Adds some tests to cover these cases and
cleans up some others.
2017-04-07 16:12:58 -04:00
Clebert Suconic 53a801043b NO-JIRA test fix (PotentialOOMELoggingTest) 2017-04-07 09:11:37 -05:00
Clebert Suconic 01362bbb1d ARTEMIS-1100 Store Header on AMQP message 2017-04-07 09:11:11 -05:00
Clebert Suconic 029132c1f4 NO-JIRA: Cleanup on Smoke test 2017-04-06 19:56:30 -05:00
Timothy Bish 45c59f05dc ARTEMIS-1097 Respect the message priority value in the AMQP message
Ensure that the header value for priority is read and returned in a form
that is scaled such that it won't cause an IndexOutOfBoundsException
from the QueueImpl priority array.  Adds some additional testing for
message priority support.
2017-04-06 16:18:53 -04:00
Clebert Suconic c767e93bf5 ARTEMIS-1089 Simplifying smoke tests 2017-04-05 15:55:09 -04:00
Clebert Suconic dd27fb587f ARTEMIS-1089 Moving smoke tests under ./tests/smoke-tests
This is moving the smoke tests creates as part of the relication tests.

They are also now based on junit tests.

And to support starting servers I am exposing basedir to unit tests in general.
2017-04-05 13:06:55 +01:00
Justin Bertram 073a280629 ARTEMIS-1092 Validated user + AMQP fix
When populate-validated-user = true AMQP messages can cause exceptions.
This feature isn't particularly applicable to AMQP so this commit
eliminates the exception and leaves the AMQP messages untouched
even if populate-validated-user = true. In other words,
populate-validated-user + AMQP is not supported.
2017-04-04 14:46:22 -05:00
Andy Taylor 5529bf150a ARTEMIS-1090 - Message not expired if absolute expiry time is 0 and ttl is set
https://issues.apache.org/jira/browse/ARTEMIS-1090
2017-04-03 14:28:02 +01:00
Clebert Suconic afd1835a8f NO-JIRA: Simple Test fix on DeadLetterAdressTest 2017-04-01 15:49:42 -04:00
Clebert Suconic 9c472013e2 NO-JIRA: Removing Flow Control tests
These tests are duplicated on the regular testsuite and they were fixed there
2017-04-01 11:17:08 -04:00
Clebert Suconic 5c6c42b940 NO-JIRA: minor test fix 2017-03-31 22:50:01 -04:00
Clebert Suconic 9956f951a6 NO-JIRA: Avoiding a test failure on slow Jenkins
JmsNettyNioStressTest is using Persistent messages
depending on the hardware used this may eventually fail.
2017-03-31 19:28:13 -04:00
Clebert Suconic 1ca1b4baf9 ARTEMIS-1042 Commenting out test 2017-03-30 22:23:20 -04:00
Clebert Suconic d779afe874 NO-JIRA: Fixing test hunging on OpenWire 2017-03-30 21:56:46 -04:00
Justin Bertram 6cf9a98c49 ARTEMIS-1065 fix broken test 2017-03-30 21:20:37 -04:00
Clebert Suconic aafb2087fa Revert "NO-JIRA upgrade maven-surefire-plugin to 2.19.1"
This reverts commit 63054a0706.
2017-03-29 21:43:06 -04:00
Justin Bertram 6ddcda55db NO-JIRA server control test update 2017-03-29 16:00:26 -04:00
Martyn Taylor 42bf845edb ARTEMIS-1084 Throw RunTime on bad Oracle table size 2017-03-29 14:59:12 +01:00
Jiri Danek 63054a0706 NO-JIRA upgrade maven-surefire-plugin to 2.19.1 2017-03-29 09:27:27 -04:00
Howard Gao 82c720bdfb ARTEMIS-1071 Invalid Type exception handling improvements
If broker fails to decode any packets from buffer, it should
treat it as a critical bug and disconnect immediately.
Currently broker only logs an error message.
2017-03-29 09:19:52 -04:00
Justin Bertram ce3adf6fa8 ARTEMIS-1065 get queue names by routing type 2017-03-29 09:18:16 -04:00
Clebert Suconic 1f4473e8d7 ARTEMIS-1081 Implementing AMQP UndeliverableHere 2017-03-28 20:32:28 -05:00
Clebert Suconic 746220e11e ARTEMIS-1080 Implementing AMQP::reject 2017-03-28 20:32:28 -05:00
Clebert Suconic 13a272b37b ARTEMIS-1056 fixing tests
When I added flow control, some tests that were using reflection started to fail.
Also as a precaution I'm using <= on the flow control low credit check
2017-03-28 20:32:28 -05:00
Justin Bertram b7e11f92b6 ARTEMIS-1064 AddressControl routingType fix 2017-03-28 15:30:52 -05:00
Andy Taylor ec7e6d7ea7 ARTEMIS-1075 - Add Routing Type to QueueControl management API
https://issues.apache.org/jira/browse/ARTEMIS-1075
2017-03-28 10:40:52 +01:00
Clebert Suconic 07f7916ed3 NO-JIRA: Cleanup tests 2017-03-24 18:32:38 -04:00
Martyn Taylor a9c3e437d8 ARTEMIS-1068 Add Routing Exclusivity test for JMS AMQP 2017-03-24 17:40:36 -04:00
Justin Bertram 427039ef38 ARTEMIS-1068 routingType + AMQP fixes 2017-03-24 15:15:10 -05:00
Clebert Suconic 2c9b02806d ARTEMIS-1056 Removing PartialPooledByteBufAllocator 2017-03-23 18:16:48 -05:00
Clebert Suconic 1c88c06abb ARTEMIS-1059 option to monitor Paging counters
Adding System.property artemis.debug.paging.interval (in seconds)
to debug paging counters.
2017-03-23 09:35:40 -05:00
Justin Bertram bf4d7767af NO-JIRA fix race in cluster test 2017-03-22 23:32:37 -04:00
Martyn Taylor e33b7af5ac ARTEMIS-1061 Ack MQTT PubRel management messages 2017-03-22 23:26:32 -04:00
Martyn Taylor 10c9d797d1 NO-JIRA Bump extra tests version 2017-03-22 11:45:47 +00:00
Clebert Suconic 65ac7f700b ARTEMIS-1052 Proper Expiry over AMQP 2017-03-20 18:33:31 -04:00
Jiri Danek 7ac27df7a0 ARTEMIS-1052 adding a test for expiry and AMQP
This closes #1106
2017-03-20 18:05:45 -04:00
Clebert Suconic 9385ce4872 NO-JIRA: Adding timeouts on failover tests 2017-03-20 18:04:31 -04:00
Clebert Suconic a40d25c06a ARTEMIS-1042 Fixing AMQPFailoverTest 2017-03-20 18:04:31 -04:00
Timothy Bish a0948928c3 ARTEMIS-60 Validate AMQP sender applied TransactionState
Update the AMQP test client to allow for better inspection of the
delivery updates that happen during normal use.  Use those modification
to check that when the broker's sender accepts and settles a non-settled
disposition it adds a proper TransactionState disposition with the
correct outcome and txn-id in that state.
2017-03-20 16:46:18 -04:00
Timothy Bish 29796151c3 ARTEMIS-59 Accept transacted message using AMQP TransactionState
When a message is sent to the broker with a TransactionState indicating
that the message should be included in a transaction the disposition from
the broker indicating acceptance of the message should be done using a
TransactionState value that contained the TX ID and the Accepted
disposition.
2017-03-20 12:42:56 -04:00
Clebert Suconic 4b50d6c431 ARTEMIS-1048 Fixing Unsigned types and Selectors 2017-03-17 18:05:21 -04:00
Clebert Suconic 1ef4dcf7d9 ARTEMIS-1046 Fixing TX eventually stalling with AMQP
I have also reviewed the model in which we used transactions
2017-03-17 16:50:56 -04:00
Timothy Bish 780f9bdc34 ARTEMIS-57 Add tests to ensure To field is not cleared
Add some tests for various cases of send / recv to check that the To
field on the message is left intact.
2017-03-17 15:09:55 -04:00
Andy Taylor c6f73b0c0a ARTEMIS-1042 - support amqp failover list
https://issues.apache.org/jira/browse/ARTEMIS-1042
2017-03-17 15:08:58 -04:00
Andy Taylor 8ab7588910 ARTEMIS-1023 - fixx Openwire auto creation of queues
https://issues.apache.org/jira/browse/ARTEMIS-1023
2017-03-17 12:28:10 +00:00
Clebert Suconic 8a84b6a1a7 ARTEMIS-1041 Using less time on timeouts 2017-03-15 19:25:08 -04:00
Timothy Bish 938c4ec558 ARTEMIS-1041 Apply absolute expiration time to message
Use the Absolute Expiration Time from the message properties and
override any value set in TTL if anything set there.
2017-03-15 19:25:08 -04:00
Clebert Suconic ae34b01065 ARTEMIS-1038 Make usage of Delivery.available and upgrade proton 2017-03-15 14:37:41 -04:00
Timothy Bish 7282b6890a ARTEMIS-1039 Transaction Coordinator credit refill
The coordinator needs to refill credit on the receiver once it has been
exhausted, otherwise the remote cannot send additional declare or
discharge commands to the broker.
2017-03-14 17:13:05 -04:00
Clebert Suconic 8cf3119767 NO-JIRA: Changing TopicControlClusterTest to expression 2017-03-14 09:42:49 -04:00
Justin Bertram bf5ca678ee NO-JIRA fix race in TopicControlClusterTest
Test didn't account for "remote" queue bindings from other cluster
member which caused a race condition.
2017-03-13 12:46:20 -05:00
Andy Taylor b5b6e4bea6 ARTEMIS-1034 - non-durable subscription queue not ended on link close
https://issues.apache.org/jira/browse/ARTEMIS-1034
2017-03-13 10:33:13 -05:00
Martyn Taylor c40823e5ec [maven-release-plugin] prepare for next development iteration 2017-03-10 14:54:33 +00:00
Martyn Taylor 70e319d6e3 [maven-release-plugin] prepare release 2.0.0 2017-03-10 14:52:26 +00:00
Martyn Taylor f1a5f1caf9 Revert "[maven-release-plugin] prepare release 2.0.0"
This reverts commit 057047499b.
2017-03-10 14:45:29 +00:00
Martyn Taylor 1964abe567 Revert "[maven-release-plugin] prepare for next development iteration"
This reverts commit 9a52f51c9f.
2017-03-10 14:44:58 +00:00
Justin Bertram e9ad1c81a5 Revert "ARTEMIS-1011 Small adjustment on test"
Revert "ARTEMIS-1011 adjust slow-consumer detection logic"

This reverts commit 9818206bd3.
This reverts commit 19ebbfb5f0.
2017-03-10 09:26:41 -05:00
Martyn Taylor 9a52f51c9f [maven-release-plugin] prepare for next development iteration 2017-03-10 11:36:36 +00:00
Martyn Taylor 057047499b [maven-release-plugin] prepare release 2.0.0 2017-03-10 11:25:47 +00:00
Martyn Taylor b33fea0d7f ARTEMIS-990 Dont require Perms on MQTT mngment Q 2017-03-10 11:06:05 +00:00
Clebert Suconic 6a323eb832 ARTEMIS-1029 speeding up JmsNettyNioStressTest 2017-03-09 22:12:59 -05:00
Clebert Suconic b73828a0f4 ARTEMIS-1029 Fixing Paging issues
- Browser out of order
- PageStore not being cleared
2017-03-09 22:12:58 -05:00
Clebert Suconic 5534d00fab ARTEMIS-1029 Fixing PagingOrderTest 2017-03-09 22:12:58 -05:00
Clebert Suconic 38305d2751 ARTEMIS-1009 Fixing ActiveMQServerControlTest 2017-03-09 22:12:58 -05:00
Clebert Suconic ed1d4c0948 ARTEMIS-1009 Fixing Management test 2017-03-09 19:14:59 -05:00
Francesco Nigro 59de5ed8a4 ARTEMIS-827 AMQP test client validator classes not thread safe 2017-03-09 17:27:50 -05:00
Clebert Suconic 9818206bd3 ARTEMIS-1011 Small adjustment on test 2017-03-09 17:21:16 -05:00
Justin Bertram 19ebbfb5f0 ARTEMIS-1011 adjust slow-consumer detection logic
Adjust slow-consumer detection logic to use the number of messages in
the queue and not just the number of messages added since the last
check. This means the getRate() method now returns the rate of messages
which it *could* have dispatched since the last check rather than the
rate at which it received messages. This is a more reliable metric to
ensure the slow-consumer detection logic doesn't flag a consumer as
slow unfairly. Although the reliability will come at a performance cost
since getMessageCount() must lock the queue.
2017-03-09 16:59:22 -05:00
Justin Bertram a052e2ca9a ARTEMIS-1026 don't route when purgeOnNoConsumers and consumers=0 2017-03-09 14:39:33 -05:00
Clebert Suconic a41a1930ef ARTEMIS-1009 AMQP shouldn't use application properties
As part of my refactoring on AMQP, the broker shouldn't rely on Application properties
for any broker semantic changes on delivery.

I am removing any access to those now, so we can properly deal with this post 2.0.0.
2017-03-09 12:27:39 -05:00
Clebert Suconic c369084381 ARTEMIS-1009 Tight up on AMQP
avoiding application properties even further
fixing nolocal
2017-03-09 08:12:42 -06:00
Clebert Suconic 8aa55a655d ARTEMIS-1021 Expanding test towards other protocol types 2017-03-09 08:12:42 -06:00
Dejan Bosanac 489eb6971f NO-JIRA ArtemisFeatureTest looks good 2017-03-09 09:02:21 -05:00
Howard Gao 6e02caa53e ARTEMIS-1024 Management operation causes ClassNotFoundException
Artemis expose createQueue() method to management console like Jon.
If the queue to be created already exists it throws an ActiveMQException
back to the console, which will get a ClassNotFoundException when
deserializing the exception.
The same issue goes also with AddressControl.sendMessage() method.

To fix that it should throw a common java exception like IllegalStateException.
2017-03-09 21:22:18 +08:00
Clebert Suconic 94b47e370b ARTEMIS-1009 Fixing compatibility
there was an issue with running older clients
Found by this testsuite:

https://github.com/clebertsuconic/messaging-versioning

this will fix further compatibility issues
2017-03-06 22:09:41 -05:00
Martyn Taylor 456e2a65e2 ARTEMIS-1012 Fix AMQP Transaction Retirement 2017-03-06 11:55:29 -05:00
Martyn Taylor 543dd4c9e3 ARTEMIS-1013 Queue deliver after AMQP msg release 2017-03-06 11:55:29 -05:00
Clebert Suconic fe0ca4d84f ARTEMIS-1009 Pure Message Encoding.
with this we could send and receive message in their raw format,
without requiring conversions to Core.

- MessageImpl and ServerMessage are removed as part of this
- AMQPMessage and CoreMessage will have the specialized message format for each protocol
- The protocol manager is now responsible to send the message
- The message will provide an encoder for journal and paging
2017-03-05 23:08:53 -05:00
Clebert Suconic c1fa5d07c7 ARTEMIS-1019 Removing Aeroegear
Aeroegear has other ways to use Artemis
2017-03-05 22:57:49 -05:00
Clebert Suconic c0fe187666 ARTEMIS-1019 removing vertx integration 2017-03-05 22:57:07 -05:00
Clebert Suconic 61e10fe65a NO-JIRA Passing the logger manager on spawned VMs through the testsuite 2017-03-02 10:04:28 -05:00
Martyn Taylor dc40f60e6b ARTEMIS-1002 Use default PooledBufferAllocator in ActiveMQBuffers 2017-02-27 14:23:29 -05:00
Howard Gao 216f31765f ARTEMIS-1000 Openwire exception response no correlation-id
When openwire sends back an exception response, it doesn't set
the correct correlation id. This causes the client to miss the
response and the exception won't get caught.

To fix it we need to add the correlation id before sending.
2017-02-26 22:25:10 -05:00
Erich Duda 0c64cbfa4e ARTEMIS-995 Bulk of test fixes
This commit fixes tests:
 ActiveMQScheduledComponentTest.testAccumulationOwnPool
 PendingDeliveriesTest.testWithtReconnect
 ReceiveTest.testReceiveImmediate
 ActiveMQProducerResourceTest.testSendString
 EmbeddedActiveMQResourceTest.testSendString
 MultipleEmbeddedActiveMQResourcesTest.testMultipleServers
 MultipleEmbeddedJMSResourcesTest.testMultipleServers
 ActiveMQDynamicProducerResourceWithoutAddressTest.testSendString
 ActiveMQDynamicProducerResourceWithoutAddressExceptionTest.testSendBytesToDefaultAddress
 ActiveMQDynamicProducerResourceTest.testSendString
 ActiveMQServerControlTest.testTotalMessageCount
 EmbeddedActiveMQResourceCustomConfigurationTest.testCustomConfiguration
 EmbeddedJMSResourceMultipleFileConfigurationTest.testConfiguration
 EmbeddedJMSResourceQueueTest.testPushObjectMessage
 EmbeddedJMSResourceSingleFileConfigurationTest.testConfiguration
 EmbeddedActiveMQResourceFileConfigurationTest.testConfiguredQueue
 EmbeddedJMSResourceTopicTest.testPushObjectMessage
 LargeMessageFailoverTest.testTimeoutOnFailoverTransactionCommit
2017-02-24 15:17:00 +01:00
Justin Bertram 01465035c0 ARTEMIS-970 handle indeterminate JMS destination 2017-02-23 12:55:27 -05:00
Justin Bertram 0b829558b3 ARTEMIS-989 JMS2 context support custom session modes 2017-02-23 11:39:23 -05:00
Howard Gao 2fabd059d8 ARTEMIS-981 OpenWire can't receive empty ObjectMessage
When sending an empty ObjectMessage, broker doesn't
write a 'length' field to the message buffer. In delivery
the broker tries to read the length from the buffer, which
causes "IndexOutOfBoundsException".

To fix it, we need to check if the buffer is empty or not,
and only read it if the buffer is not empty.
2017-02-22 12:59:52 +08:00
Howard Gao b84a7f3e25 ARTEMIS-980 Openwire can't send message to temp destination
When a producer sends a messages to a temp destination created from
another connection, it fails. The reason behind it is that the
producer's connection didn't receive the advisory message (notification)
from broker about this temp destination, and it will throw an exception
if it doesn't know this temp destination.

The fix is send the advisory to the client so that it knows this destination.
2017-02-21 14:46:47 +08:00
Jiri Danek a7a0535afa NO-JIRA Fixing typos in log messages, test names and comments
Related to ARTEMIS-387 (fowardingAddress)
2017-02-20 20:54:45 -05:00
Andy Taylor a243e0559f ARTEMIS-977 - record id of address not set on journal reload
https://issues.apache.org/jira/browse/ARTEMIS-977
2017-02-20 09:17:45 -05:00
Howard Gao e7a4d42a64 ARTEMIS-979 OpenWire "no-Local" consumer not working
When creating a 'no-local' openwire consumer, it doesn't work,
meaning it can still receive messages from the same connection.
The fix is similar to what Artemis client does, which is adding
a 'filter' to the consumer/subscription.
The difference is that with OpenWire we have to do it on the
broker side.
2017-02-20 08:17:43 -05:00
Martyn Taylor 5a235d98b6 ARTEMIS-974 ensure will messages are retained 2017-02-16 18:22:10 +00:00
Dejan Bosanac 21b64b3e4f https://issues.apache.org/jira/browse/ARTEMIS-815 - support wildcard address configuration in mqtt layer
https://issues.apache.org/jira/browse/ARTEMIS-815 - support wildcard address configuration in mqtt layer - remove old swap method

https://issues.apache.org/jira/browse/ARTEMIS-815 - added tests for mqtt-openwire integration and fixed openwire layer

https://issues.apache.org/jira/browse/ARTEMIS-815 - remove unused imports
2017-02-16 17:37:50 +00:00
Clebert Suconic f38d5c7dbc ARTEMIS-969 Unecessary buffer expansion on message delivery 2017-02-15 13:49:00 -05:00
Clebert Suconic 3f6eacf5d5 NO-JIRA: using proper UUIDGenerator on a test 2017-02-15 10:43:58 -05:00
Martyn Taylor 59773c2849 ARTEMIS-960 Do not encode Will messages 2017-02-14 11:26:54 -06:00
Justin Bertram ff3e75d148 NO-JIRA move RoutingType to different package 2017-02-13 09:50:41 -06:00
Andy Taylor 318778954d ENTMQBR-522 - dont ack on separately settled deliveries
https://issues.jboss.org/browse/ENTMQBR-522
2017-02-10 09:50:51 -05:00
Martyn Taylor b2e250d425 ARTEMIS-952 Remove MQTT Queues on Clean Session 2017-02-09 10:43:03 +00:00
Justin Bertram 2bda3b2b4f ARTEMIS-953 Refactor JMX ObjectNames 2017-02-08 15:00:20 -06:00
Howard Gao 1a3fdd0916 ARTEMIS-949 Prevent Openwire from closing consumer twice 2017-02-08 15:57:43 +08:00
Andy Taylor f268c101af ARTEMIS-944 - Broker can't convert AMQP python message to Openwire format
https://issues.apache.org/jira/browse/ARTEMIS-944
2017-02-07 14:02:20 +00:00
Andy Taylor d937e8a8e1 ARTEMIS-945 - fix test and queue delete
https://issues.apache.org/jira/browse/ARTEMIS-945
2017-02-07 14:01:15 +00:00
Andy Taylor 43a9276484 ARTEMIS-866 - replication improvements
add functionality to allow live to vote for quorum on failure

Also allow the quorum size to be configurable.

https://issues.apache.org/jira/browse/ARTEMIS-866
2017-02-07 13:47:03 +00:00
Timothy Bish b9bf5d54f2 ARTEMIS-794 Add tests for handling of various outcomes for deliveries
Adds tests for handling of Rejected, Released and Modified outcomes for
a delivery sent to a receiver.  Tests show that for the Modified outcome
the broker is redelivering the message to the same receiver when the
undeliverable here value is set which violates the AMQP 1.0 specified
handling of that field.  Also for Rejected outcome the broker should
be sending the rejected message to the DLQ as Rejected is supposed to
be a terminal outcome.

Small fix included to not adjust the delivery count if the Modified
outcome does not indicate that the delivery failed.
2017-02-07 13:45:11 +00:00
Justin Bertram 15d693dd4e ARTEMIS-943 update/doc XML import/export 2017-02-06 15:09:55 -06:00
Martyn Taylor 3900cb0ec7 ARTEMIS-917 Only return body of retained message after reboot 2017-02-06 13:33:26 -06:00
Clebert Suconic c039aae37f ARTEMIS-906 Adding Paging tests for mapped journal 2017-02-03 09:04:57 -05:00
Francesco Nigro aacddfda61 ARTEMIS-906 Memory Mapped JournalType 2017-02-03 09:04:57 -05:00
Clebert Suconic ce035a8084 ARTEMIS-937 Implementing proper alignment and adding perf-journal tool to validate the journal syncs 2017-02-03 09:04:56 -05:00
Justin Bertram 1752814197 ARTEMIS-922 implement purge semantics 2017-01-31 08:37:05 -06:00
Clebert Suconic 35415510df NO-JIRA: Fixing hanging testsuite 2017-01-31 09:11:50 -05:00
Clebert Suconic b4b8c583b5 NO-JIRA Logging integration-tests/DEBUG is being too verbose on the testsuite 2017-01-30 22:26:48 -05:00
Clebert Suconic 57945d97e9 NO-JIRA: fixing a test 2017-01-30 16:08:38 -05:00
Clebert Suconic f79b21e866 ARTEMIS-934 Stomp Heart beat not being stopped in some cases 2017-01-25 12:17:47 -05:00
Justin Bertram a138a27adb NO-JIRA de-duplicate class 2017-01-20 12:07:14 -06:00
Clebert Suconic 9fb28e5651 NO-JIRA: just adding a test to avoid future issues 2017-01-19 14:51:15 -05:00
Justin Bertram d891fa5f83 ARTEMIS-873 update broker configs w/new notation 2017-01-19 11:16:06 -06:00
Will Reichert 3347a4fd27 ARTEMIS-928 Changing Netty and InVM to copy buffers, and retain them on the Netty Polls. 2017-01-18 16:59:32 -05:00
Clebert Suconic b4cbd36af4 ARTEMIS-560 Small improvements on JDBC tests for paging + adding a logger 2017-01-17 14:58:53 -05:00
Martyn Taylor 118c272c77 ARTEMIS-560 Add Support For JDBC Paging 2017-01-17 14:58:53 -05:00
Justin Bertram 8cf94623a4 ARTEMIS-922 Rename deleteOnNoConsumers throughout
The name "deleteOnNoConsumers" isn't a good match for the semantics underneath.
The name "purgeOnNoConsumers" (and variants) is a better fit.
2017-01-17 11:40:56 -06:00
Justin Bertram 0d1fa83181 ARTEMIS-922 Addressing-related API clean-up 2017-01-16 14:40:42 -05:00
Clebert Suconic 599aaa5345 ARTEMIS-921 Fixing Slow Consumer when multiple consumers on same queue 2017-01-16 11:37:12 -05:00
Howard Gao 90cf239829 ARTEMIS-921 Consumers killed as slow even if overall consuming rate is above threshold 2017-01-16 11:37:12 -05:00
Andy Taylor f52cb5c610 ARTEMIS-918 - use requested routing type when client defined with amqp and address doesnt exist
https://issues.apache.org/jira/browse/ARTEMIS-918
2017-01-12 12:07:16 +00:00
Howard Gao 4e309d842e ARTEMIS-562 Use 'to' field if sender target is null 2017-01-11 14:20:39 -05:00
Clebert Suconic 9f9ffc1ff5 ARTEMIS-913 Slow consumer detection not working when paging 2017-01-09 12:34:13 -05:00
Howard Gao 39f5ef6198 ARTEMIS-907 Fix NettySecurityClientTest 2017-01-04 10:50:18 -06:00
Dejan Bosanac 668f4721f0 https://issues.apache.org/jira/browse/ARTEMIS-815 - implement configurable wildcard addresses syntax
Rename WildCardConfigurationTest.java to WildcardConfigurationTest.java

adjust schema
2017-01-04 09:44:03 -06:00
Howard Gao eecbbb18db ARTEMIS-902 OpenWire Compression Issue 2016-12-23 21:29:28 +08:00
Timothy Bish 51c95babfe ARTEMIS-901 Account for the presence of authzid in sasl plan auth
If the SASL plain mechanism arrives with the authzid value set the
mechanism needs to account for its presence and use the correct fields
of the exchange to get the username and password values.  Adds some
tests to validate this fix.
2016-12-21 18:18:54 -05:00
Clebert Suconic d61ca69b64 NO-JIRA fixing checkstyle and tearDown on a test 2016-12-21 12:15:14 -05:00
Clebert Suconic 5e4f4aea82 NO-JIRA fixing a test 2016-12-21 12:04:06 -05:00
Clebert Suconic 8941f2b15d ARTEMIS-883 fixing tests 2016-12-21 12:04:06 -05:00
Howard Gao ae90edfdb6 ARTEMIS-883 Fix OpenWire ProducerFlowControlTest 2016-12-21 12:04:06 -05:00
Justin Bertram 8c1a9314e6 ARTEMIS-789 fix ReceiveTest 2016-12-16 18:48:05 -06:00
Clebert Suconic 1bed2c9512 NO-JIRA cli improvements 2016-12-16 18:46:46 -06:00
Martyn Taylor e29b3913ac NO-JIRA Check Style Fix 2016-12-16 15:16:02 +00:00
Clebert Suconic e1577e230a ARTEMIS-878 test fixes 2016-12-16 09:37:46 -05:00
Francesco Nigro 03cc566c5d ARTEMIS-878 Fix compilation and tests 2016-12-16 09:34:02 -05:00
Clebert Suconic 6ec7efc995 ARTEMIS-878 Improving CLI experience around create queue and address
I reckon the CLI is not the best UX, but this will at least make it consistent with other CLI commands
for the new Queue and Address commands
2016-12-16 13:15:28 +00:00
jbertram 6cb6e95c9b ARTEMIS-789 tests/fixes for auto create/delete 2016-12-15 17:53:50 -05:00
Howard Gao 8348cdd2b6 ARTEMIS-893 Fix FailoverTransactionTest.testWaitForMissingRedeliveries 2016-12-15 17:51:13 -05:00
Francesco Nigro 0a4d1b38c8 ARTEMIS-878: Improved CLI commands 2016-12-15 13:41:30 +00:00
Andy Taylor 3b75c95413 ARTEMIS-888 - AMQP headers arent always set
https://issues.apache.org/jira/browse/ARTEMIS-888
2016-12-15 07:07:04 +00:00
jbertram 4424117d65 ARTEMIS-789 fix AMQP SendingAndReceivingTest 2016-12-14 15:13:23 -06:00
jbertram 3af1e5c734 ARTEMIS-789 AMQP tests for routing semantics 2016-12-14 15:12:57 -06:00
Clebert Suconic 332338d018 ARTEMIS-890 Improving Paging consistencies with broker.persistent = false. Block, Page and Drop will now work under non persistent 2016-12-14 14:36:33 -05:00
Andy Taylor 881615e646 ARTEMIS-891 - upgrade proton to 0.16
https://issues.apache.org/jira/browse/ARTEMIS-891
2016-12-14 18:25:26 +00:00
Clebert Suconic 08e0c5e4f1 Revert "ARTEMIS-888 - AMQP headers arent always set"
This reverts commit d471f6b15f.
2016-12-14 10:20:18 -05:00
Andy Taylor d471f6b15f ARTEMIS-888 - AMQP headers arent always set
https://issues.apache.org/jira/browse/ARTEMIS-888
2016-12-14 09:25:10 -05:00
jbertram 8263ef2f98 ARTEMIS-780 fix ReplicationWithDivertTest 2016-12-13 20:58:35 -06:00
jbertram bdc2abf308 ARTEMIS-780 fix JmsProducerTest 2016-12-13 20:58:26 -06:00
jbertram 30b1335614 ARTEMIS-877 STOMP tests + routing header 2016-12-13 17:59:09 -06:00
jbertram 3150759806 ARTEMIS-880 use built-in prefixing for STOMP 2016-12-13 15:05:43 -06:00
Howard Gao d67ea071a3 ARTEMIS-885 Fix OpenWire wildcard conversion issue 2016-12-13 15:58:35 -05:00
Howard Gao 16f19daa97 ARTEMIS-887 Fix some OpenWire test failures 2016-12-13 15:57:31 -05:00
Martyn Taylor 7f658cad21 ARTEMIS-788 Enable auto create and Prefix in MQTT 2016-12-13 15:54:50 -05:00
Clebert Suconic d5be1c6dc6 NO-JIRA: fix checkstyle broken after c38c5a91aa 2016-12-13 15:54:15 -05:00
Pat Fox c38c5a91aa NO-JIRA: added unit test for setting the user and password in the uri for tcp transport, used in JNDI 2016-12-13 09:20:29 -05:00
jbertram 02f5f5c01d ARTEMIS-789 add tests; fix bugs from tests
Add some routing and createQueue tests to deal with new semantics.
Also fix a few bugs exposed by the new tests.
2016-12-12 17:01:52 -06:00
Clebert Suconic dc472192f4 ARTEMIS-882 Supporting lists on URIs 2016-12-09 16:20:01 -05:00
Martyn Taylor 6682072da6 Major Version Bump 2.0.0 After Major Arch Change 2016-12-09 18:43:15 +00:00
jbertram fa67d40b9d ARTEMIS-789 Fixed a number of failing tests 2016-12-09 18:43:15 +00:00
jbertram fe52ca6d75 ARTEMIS-881 Support new address-settings for auto-create queue 2016-12-09 18:43:15 +00:00
jbertram af27714026 ARTEMIS-813 Ensure no duplicate journal records on address update 2016-12-09 18:43:15 +00:00
Francesco Nigro 6ab133ab89 ARTEMIS-878 Added/Modified CLI commands and tests 2016-12-09 18:43:15 +00:00
Martyn Taylor 8f532cc25d ARTEMIS-880 Add support for address prefixing 2016-12-09 18:43:15 +00:00
Andy Taylor 224f62b295 ARTEMIS-877 Add Consumer support for AMQP for new addressing schema 2016-12-09 18:43:15 +00:00
Howard Gao a182a135e9 ARTEMIS-789 Add OpenWire Tests for MULTICAST,ANYCAST 2016-12-09 18:43:15 +00:00
jbertram b742a357c5 ARTEMIS-876 Deprecate JMSServerManager and update JMS bootstrap 2016-12-09 18:43:15 +00:00
jbertram 683ae68989 ARTEMIS-789 Fix Failing Tests 2016-12-09 18:43:15 +00:00
Martyn Taylor 61aec1ba74 ARTEMIS-789 Fix TopicDestinationResource look up on Addr 2016-12-09 18:43:15 +00:00
Andy Taylor 74d0a1a818 ARTEMIS-784 Add new JMX methods and update JMX API 2016-12-09 18:43:15 +00:00
Martyn Taylor 1339c930de ARTEMIS-780 Fixes a number of broken tests 2016-12-09 18:43:15 +00:00
Martyn Taylor 279383a798 ARTEMIS-780 Update Shared Queue API to use Address model 2016-12-09 18:43:15 +00:00
jbertram c480351c11 ARTEMIS-780 Consolodate protocol packets and new Address/Queue commands 2016-12-09 18:43:15 +00:00
Martyn Taylor 7a51491c32 ARTEMIS-780 Added ability to define 2 Routing Types on a single addres 2016-12-09 18:43:15 +00:00
jbertram 0861be14c1 ARTEMIS-789 Fix various failing tests due to addressing changes 2016-12-09 18:43:15 +00:00
Martyn Taylor ec8f06138c ARTEMIS-878 Update the CLI to incorporate Addresses and new Queue 2016-12-09 18:43:15 +00:00
jbertram a88853fe53 ARTEMIS-788 Stomp refactor + track autocreation for addresses 2016-12-09 18:43:15 +00:00
Andy Taylor 0189f156ec ARTEMIS-876 Remove JMS JMX Objects and add new Address JMX objects 2016-12-09 18:43:15 +00:00
Martyn Taylor 0006627d12 ARTEMIS-876 Internalise Cluster Namespace and remove JMS Prefix 2016-12-09 18:43:15 +00:00
jbertram 84e8a87325 ARTEMIS-876 Remove all reliances on JMS prefixing 2016-12-09 18:43:15 +00:00
Martyn Taylor 887b8c8532 ARTEMIS-788 Update MQTT Protocol 2016-12-09 18:43:15 +00:00
Martyn Taylor 89e6ec36bb ARTEMIS-780 Implement MaxConsumers and DeleteOnNoConsumers 2016-12-09 18:43:15 +00:00
jbertram 18c6d3035f ARTEMIS-813 Added persistence objects for new address model 2016-12-09 18:43:15 +00:00
Martyn Taylor 2d02a26527 ARTEMIS-780 Added ANYCAST routing to local queues 2016-12-09 18:43:15 +00:00
Martyn Taylor abdeb72eb7 ARTEMIS-782 Added configuration elements for new address model 2016-12-09 18:43:15 +00:00
Clebert Suconic ebbc91c728 [maven-release-plugin] prepare for next development iteration 2016-12-06 16:59:52 -05:00
Clebert Suconic 5bcbea2517 [maven-release-plugin] prepare release 1.5.1 2016-12-06 09:47:43 -05:00
Clebert Suconic 5f1509c4fd NO-JIRA: Removing empty test 2016-12-05 15:45:40 -05:00
Clebert Suconic 9c5a91b481 ARTEMIS-748 Negative Address Size after paging 2016-12-01 21:38:19 -05:00
Ville Skyttä a99617ae6b Treat STOMP 1.1+ undefined header escape sequences as errors
https://stomp.github.io/stomp-specification-1.2.html#Value_Encoding
2016-11-30 17:56:49 -05:00
Clebert Suconic 43634c098b ARTEMIS-863 parsing spaces properly on network health addresses and avoiding loopback on configuration 2016-11-29 15:24:06 -05:00
Clebert Suconic 402f25be7d ARTEMIS-473/ARTEMIS-863 Detect network failures 2016-11-23 10:14:14 -06:00
Howard Gao 1487fe6bdd ARTEMIS-864 Sending to a destroyed temp queue didn't get exception 2016-11-22 19:42:38 +08:00
Andy Taylor 6628db4892 ARTEMIS-825 - Invalid selector not handled correctly in AMQP
this changes propogates the error to the client and closes the sender correctly

https://issues.apache.org/jira/browse/ARTEMIS-825
2016-11-21 11:24:51 -05:00
Andy Taylor 329c533d21 ARTEMIS-823 = broker doesn't settle rejected messages
Currently we don't settle rejected messages at the broker, we should always settle when rejected

https://issues.apache.org/jira/browse/ARTEMIS-823
2016-11-21 11:24:51 -05:00
Clebert Suconic b8104f6b7e NO-JIRA: Test fixes and speed ups 2016-11-09 14:35:47 -05:00
Howard Gao 4691cbe882 ARTEMIS-842 JMSMessageID doesn't appear to work in selector 2016-11-08 09:52:12 +08:00
Ulf Lilleengen 00340c86e0 ARTEMIS-814: Support specifying connection properties 2016-11-07 15:12:14 +01:00
Clebert Suconic cca527d578 NO-JIRA: fixing extra-tests pom after the release 2016-11-03 16:03:57 -04:00
Clebert Suconic f2db1c4337 [maven-release-plugin] prepare for next development iteration 2016-11-03 15:35:05 -04:00
Clebert Suconic 13a8a2bd40 [maven-release-plugin] prepare release 1.5.0 2016-11-03 15:34:54 -04:00
Clebert Suconic 64f43b47b6 NO-JIRA Updating Proton and qpid-jms on missing poms 2016-11-02 19:18:52 -04:00
Ulf Lilleengen 52a462d155 ARTEMIS-814: Refactor client connection and allow adding custom event handlers 2016-11-02 14:24:44 -04:00
Clebert Suconic 5e5ac0f057 ARTEMIS-832 Openwire was ignoring data syncs.
I'm also adding the possibility of sync on libaio, and not only relay on write-cache
2016-11-02 13:17:12 -05:00
Timothy Bish b07d6a9e75 ARTEMIS-268 Adds tests that shows issue with presettled receivers
Tests added that show that a receiver attached to a queue as presettled
are not removing the messages that are dispatched to them.
2016-11-02 14:14:35 -04:00
Clebert Suconic 7eadff7681 ARTEMIS-822 Injecting IO Pools into and from ArtemisServerImpl
https://issues.apache.org/jira/browse/ARTEMIS-822
2016-10-31 11:34:27 -04:00
Clebert Suconic 6afde8f45a ARTEMIS-822 Review journal threading model
https://issues.apache.org/jira/browse/ARTEMIS-822
2016-10-28 16:54:59 -04:00
barreiro 4b47461f03 ARTEMIS-822 Add executor service to JournalImpl for append operations and remove synchronization
https://issues.apache.org/jira/browse/ARTEMIS-822
2016-10-28 16:54:59 -04:00
Clebert Suconic bfb9bedb2d ARTEMIS-828 Queue browsing can be out of sync while paging
https://issues.apache.org/jira/browse/ARTEMIS-828
2016-10-28 16:54:58 -04:00
Clebert Suconic e0021252ee ARTEMIS-829 Removing messages re-encoding
https://issues.apache.org/jira/browse/ARTEMIS-829
2016-10-28 16:54:58 -04:00
Clebert Suconic e49eda9664 NO-JIRA fixing byteman (extra tests)
Two issues encountered here:

i - ClosingConnectionTest was intermittently breaking other tests, in particular it was breaking PagingLeakTest for no apparent reason
  . apparently it was a dead lock from removeAddress on the ServerController

ii - it still showing issues after removing the not needed synchronziation. Since the test is not really needed I am just removing the offending test.
2016-10-28 16:32:04 -04:00
Ulf Lilleengen 1b7033a20e ARTEMIS-824: Add management routines for connector services 2016-10-26 10:11:11 +02:00
Francesco Nigro 490bd31c4b ARTEMIS-820 AMQP: Add frame inspection capability to the test client. 2016-10-25 14:15:28 -04:00
Andy Taylor 1a4a148ba9 ARTEMIS-817 and ARTEMIS-818 openwire fixes
https://issues.apache.org/jira/browse/ARTEMIS-817
https://issues.apache.org/jira/browse/ARTEMIS-818

issues around Openwire protocol, sending a null stream maessage via openwire causes a null pointer and if a topic is auto created with openwire then it cant be destroyed as it checks for the management queue.
2016-10-25 12:00:37 -04:00
Clebert Suconic 2d1bdcd5bd ARTEMIS-814: Moving classes around and adding docs 2016-10-24 09:42:22 -04:00
Ulf Lilleengen e65fd5d674 ARTEMIS-814: Add support for outgoing AMQP connections 2016-10-24 09:42:22 -04:00
Clebert Suconic a074f9f1a5 ARTEMIS-753 Queue Pause and Resumed persisted 2016-10-21 20:26:23 -04:00
Howard Gao 9c16ba26be ARTEMIS-812 The countDelta attribute showing negative values 2016-10-21 17:13:41 +08:00
Tomas Hofman b2b6743b58 ARTEMIS-805 old JMS clients failing on new broker
Old JMS clients are getting a CCE related to SessionBindingQueryResponseMessage
2016-10-19 13:22:56 -04:00
Clebert Suconic b7d79f328f NO-JIRA: a few additions and tweaks around OSGI 2016-10-19 13:19:10 -04:00
Timothy Bish f1728abb5f ARTEMIS-795 Tests for temporary destinations using dynamic nodes
Tests for the management of temporary destinations using the dynamic
node feature.  Failing case, the broker return a source or target that
indicates it will honor the lifetime policy of delete on close but the
temporary destination remains in existence after the link it closed.
2016-10-14 10:24:13 +01:00
Timothy Bish 226f28abf5 ARTEMIS-799 Fix issues with the AMQP Durable Topic Subscription model
Fixes several issues found in the handling of durable topic
subscriptions (test cases added).
2016-10-14 03:54:35 +02:00
Timothy Bish 7a8b7e9cfb ARTEMIS-792 Add additional tests for AMQP protocol
Adds several tests for AMQP expectations in various use cases.
2016-10-13 16:07:50 -04:00
Paul Gallagher fcb70f3f60 ARTEMIS-779 upgrade to netty 4.1.5.Final 2016-10-10 23:24:56 +02:00
Martyn Taylor a09348695c ARTEMIS-778 Fix MQTT tests, refactor session state 2016-10-10 23:24:14 +02:00
Clebert Suconic 374f142edb fixing build for LargeMessageOverReplicationTest 2016-10-10 10:12:22 +02:00
Ville Skyttä 65342a5ad2 javadoc: Fix doclint syntax errors 2016-10-10 10:02:49 +02:00
Ville Skyttä 9a439b4791 javadoc: Fix doclint reference errors 2016-10-10 10:02:49 +02:00
jbertram c47a9a5f80 ARTEMIS-761 fix possible dup journal record ID 2016-10-07 18:50:44 -04:00
Timothy Bish bc6ad1dfdb ARTEMIS-775 Tests for AMQP credit handling
Some new tests that cover some AMQP credit handling scenarios.  Test
case 'testCloseBusyReceiver' currently fails due to being dispatched a
duplicate message.
2016-10-07 18:40:49 -04:00
Timothy Bish 4496cd6120 ARTEMIS-777 Remove dependency on legacy Qpid AMQP 0.x JMS client
Remove the dependency on the qpid-client module which is an AMQP JMS
client for the 0.x AMQP protocols which Artemis does not support.
2016-10-07 18:39:41 -04:00
Timothy Bish 398da40f7d ARTEMIS-776 Attach response should only list supported filters
The broker needs to return only the filters that are supported on a
receiver attach otherwise the remote is not aware that the broker is not
able to honor the requested configuration of the receiver.
2016-10-07 17:35:27 -04:00
jbertram 59bff3b36b ARTEMIS-767 consumer with pre-ack flagged as slow 2016-10-07 14:47:21 -04:00
Clebert Suconic 54b7dcc48e ARTEMIS-773 closing connections through finally to avoid thread leakage 2016-10-07 11:04:45 -04:00
Timothy Bish ea54071f77 ARTEMIS-773 Tests that show issue with TX acquisition and retirement.
Two new tests that acquire messages inside a TX and manage their
settlement and retirement in differing ways, one test works the other
'testReceiversCommitAndRollbackWithMultipleSessionsInSingleTXNoSettlement' 
fails due to messages that were committed being redelivered to the
client unexpectedly.
2016-10-07 10:54:02 -04:00
Timothy Bish 62627bf2ee ARTEMIS-770 AMQP Message Transformer refactor
Refactor the AMQP Message transformers both for better performance and
also to fix a number of issues with the transformers creating inbound
and outbound messages with incorrectly mapped values or extra data
appended where it should not be.
2016-10-07 10:42:52 -04:00
Martyn Taylor 95c4fdd408 ARTEMIS-762 Reflect management changes in AMQP protocol 2016-10-07 10:38:01 -04:00
Clebert Suconic ec48f9ed00 ARTEMIS-765 Improve Checkstyle 2016-09-30 11:12:09 -04:00
Andy Taylor bd9b2057fa ARTEMIS-758 - List/Object message sent by OpenWire JMS client can't be consumed with other clients
https://issues.apache.org/jira/browse/ARTEMIS-758
2016-09-29 20:28:31 -04:00
Clebert Suconic 01503ed46e ARTEMIS-739 fixing checkstyle 2016-09-29 12:58:20 -04:00
jbertram a6974596a0 ARTEMIS-739 fix large msg file leak on copy 2016-09-28 14:20:07 -04:00
Clebert Suconic a838bf0479 ARTEMIS-751 Simplification of the AMQP implementation
Since we don't need client implementations any longer, given the maturity level of
qpid jms, these classes can go, as a result a lot of the interfaces can be removed.

As part of this I am removing proton-plug, and reorganizing the packages in a way I think it
makes more sense and easier to other developers to understand and maintain it.

https://issues.apache.org/jira/browse/ARTEMIS-751
2016-09-27 09:29:40 -04:00
Clebert Suconic 4e349693f4 Fixing build on extra-tests 2016-09-27 09:21:25 -04:00
Ville Skyttä 447d7840aa Add missing @Overrides 2016-09-27 14:36:54 +03:00
jbertram 2dcf8de0de ARTEMIS-741 fix subscription queue leak on STOMP 2016-09-26 18:01:30 -04:00
Ville Skyttä b69af66f47 Expose disk-scan-period, max-disk-usage, and global-max-size in server control 2016-09-26 13:33:23 -04:00
jbertram ea552a1f88 ARTEMIS-747 multiple CDATA events on import fails 2016-09-23 12:15:13 -04:00
Ville Skyttä e98da5f288 Make bunch of private fields final 2016-09-23 09:06:08 -04:00
Andy Taylor 4c1d9e2c0f ARTEMIS-742 = test fixes
https://issues.apache.org/jira/browse/ARTEMIS-742
2016-09-23 08:18:03 +01:00
Francesco Nigro c002cf13b8 ARTEMIS-743 Created QueueConfig that replace and enable additional behaviours on QueueFactory.
Added Filter predicate.
2016-09-22 15:45:14 +01:00
Clebert Suconic 113c0c9360 ARTEMIS-738 Improving TX support on AMQP
https://issues.apache.org/jira/browse/ARTEMIS-738
2016-09-21 18:14:38 -04:00
Clebert Suconic 911ec30be1 ARTEMIS-740 Test on redeployment divert 2016-09-21 17:07:02 -04:00
Martyn Taylor 74742dcb66 Add Unique ClientID on Server 2016-09-16 16:05:20 +01:00
Howard Gao 406d09d986 ARTEMIS-728 Broker doesn't support unique jms client-id (qpid-jms client) 2016-09-15 11:17:02 -04:00
Jeff Mesnil c33f29631f ARTEMIS-714 Add suport for DataSource and SQLProvider
* add DataSource property to DatabaseStorageConfiguration to be able to
  communicate with the data store using this DataSource instance instead
  of relying on the creation the SQL connnection using the JDBC connection
  URL/driver class name tuple.
* add SQLProvider.Factory property to DatabaseStorageConfiguration to
  externalize the choice of the SQLProvider instead of relying on
  hard-coded choices. If the property is null, the current behaviour will
  be used (determing the SQLProvider based on the driver class name)
* bindingsJournal and messageJournal are already started in the start()
  method. Remove redundant calls that were creating unused JDBC
  connections that are never closed.

JIRA: https://issues.apache.org/jira/browse/ARTEMIS-714
2016-09-15 11:15:24 -04:00
Clebert Suconic 2ed51bf327 ARTEMIS-734 adding tests showing the issue on expiring while inside the cluster bridge 2016-09-15 16:02:49 +01:00
Ville Skyttä 7bff07d5b1 Add missing @Overrides 2016-09-14 13:22:20 +03:00
Clebert Suconic 665281a558 Updating ActiveMQ into OpenWire tests
This will fix the testsuite for activemq5-unit-tests
2016-09-13 17:17:12 -04:00
Clebert Suconic e81d101610 ARTEMIS-727 Fixing compilation on OpenWire tests 2016-09-12 19:10:28 -04:00
Clebert Suconic f8278ec99c ARTEMIS-727 Improving Thread usage on JDBC
https://issues.apache.org/jira/browse/ARTEMIS-727
2016-09-12 14:32:40 -04:00
Andy Taylor cdb0391c1c ARTEMIS-723 - AMQP subscriptions aren't deleted properly
https://issues.apache.org/jira/browse/ARTEMIS-723
2016-09-12 10:27:49 +01:00
Clebert Suconic 46d3f4abcc Version upgrades 2016-09-09 14:49:33 -04:00
Timothy Bish 42ff4a6048 ARTEMIS-722 Add DELAYED_DELIVERY capability to server connection open
The server should indicate to clients that it supports the message
annotation that allows message delivery to be delayed
'x-opt-delivery-time'
2016-09-08 19:01:40 -04:00
Clebert Suconic 87d3c1c9bd ARTEMIS-716 max replication = 0 should mean do not make copies at all 2016-09-08 17:17:04 +01:00
Clebert Suconic 505b732843 [maven-release-plugin] prepare for next development iteration 2016-09-06 12:17:31 -04:00
Clebert Suconic b305e231ec [maven-release-plugin] prepare release 1.4.0 2016-09-06 12:17:08 -04:00
jbertram 4bece40706 Fix test race condition 2016-09-06 09:26:59 -05:00
Clebert Suconic 4472aa0e36 ARTEMIS-581 Implement max disk usage, and global-max-size
max-disk-usage = how much of a disk we can use before the system blocks
global-max-size = how much bytes we can take from memory for messages before we start enter into the configured page mode

This will also change the default created configuration into page-mode as that's more reliable for systems.
2016-09-06 15:07:49 +01:00
Howard Gao ec0f05f93d ARTEMIS-706 No Keep Alives from Broker (test improvement)
-- make the test run quicker
2016-09-06 00:12:54 +08:00
Howard Gao 61747acfd1 ARTEMIS-706 No Keep Alives from Broker 2016-09-02 21:39:44 -04:00
jbertram 1cf96f4fcf ARTEMIS-711 Fix handling of 'bare' header 2016-09-01 15:23:48 -04:00
Clebert Suconic 03b938468a ARTEMIS-657 Fixing JORAM AMQP Tests 2016-08-31 14:26:10 -04:00
Howard Gao 8fccd5df42 ARTEMIS-696 Broker fails when client sends messages in multiple transfer frames 2016-08-30 17:24:31 -04:00
Gordon Sim 8f188ef236 ARTEMIS-657: ensure management response bodies are encoded into amqp 2016-08-30 17:12:19 -04:00
Clebert Suconic 6a1a1b085f removing System.exit from test 2016-08-26 15:11:48 -04:00
Ville Skyttä 4ef9c5e238 Javadoc error fixes 2016-08-25 14:22:32 -04:00
Ville Skyttä d5242978d5 for and while loop to foreach conversions 2016-08-25 14:22:32 -04:00
Ville Skyttä e1728f0797 Spelling fixes 2016-08-25 14:22:32 -04:00
Ville Skyttä 30c617da3c Unnecessary @SuppressWarnings fixes 2016-08-25 14:22:32 -04:00
Clebert Suconic 858d7a1a02 ARTEMIS-697 Making JChannelManager a singleton, and fixing tests 2016-08-24 18:08:17 -04:00
Clebert Suconic 92c5d5cd50 ARTEMIS-684 Random is not equaly distributed among different VMs 2016-08-23 19:36:54 -04:00
Clebert Suconic a054713424 1.5.0.SNAPSHOT on extra-tests 2016-08-16 16:21:27 -04:00
Clebert Suconic a3840c23c3 [maven-release-plugin] prepare for next development iteration 2016-08-16 11:59:55 -04:00
Clebert Suconic d38ef19bf6 [maven-release-plugin] prepare release 1.4.0 2016-08-16 11:59:36 -04:00
Clebert Suconic 18563e4539 ARTEMIS-591 Improvement on Timeout check 2016-08-15 14:09:37 -04:00
jbertram cfbe06f3bc ARTEMIS-656 support host verification for SSL cert 2016-08-15 13:58:25 -04:00
Bennet Schulz 4ae18782da ARTEMIS-680 some refactorings within Vert.X integration and corresponding tests 2016-08-14 12:48:35 -04:00
jbertram b54de460c6 ARTEMIS-592 finer-grained security for queues 2016-08-11 18:32:54 -04:00
Clebert Suconic 7d684956e2 ARTEMIS-670 Adjusting package names on CLI and adding input for destination create name 2016-08-10 19:12:58 -04:00
Howard Gao 76e7992906 ARTEMIS-670 Adding destination creation and deletion cli commands 2016-08-10 15:44:10 -04:00
Martyn Taylor 7afd0fb028 ARTEMIS-677 Support websocket subprotocol handshakes 2016-08-10 11:07:47 -04:00