789 Commits

Author SHA1 Message Date
Michael André Pearce
98b3177e6e ARTEMIS-2306 Make key used for group first for consumer configurable
Add tests
Add implementation details
2019-04-16 15:43:16 -04:00
Michael André Pearce
05628ce92e ARTEMIS-2306 Support ActiveMQ5 feature JMSXGroupFirstForConsumer
Implement using the ActiveMQ5 JMSXGroupFirstForConsumer, property as default, but make it possible for future to make it configurable easily. (Not this PR)
Add test
2019-04-16 15:43:16 -04:00
Michael André Pearce
ed9270fc79 NO-JIRA Fix small ActiveMQServerControl api break with 2.6.4
In adding auto-delete queue level feature, its been noticed as some feature bits were added during hot fix branch, that there's api break with the 2.6.x hotfix branch.

This addresses that by fixing this in 2.7.x
2019-04-16 14:30:33 +01:00
Clebert Suconic
da4f95cf71 ARTEMIS-2305 ACK counters to only increment after commit
Also including a new metric for ack attempts that will keep the former semantic.
2019-04-12 14:34:51 -04:00
Michael André Pearce
e7bdc58c49 ARTEMIS-2301 Minor change on Epoll and kQueue.isAvailable
small fix to logging
2019-04-12 11:51:59 +01:00
Clebert Suconic
cf2540ebb1 ARTEMIS-2301 Minor change on Epoll and kQueue.isAvailable
just checking for NoClassDefFound and return false
2019-04-11 18:06:50 -04:00
Clebert Suconic
720f60ace2 ARTEMIS-2297 Avoiding Split Brains during replication catch up when no quorum is established 2019-04-10 07:52:08 -04:00
Michael André Pearce
369c429d8a ARTEMIS-2292 - Fix queue level auto-delete for topic subscription queue
Adjust auto-delete defaults based on if queue autocreated
2019-04-02 19:06:08 +01:00
Clebert Suconic
516b1a1b9f [maven-release-plugin] prepare for next development iteration 2019-03-14 12:41:04 -04:00
Clebert Suconic
c3eb6c12ad [maven-release-plugin] prepare release 2.7.0 2019-03-14 12:40:52 -04:00
yang wei
59c966902c ARTEMIS-2257 Synchronize SharedEventLoopGroup shutdownGracefully 2019-03-14 12:09:52 -04:00
onlyMIT
4484d05cf0 ARTEMIS-2226 last consumer connection should close the previous consumer connection
Multiple consumers using the same clientId in the cluster, the last consumer connection should close the previous consumer connection!

ARTEMIS-2226 last consumer connection should close the previous consumer connection

to address apache-rat-plugin:0.12:check

ARTEMIS-2226 last consumer connection should close the previous consumer connection

to address checkstyle

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

adjust the code structure

ARTEMIS-2226 last consumer connection should close the previous consumer connection

add javadoc
2019-03-12 19:57:31 +00:00
yang wei
c1dcd4bec9 ARTEMIS-2259 Client session not exist if reattach on new connection timeout 2019-03-12 15:54:56 -04:00
Keith Wall
95bcfaeb70 ARTEMIS-2262: Correlate management response messages with the request 2019-03-08 12:11:58 -05:00
Michael André Pearce
4a5af776d8 ARTEMIS-2265 Support Federated Queues and Addresses
Implement Federated Queue (builds on recent consumer priority)
Implement Federated Address (builds on recent queue level auto-delete)
Add Functional Tests
Add Failure Tests (remote and local shutdowns)
Add Documentation
2019-03-07 14:37:00 -05:00
Michael André Pearce
9b01e9521c ARTEMIS-2263 Support queue level auto-delete configuration
Add ability to configure when creating auto created queues at the queue level
Add support for configuring message count check
Add test cases
Update docs
2019-02-27 08:13:19 +00:00
Clebert Suconic
da3d7a2940 ARTEMIS-2243 Fixing ClassLoding and dependency to security domain on method parameter 2019-02-25 20:12:20 -05:00
Michael André Pearce
c4e68b6046 ARTEMIS-2118 Enhanced Message Groups Support
Support using group buckets on a queue for better local group scaling
Support disabling message groups on a queue
Support rebalancing groups when a consumer is added.
2019-02-21 19:58:34 -05:00
Otavio R. Piske
6d65975f36 NO-JIRA Removes redundant initializers 2019-02-20 17:11:41 -05:00
Otavio R. Piske
69582ef642 NO-JIRA Inline some variables to simplify the code flow 2019-02-20 17:11:36 -05:00
Otavio R. Piske
d2bf02082f NO-JIRA Simplify the assignment of the initialConnectors 2019-02-20 17:11:22 -05:00
Otavio R. Piske
3dce4e645a NO-JIRA Remove unnecessary semicolon 2019-02-20 17:11:06 -05:00
Otavio R. Piske
eb582a676f NO-JIRA Remove redundant modifiers 2019-02-20 17:11:00 -05:00
Clebert Suconic
d59bdca73f ARTEMIS-2256 Update Topology back after a bridge reconnected
https://issues.apache.org/jira/browse/ARTEMIS-2256
2019-02-19 16:10:40 -05:00
Clebert Suconic
d2df7b7e85 ARTEMIS-2246 Setting the max-disk-usage as 100 on the testsuite
This is to avoid issues with CI and Dev Machiens, while still preserving
a sensible default for production systems.
2019-02-07 15:07:49 -05:00
Justin Bertram
a38cdfa811 ARTEMIS-2246 clarify docs for defaults; change max-disk-usage default 2019-02-07 11:13:04 -05:00
Justin Bertram
4a1fc61fcc ARTEMIS-2243 user/role ops for PropertiesLoginModule via mgmnt 2019-02-07 10:16:01 -05:00
Justin Bertram
98ca583313 ARTEMIS-2248 don't create sslEngine w/sniHost in NettyConnector 2019-02-07 10:04:52 -05:00
Michael André Pearce
b76f0061f8 ARTEMIS-2241 Support direct deliver for InVMAcceptors
Push isDirectDeliver method from netty impl, to the Connection interface
Add support to InVMConnection for isDirectDeliver flag and ability to set via config, defaulting to false, to keep current default behavior. 
Extend DirectDeliverTest to check InVM as well.
2019-01-30 08:11:46 +00:00
Michael André Pearce
cf65912bcc ARTEMIS-2170 Optimized CoreMessage clearInternalProperties
Ensure only iterate properties, if internal property is set.
2019-01-24 08:31:10 +00:00
Francesco Nigro
6446d01a15 ARTEMIS-2170 Optimized CoreMessage check and cleanup methods
Any checkProperties();<usage of this.properties> pattern has been
replaced by an atomic checkProperties().<usage of returned properties>
to help both performance and consistency.
The cleanup is now performed into CoreTypedProperties both
for performance reasons (avoid lock/unlock many times)
and consistency, given that the operation is now atomic.
2019-01-24 08:31:10 +00:00
Michael André Pearce
7dfa0fe7f4 ARTEMIS-196 Implement Consumer Priority
Add consumer priority support
Includes refactor of consumer iterating in QueueImpl to its own logical class, to be able to implement.
Add OpenWire JMS Test - taken from ActiveMQ5
Add Core JMS Test
Add AMQP Test
Add Docs
2019-01-23 11:19:24 -05:00
Michael André Pearce
39ff9f43b2 NO-JIRA fix writableBuffer so that its only visible after sub statements
Potential race condition. This assignment to writableBuffer is visible to other threads before the subsequent statements are executed.
2019-01-18 22:41:17 +00:00
Michael André Pearce
dbc4547dad NO-JIRA Null Check in logging 2019-01-18 01:04:06 +00:00
Michael André Pearce
1f1aacc7ca NO-JIRA Fix field access 2019-01-18 00:33:59 +00:00
Justin Bertram
57aacf784c NO-JIRA fix lgtm.com warnings
Warnings enumerated at
https://lgtm.com/projects/g/apache/activemq-artemis/alerts/?mode=tree&severity=warning
2019-01-17 22:30:28 +00:00
Justin Bertram
47aa25933f ARTEMIS-2178 routing-type config for core bridge
MULTICAST messages forwarded by a core bridge will not be routed to any
ANYCAST queues and vice-versa. Diverts have the ability to configure how
routing-type is treated. Core bridges now support this same kind of
functionality. By default the bridge does not alter the routing-type of
forwarded messages to maintain compatibility with existing behavior.
2019-01-17 22:22:01 +00:00
Clebert Suconic
d79762fa04 ARTEMIS-2205 Refactor AMQP Processing into Netty Thread
These improvements were also part of this task:
- Routing is now cached as much as possible.
- A new Runnable is avoided for each individual message,
  since we use the Netty executor to perform delivery

https://issues.apache.org/jira/browse/ARTEMIS-2205
2019-01-10 16:39:56 +01:00
Francesco Nigro
a40a459f8c ARTEMIS-2205 Netty is used in a more idiomatic way
This helped decreasing a lot of pressure on GC by not creating
as many runnables for each write.

Besides this helps fixing some of the issues I would have had on refactoring AMQP
over flushing writes and other asynchronous issues.
2019-01-10 16:39:56 +01:00
Francesco Nigro
1c0ef5d7f7 ARTEMIS-2196 Avoid creating RandomAccessFile when FileChannel is needed 2018-12-14 15:10:30 -06:00
yang wei
dbbd94bd51 ARTEMIS-1949 fix IllegalMonitorStateException during shutdown 2018-12-13 14:03:01 -06:00
Matt Slonetsky
a65b62b4ed ARTEMIS-2194 Typo in word 'update' in class MessageCounterInfo 2018-12-13 10:48:44 -06:00
Justin Bertram
3c595f18d5 ARTEMIS-2179 mgmnt method to get cluster-cxn names 2018-12-06 16:45:35 +01:00
Emmanuel Hugonnet
80525f1c91
[ARTEMIS-2163]: Classloading issue if artemis-commons is not in the same classloader as artemis-client-* or artemis-server.
* Passing the owner class to define the classloader to load classes via ClassLoadingUtil with artemis-commons in a different classloader..

JIRA: https://issues.apache.org/jira/browse/ARTEMIS-2163
2018-11-14 18:23:30 +01:00
Michael André Pearce
5ac87609e7 ARTEMIS-2142 Refactor of Patchfix ServerJMSMessage
Refactor ServerJMSMessage so it correctly transposes all JMSX headers.
Push common JMSX mappings for JMS to Message Interface mappings into MessageUtil to avoid duplication in ActiveMQMessage and ServerJMSMessage
2018-11-14 09:58:34 -05:00
Michael André Pearce
14451a79eb ARTEMIS-2142 Patch Fix ServerJMSMessage for JMSXGROUPSEQ
This is a patch fix for JMSXGROUPSEQ.
2018-11-14 09:54:28 -05:00
Justin Bertram
c2188aa058 ARTEMIS-2127 Add auth details to consumer created notification 2018-11-08 23:56:51 +00:00
Michael André Pearce
faa6ffa3b4 ARTEMIS-2151 JMS Selectors broken in some cases
Create Test Case
Fix OpenWire so selectors are translated
Fix GroupID to call groupId method
2018-10-31 11:55:22 -04:00
Michael André Pearce
f30ca44c82 ARTEMIS-2142 Support JMSXGroupSeq -1 to close/reset group.
Add test cases
Add GroupSequence to Message Interface
Implement Support closing/reset group in queue impl
Update Documentation (copy from activemq5)

Change/Fix OpenWireMessageConverter to use default of 0 if not set, for OpenWire as per documentation http://activemq.apache.org/activemq-message-properties.html
2018-10-30 16:24:33 -04:00
Michael André Pearce
99a3f17aa0 NO-JIRA Move JMS_SESSION_CLIENT_ID_PROPERTY to JMS module
Remove JMS specifics from CORE, that are not used in broker
2018-10-30 16:22:44 -04:00