Commit Graph

196 Commits

Author SHA1 Message Date
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
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 1f4473e8d7 ARTEMIS-1081 Implementing AMQP UndeliverableHere 2017-03-28 20:32:28 -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 61e10fe65a NO-JIRA Passing the logger manager on spawned VMs through the testsuite 2017-03-02 10:04:28 -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
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
Justin Bertram ff3e75d148 NO-JIRA move RoutingType to different package 2017-02-13 09:50:41 -06: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
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
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
Francesco Nigro 0a4d1b38c8 ARTEMIS-878: Improved CLI commands 2016-12-15 13:41:30 +00:00
jbertram fa67d40b9d ARTEMIS-789 Fixed a number of failing tests 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
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
jbertram 84e8a87325 ARTEMIS-876 Remove all reliances on JMS prefixing 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 5f1509c4fd NO-JIRA: Removing empty test 2016-12-05 15:45:40 -05: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
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
Ulf Lilleengen 1b7033a20e ARTEMIS-824: Add management routines for connector services 2016-10-26 10:11:11 +02:00
Clebert Suconic a074f9f1a5 ARTEMIS-753 Queue Pause and Resumed persisted 2016-10-21 20:26:23 -04:00
jbertram c47a9a5f80 ARTEMIS-761 fix possible dup journal record ID 2016-10-07 18:50:44 -04:00
Clebert Suconic ec48f9ed00 ARTEMIS-765 Improve Checkstyle 2016-09-30 11:12:09 -04: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
Ville Skyttä 7bff07d5b1 Add missing @Overrides 2016-09-14 13:22:20 +03: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
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
Clebert Suconic 92c5d5cd50 ARTEMIS-684 Random is not equaly distributed among different VMs 2016-08-23 19:36:54 -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
Martyn Taylor 7afd0fb028 ARTEMIS-677 Support websocket subprotocol handshakes 2016-08-10 11:07:47 -04:00
Clebert Suconic 579d6226aa ARTEMIS-671 Returning messages after connection killed, and validating usage of reconnect 2016-08-09 11:23:46 +01:00
Howard Gao 0535218cfc ARTEMIS-604 - Message Serialization Improvement
- JMS and RA fixes
2016-08-09 11:22:48 +01:00
jbertram 3914f1aa8b ARTEMIS-647 track 'killed' msg count on queue
A 'killed' message is one that has been sent to a dead-letter address
or otherwise removed from the queue due to exceeding the max delivery
attempts.
2016-07-27 16:44:59 -04:00
jbertram 32abe61876 ARTEMIS-646 track expired msg count on queue 2016-07-26 16:15:02 -05:00
jbertram e9db9c286d ARTEMIS-628 add BROWSE role 2016-07-12 16:21:57 -05:00
barreiro b8d6a374a0 More changes on the reclaimer for better performance 2016-07-05 23:28:00 -04:00
Howard Gao 109ce6ded9 ARTEMIS-571 Fix issues in openwire testsuite
* Redelivery count fix
* Regression in BrokerTest
2016-06-17 14:58:54 -04:00
Ville Skyttä 3923ae45f4 Fix checkstyle redundant modifier violations 2016-06-13 20:03:54 +03:00
Ville Skyttä e493748040 Fix checkstyle curly brace violations 2016-06-13 18:21:43 +03:00
Clebert Suconic 2e6586548b ARTEMIS-552 Replication target being finished can lead to instability on live
https://issues.apache.org/jira/browse/ARTEMIS-552
2016-06-06 16:28:51 -04:00
Clebert Suconic 10dfe97ec0 Adding JORAM Tests for AMQP with a few fixes around the protocol manager for JMS 2016-05-25 09:41:40 -04:00
Clebert Suconic 3e2adf123b ARTEMIS-524 Paging could lose data eventually after crashes
https://issues.apache.org/jira/browse/ARTEMIS-524

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

The fix will be highlited by the tests added on org.apache.activemq.artemis.tests.integration.client.PagingTest
2016-05-17 20:28:40 -04:00
Erich Duda a622fa7443 ARTEMIS-518 - Improvement of default thread factory 2016-05-09 14:33:41 -04:00
Howard Gao 3012447404 ARTEMIS-488 Fix OpenWire Test (Temp Queue removal and others)
Temp Queue not deleted when connection is closed.
Enable Stomp in openwire test because some test uses it.
Remove unused code in opwnwire
Wrong XA error code returned when xid is missing
(ActiveMQXAConnectionFactory.testRollbackXaErrorCode)
regression in ActiveMQSslConnectionFactoryTest (SSL related)
2016-04-20 12:33:01 -04:00
jbertram 30907ffd8c ARTEMIS-400 allow SSL store reload 2016-04-18 17:51:46 -04:00
Clebert Suconic 3aedf27386 ARTEMIS-463 More simplifications on the openwire head
https://issues.apache.org/jira/browse/ARTEMIS-463

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

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

This was a team effort from Clebert Suconic and Howard Gao
2016-04-04 11:08:43 -05:00
Clebert Suconic 2e66673048 ARTEMIS-463 Improvement to the openwire testsuite
https://issues.apache.org/jira/browse/ARTEMIS-463

This was a team effort from Clebert Suconic and Howard Gao
2016-04-04 11:08:43 -05:00
jbertram 32ce8710fc ARTEMIS-445 avoid NPE on null ks password 2016-03-21 18:35:21 -04:00
Ville Skyttä 7c275cdb1a Use generics more 2016-02-28 01:06:59 +02:00
Clebert Suconic 9ebc6786b6 ARTEMIS-401 Refactoring Acceptors and ProtocolManager to support parameters
https://issues.apache.org/jira/browse/ARTEMIS-401
2016-02-18 10:14:26 -06:00
jbertram 1eb631e2b8 ARTEMIS-374 support schedule messages on LVQ 2016-02-01 11:58:56 -06:00
Martyn Taylor 9b351d8236 ARTEMIS-27 / ARTEMIS-338 Refactor Journal Encodings into new package 2016-01-13 09:38:08 -05:00
Ville Skyttä 66e82be652 Remove dead code 2016-01-11 13:21:26 -05:00
Clebert Suconic 7820fd6d60 ARTEMIS-332 avoid shutting down the server after interrupted threads on paging 2016-01-07 16:08:38 -05:00
Clebert Suconic 96849a42b7 ARTEMIS-332 - Duplicate delivery over Bridges under OME scenarios, paging and other failures
https://issues.apache.org/jira/browse/ARTEMIS-332
2016-01-04 20:49:28 -05:00
Ville Skyttä a0dc9861a0 Access static members directly 2015-12-21 22:01:21 -05:00
Ville Skyttä 93a53e1cda Fix UUIDGenerator.getHardwareAddress on recent Java versions
Enable related tests on all Java versions and drop < 1.7 support code.
2015-12-21 21:47:15 -05:00
Clebert Suconic af1f79bff5 ARTEMIS-302 more changes around XA reliability (resilience on failures) 2015-12-16 10:19:35 -05:00
Clebert Suconic 351bcfc9f9 ARTEMIS-319 Improving files allocation and implementing journal-pool-files
https://issues.apache.org/jira/browse/ARTEMIS-319
2015-12-10 16:49:58 -05:00
Ville Skyttä f8a1c5ba8e Remove redundant type arguments 2015-12-07 22:55:05 +02:00
Ville Skyttä 25ae472455 Add missing @Override annotations 2015-12-06 01:27:35 +02:00
Clebert Suconic 7bbd17cd37 ARTEMIS-302 - Improving XA Resilience 2015-11-11 09:50:58 -05:00
Clebert Suconic 9a2bebe443 ARTEMIS-297 Including acceptor name on logs 2015-11-04 22:54:12 -05:00
jbertram 0c407922a8 ARTEMIS-261 cert-based auth 2015-11-04 15:56:33 -05:00
Andy Taylor b73e61ac52 ARTEMIS-292 - fix isSameHost on TransportConfiguration
Ive renamed the current isSameHost method to isSameparams as thats what it checked and added a new method for isSameHost that checks the appropriate params for the connector. Ive changed ClientSessionFactoryImp to use this to correct the behaviour.

https://issues.apache.org/jira/browse/ARTEMIS-292
2015-11-03 10:29:31 -05:00
Martyn Taylor 62262805ab ARTEMIS-291 Allow multiple acceptors with same host/port 2015-11-02 12:42:49 +00:00
Clebert Suconic 487d976760 ARTEMIS-277 IncompatibleVersionTest fails on slower machines
This closes #216
2015-10-26 10:49:49 -04:00
Clebert Suconic 2a81a5f146 ARTEMIS-252 retryMessages retrying to topic subscriptions + some ammends to #193 2015-10-12 17:03:53 -04:00
Clebert Suconic 206acdac7d ARTEMIS-238 and ARTEMIS-236 Fixing Legacy protocol support 2015-10-08 20:32:43 -04:00
Clebert Suconic 490662923c fixing checkstyle on example 2015-09-11 10:16:34 -04:00
jbertram 7a1199c475 ARTEMIS-210 outbound RA connection load-balancing
Inbound sessions are always created from the same ActiveMQConnectionFactory
which means the load-balancing policy is applied to them in the expected
manner. However, outbound sessions are created from independent, unique
ActiveMQConnectionFactory instances which means that the load-balancing
doesn't follow the expected pattern.

This commit changes this behavior by caching each unique
ActiveMQConnectionFactory instance and using it for both inbound and outbound
sessions potentially. This ensures the sessions are load-balanced as
expected.
2015-08-24 18:24:04 -05:00
Clebert Suconic bac96047f5 automatic checkstyle change
this is just calling Idea format on all the files using the new style
I am separating manual changes from automatic changes in case I have to repeat the manual changes again
2015-08-10 09:26:42 -04:00
Clebert Suconic 6fe9e0ebd6 ARTEMIS-163 First pass on the native AIO refactoring
https://issues.apache.org/jira/browse/ARTEMIS-163

On this pass I'm just converting the native layer to a simpler one.
It wasn't very easy to change the alignment at the current framework,
so I did some refactoring simplifying the native layer

The volume of the nubmer of changes here is because:

- The API is changed, we now don't close the libaio queue between files
- The native layer won't use malloc as much as it used to, saving some CPU and memory defragmentation
- I organized the code around nio and libaio
2015-07-29 22:12:03 -04:00
Ville Skyttä b0a80ce1be Spelling fixes 2015-07-09 10:41:03 -04:00
Martyn Taylor 19dc0594e5 Set default password properly in security manager
The current Security Manager implementation was returning the username
instead of the default password when validating  the default user.

This patch returns the correct value and cleans up the validate method.
2015-07-08 16:25:11 +01:00
Clebert Suconic ff6cd8d18f Fixing test that was using reflection by exposing a few properties on the RemotingServiceImpl 2015-06-22 09:46:15 -04:00
jbertram aa5ff90807 ARTEMIS-141 Move classloading into ServiceRegistry 2015-06-22 09:04:24 -04:00
Clebert Suconic 4388923527 ARTEMIS-139 data.folder related to artemis
https://issues.apache.org/jira/browse/ARTEMIS-139

I'm using the constructors on File(parent, filename) now with the home directory
2015-06-17 14:10:54 -04:00
Clebert Suconic 07f9fe4e7b [ARTEMIS-138] list will return empty list now on non existent folders
https://issues.apache.org/jira/browse/ARTEMIS-138

The list method should return an empty list in case of non existent folders,
So this would unveil whatever is the cause for non existent folders at the next level where it's happening
2015-06-16 14:38:53 -04:00
John D. Ament 8aa598f594 ARTEMIS-91 Separated out interface for ServiceRegistry. Provided a getter in the ActiveMQServer interface. 2015-06-10 22:48:48 -04:00
Tomas Hofman 72354ee38f ARTEMIS-135 - Fix on journal load
https://issues.apache.org/jira/browse/ARTEMIS-135

This is importing a recent fix from the journal on the old version.
If a crash happened between the create file and the fill of the file the
file wouldn't be loaded and the server wouldn't start until you removed the offending file
2015-06-10 20:29:45 -04:00
Clebert Suconic 309ce4324c Fixing javadoc and removing the -Xdoclint option from the pom.xml
Also, since JDK 1.8 is no longer required I'm downgrading the JDK to 1.7 minimal.
We can review that back to 1.8 when we really need 1.8 features.
2015-06-09 22:13:11 -04:00