Commit Graph

261 Commits

Author SHA1 Message Date
Howard Gao 1c156e0d47 ARTEMIS-1558 Message Grouping Openwire Interoperability Issue
Openwire message grouping doesn't work because the groupID of
a message is not passed correctly.
2017-12-14 20:30:53 -06:00
Michael André Pearce fa80536615 ARTEMIS-1550 - Support LVQ for OpenWire
Add support for LVQ, using the same property key as core "_AMQ_LVQ_NAME"
Update current LVQ test case to correctly test OpenWire LVQ.
2017-12-09 15:07:21 +00:00
Pat Fox 0b5bddaab5 ARTEMIS-1534 added openwire logging (trace level) to log openwire commands that are received/sent by the broker 2017-12-05 09:39:28 -06:00
saurabhrai 4abca78785 ARTEMIS-1364: Enable internal sorting in hawtio web console 2017-11-29 08:52:33 +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
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
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
Justin Bertram 03d56d2cf5 ARTEMIS-1445 fix auto-delete for AMQP and OpenWire 2017-10-05 14:08:52 -05: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
Timothy Bish 342cc83ea4 ARTEMIS-1410 remove redundant code processing openwire destination
Remove some redundant code in the processing of the OpenWire Destination
name, both in the topic handler and in the method in general the
destination name only needs to be converted once and only one
SimpleString instance needs to be created from that which will then feed
all the places that either the String form or the SimpleString form of
the result is needed.
2017-09-13 18:27:39 -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
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
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
Martyn Taylor bb3965b7f7 ARTEMIS-1349 Add management views for client objects 2017-08-17 10:44:41 +01: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
Jiri Danek dfb181a8b2 ARTEMIS-1317 Expire messages that got expiredAck() from OpenWire client
This fixes org.apache.activemq.JmsSendReceiveWithMessageExpirationTest
2017-08-03 11:41:58 -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 8f5f2bbe52 ARTEMIS-1300 Deadlock when Core direct deliverying and AMQP receive 2017-07-20 08:59:32 -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
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
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
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 dc26ac96b4 ARTEMIS-1156: moving our collections on its own package 2017-05-12 10:06:05 -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 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
Clebert Suconic 2968e0a7da ARTEMIS-1102 Fixing Openwire test after security change 2017-05-03 10:06:45 -04:00
Justin Bertram 004eda42a2 ARTEMIS-1102 cert-based auth impl for OpenWire 2017-04-28 10:11:25 +01:00
Clebert Suconic d779afe874 NO-JIRA: Fixing test hunging on OpenWire 2017-03-30 21:56:46 -04:00
Martyn Taylor 955af96fe9 ARTEMIS-1082 Catch Create Queue race in OpenWire 2017-03-29 13:49:01 +01:00
Justin Bertram 427039ef38 ARTEMIS-1068 routingType + AMQP fixes 2017-03-24 15:15:10 -05:00
Francesco Nigro ed3de61587 ARTEMIS-1055 Broker generates warning when a client tries to connect it 2017-03-22 11:39:11 +00:00
Clebert Suconic 65ac7f700b ARTEMIS-1052 Proper Expiry over AMQP 2017-03-20 18:33:31 -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
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
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
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 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
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
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
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
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
Justin Bertram ff3e75d148 NO-JIRA move RoutingType to different package 2017-02-13 09:50:41 -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
Howard Gao eecbbb18db ARTEMIS-902 OpenWire Compression Issue 2016-12-23 21:29:28 +08:00
Clebert Suconic 81df93ebcf ARTEMIS-883 improving exceptions sending 2016-12-21 12:04:06 -05:00
Howard Gao ae90edfdb6 ARTEMIS-883 Fix OpenWire ProducerFlowControlTest 2016-12-21 12:04:06 -05:00
Howard Gao d67ea071a3 ARTEMIS-885 Fix OpenWire wildcard conversion issue 2016-12-13 15:58:35 -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
Martyn Taylor 8f532cc25d ARTEMIS-880 Add support for address prefixing 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
Howard Gao 2dc6482c91 ARTEMIS-789 Fix OpenWire tests due to missing RoutingType 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
Howard Gao 796550d16b ARTEMIS-789 OpenWire queue auto-creation failure 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
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
Howard Gao c4339d809b Fix JMSDurableTopicRedeliverTest.testRedeliverNewSession test failure 2016-12-06 11:02:27 +08:00
Dmitrii Tikhomirov 3995319dca ARTEMIS-865 Remove e.printStackTrace() from code 2016-11-23 11:15:54 -05:00
Howard Gao 1487fe6bdd ARTEMIS-864 Sending to a destroyed temp queue didn't get exception 2016-11-22 19:42:38 +08:00
Ryan Yeats fd12266449 ARTEMIS-860 add artemis-openwire protocol to osgi feature and fix bundle issues 2016-11-19 08:55:58 -07: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 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
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 ec48f9ed00 ARTEMIS-765 Improve Checkstyle 2016-09-30 11:12:09 -04:00
Ville Skyttä e98da5f288 Make bunch of private fields final 2016-09-23 09:06:08 -04:00
Clebert Suconic 46d3f4abcc Version upgrades 2016-09-09 14:49:33 -04: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
Howard Gao 61747acfd1 ARTEMIS-706 No Keep Alives from Broker 2016-09-02 21:39:44 -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
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
Martyn Taylor 7afd0fb028 ARTEMIS-677 Support websocket subprotocol handshakes 2016-08-10 11:07:47 -04:00
bayern39 a741642a48 [ARTEMIS-642] Disable slow client reconnecting with KILL slow client policy 2016-08-03 18:39:57 -04:00
Ville Skyttä 9022a311f3 Fix removing ended transaction id in OpenWireConnection.CommandProcessor 2016-07-29 15:35:25 -04:00
Ville Skyttä 7ce2d7c199 Fix adding duplicate detection id in Openwire AMQSession.send 2016-07-29 15:35:25 -04:00
Ville Skyttä c890164fda Use try-with-resources some more 2016-07-29 15:32:57 -04:00
Ville Skyttä 616c038dae Fix connection list cleanup in OpenWireProtocolManager.removeConnection 2016-07-29 15:27:55 -04:00
Ville Skyttä aed49b3894 Spelling fixes 2016-07-26 14:24:45 +03:00
jbertram 765b225924 ARTEMIS-584 add validated user to msg
Implements a new feature to aid in security auditing by adding the name
of the validated user to the messages it sends.
2016-07-06 09:37:29 -05:00