Commit Graph

206 Commits

Author SHA1 Message Date
Clebert Suconic b1b4bb8a32 ARTEMIS-320 Refactoring TCP flow control and proper implementation of flow control on consumers
https://issues.apache.org/jira/browse/ARTEMIS-320
2015-12-10 16:50:26 -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
Tom Ross d7f245f1ca NullPointerException when trying to list prepared transactions as JSON - part 2 2015-12-10 16:38:44 -05:00
Ville Skyttä 7bf3923cee Remove unnecessary @SuppressWarnings("unchecked") 2015-12-07 22:55:05 +02:00
Ville Skyttä f8a1c5ba8e Remove redundant type arguments 2015-12-07 22:55:05 +02:00
Ville Skyttä 3b5ee6c7ea Remove unnecessary casts 2015-12-07 22:53:42 +02:00
Tom Ross f29ab83727 NullPointerException when trying to list prepared transactions as JSON 2015-12-07 13:48:01 -05:00
Ville Skyttä 25ae472455 Add missing @Override annotations 2015-12-06 01:27:35 +02:00
Andy Taylor b34ee8717f ARTEMIS-305 - fixing colocated configuration can have mismatch of policies
https://issues.apache.org/jira/browse/ARTEMIS-305
2015-11-25 09:45:39 +00:00
Christian Schneider be9dad3f2b OSGi support based on branch from gnodet 2015-11-24 11:12:10 +01:00
jbertram 956c54155f ARTEMIS-201 warn of potential OOME 2015-11-23 21:42:15 -05:00
jbertram c0a6d6ee44 ARTEMIS-250 fix scale-down with security 2015-11-20 19:34:37 -06:00
Clebert Suconic b1d5076108 ARTEMIS-302 - more work about improving resilience of MDBs and XA 2015-11-16 18:11:44 -05:00
jbertram c40ab12843 ARTEMIS-300 deprecate basic security manager
The old property-file based security manager shouldn't be used anymore. Instead
use the JAAS InVMLoginModule for in-vm tests, embedded use-cases, etc. and use
the other JAAS login modules for normal server use-cases.
2015-11-11 14:17:46 -06:00
Clebert Suconic 7bbd17cd37 ARTEMIS-302 - Improving XA Resilience 2015-11-11 09:50:58 -05:00
Clebert Suconic a21a447b4c ARTEMIS-301 - Fixing concurrent issues over closing consumer during failover and reconnect 2015-11-10 14:29:34 -05:00
jbertram ae70d7178e ARTEMIS-299 file-based login module performance
This is based on improvements made in ActiveMQ 5.x. See more at
https://issues.apache.org/jira/browse/AMQ-5876.
2015-11-05 10:10:49 -06:00
Martyn Taylor 0a87410b1b Use .equals for string compare in LDAPLoginModule 2015-11-05 11:07:03 -05:00
Clebert Suconic 9a2bebe443 ARTEMIS-297 Including acceptor name on logs 2015-11-04 22:54:12 -05:00
Martyn Taylor 046c3b1942 ARTEMIS-297 Handle Exceptions during server stop
Stopping the server should be able to handle exceptions thrown by
individual components.  Before this patch the stop method would throw
any raised exception and exit.  This can lead to partial shutdowns of
the server resulting in leaking threads.  This patch catches any
component exceptions and logs an appropriate error message, allowing the
server to properly shutdown.
2015-11-04 21:30:08 -05:00
jbertram 0c407922a8 ARTEMIS-261 cert-based auth 2015-11-04 15:56:33 -05:00
Martyn Taylor 856d7644ad ARTEMIS-296 Remove stacktrace from bridge disconnect log 2015-11-04 10:23:58 -05:00
Martyn Taylor 1cdc01fc44 ARTEMIS-295 Remove 'yet' from log messages 2015-11-04 14:49:11 +00:00
jbertram 3f6089891d ARTEMIS-293 rebalance inflow on topology change 2015-11-03 16:42:15 -06:00
Ville Skyttä 68c9f3fd69 Spelling fixes 2015-11-03 10:30:40 -05:00
Martyn Taylor 62262805ab ARTEMIS-291 Allow multiple acceptors with same host/port 2015-11-02 12:42:49 +00:00
jbertram 43b421a588 ARTEMIS-289 potential ConcurrentModificationException 2015-10-29 13:41:29 -05:00
jbertram fe4dafedcb ARTEMIS-168 - pluggable authorization 2015-10-27 10:12:22 -04:00
jbertram d03541a460 Fix incorrect ID on WARN message 2015-10-27 10:12:21 -04:00
Andy Taylor dd402f4f91 ARTEMIS-282 - remove unneeded check on file lock creation
https://issues.apache.org/jira/browse/ARTEMIS-282
2015-10-27 10:10:57 +00:00
Clebert Suconic 15b8b8138b Improving forceGC method on ActiveMQTestBase 2015-10-26 11:02:53 -04:00
Erich Duda 7970b6e6f8 SessionCloseOnGCTest#testCloseOneSessionOnGC: enforce that Finalizer will be called after garbage collector 2015-10-26 10:53:48 -04:00
Ville Skyttä 86b89306d7 Improve "protocol property is deprecated" message, use constants in it 2015-10-25 09:42:57 +02:00
Ivo Studensky 8a2ecff4fd ARTEMIS-274 ActiveMQThreadFactory has to be constructed within doPrivileged block 2015-10-22 09:30:14 -04:00
Clebert Suconic 9a98684846 ARTEMIS-197 fixing examples by using proper location on folders 2015-10-21 16:43:10 -04:00
Martyn Taylor 6aae2cc5f1 ARTEMIS-273 Use data locations not dir in moveData 2015-10-21 11:54:41 +01:00
Julian Scheid aa492fb9b6 ARTEMIS-271 Expose HttpRequest in WebSocketServerHandler 2015-10-20 18:24:09 -04:00
Julian Scheid aa7696e329 ARTEMIS-270 Supply RemotingConnection for authorization 2015-10-20 18:23:41 -04:00
jbertram ef5a9809f2 ARTEMIS-256 orchestrate failback deterministically
The failback process needs to be deterministic rather than relying on various
incarnations of Thread.sleep() at crucial points. Important aspects of this
change include:

1) Make the initial replication synchronization process block at the very
last step and wait for a response from the replica to ensure the replica has
as the necessary data. This is a critical piece of knowledge during the
failback process because it allows the soon-to-become-backup server to know
for sure when it can shut itself down and allow the soon-to-become-live
server to take over. Also, introduce a new configuration element called
"initial-replication-sync-timeout" to conrol how long this blocking will occur.

2) Set the state of the server as 'LIVE' only after the server is fully
started. This is necessary because once the soon-to-be-backup server shuts
down it needs to know that the soon-to-be-live server has started fully before
it restarts itself as the new backup. If the soon-to-be-backup server restarts
before the soon-to-be-live is fully started then it won't actually become a
backup server but instead will become a live server which will break the
failback process.

3) Wait to receive the announcement of a backup server before failing-back.
2015-10-20 14:55:31 -04:00
Andy Taylor 98c2aa433f ARTEMIS-262 Fix Bridge OOM exception
Netty 4.x uses pooled buffers.  These buffers can run out of memory when
transferring large amounts of data over connection.  This was causing an
OutOfMemory exception to be thrown on the CoreBridge when tranferring
large messages.  Netty provides a callback handler to notify listeners
when a Connection is writable.  This patch adds the ability to register
connection writable listeners to the Netty connection and registers the
relevant callback from the Bridge to avoid writing when the buffers are
full.
2015-10-19 10:32:59 +01:00
Clebert Suconic 360338a362 NO-JIRA making sure there wouldn't be duplicates out of transaction timeout 2015-10-17 00:26:44 -04:00
Clebert Suconic 6bf1241628 ARTEMIS-257 cleaning up dependencies on artemis-core-client 2015-10-13 10:44:49 -04:00
Clebert Suconic a5fab2754d ARTEMIS-252 fixing tests 2015-10-12 17:21:36 -04:00
Clebert Suconic 2a81a5f146 ARTEMIS-252 retryMessages retrying to topic subscriptions + some ammends to #193 2015-10-12 17:03:53 -04:00
Petter Nordlander 7afe87996b ARTEMIS-252 added jmx operations to retry messages 2015-10-12 17:03:42 -04:00
jbertram 6ed9c5ae91 ARTEMIS-74 import JAAS auth from 5.x
This change allows the use of JAAS login modules for basic authentication
and authorization.
2015-10-09 11:42:22 -05:00
Clebert Suconic 206acdac7d ARTEMIS-238 and ARTEMIS-236 Fixing Legacy protocol support 2015-10-08 20:32:43 -04:00
Andy Taylor 35ab56fd91 ARTEMIS-244 - fixed property name
https://issues.apache.org/jira/browse/ARTEMIS-244
2015-10-08 12:15:21 +01:00
Andy Taylor 38a809fded ARTEMIS-243 - fix possible null pointer
https://issues.apache.org/jira/browse/ARTEMIS-243
2015-10-08 12:15:21 +01:00
Clebert Suconic 4eb669f035 ARTEMIS-151 avoiding duplicate config of acceptors 2015-10-07 22:07:05 -04:00
Clebert Suconic c3448e7029 ARTEMIS-151 Fixing tests 2015-10-07 18:48:26 -04:00
Julian Scheid fe16ffe068 ARTEMIS-227 allow adding STOMP interceptor instances 2015-09-25 14:56:26 -04:00
Julian Scheid f64c435727 ARTEMIS-228 accept binary WebSocket frames 2015-09-25 14:37:21 -04:00
Julian Scheid 6890f126cb ARTEMIS-229 validate user and role with address 2015-09-25 15:58:15 +02:00
Clebert Suconic 4cdcc618ff ARTEMIS-232 Fixing logs 2015-09-24 22:31:29 -04:00
Clebert Suconic fcdfbdb82e ARTEMIS-231 fixing wrong notification exceptions 2015-09-24 22:31:28 -04:00
Martyn Taylor bb2c890803 [maven-release-plugin] prepare for next development iteration 2015-09-15 15:43:44 +01:00
Martyn Taylor 63ea448728 [maven-release-plugin] prepare release 1.1.0 2015-09-15 15:41:37 +01:00
Martyn Taylor 6408fd0357 [maven-release-plugin] prepare for next development iteration 2015-09-11 19:01:57 +01:00
Martyn Taylor c512f12a34 [maven-release-plugin] prepare release 1.1.0 2015-09-11 19:01:19 +01:00
Clebert Suconic 1add10abfd ARTEMIS-223 Testcase replicating issue 2015-09-11 13:21:50 -04:00
Martyn Taylor fec6546480 [maven-release-plugin] prepare for next development iteration 2015-09-08 16:39:59 +01:00
Martyn Taylor 4d0b15b043 [maven-release-plugin] prepare release 1.1.0 2015-09-08 16:29:09 +01:00
Clebert Suconic cc88be51e4 ARTEMIS-219 fixing path resolution for windows
https://issues.apache.org/jira/browse/ARTEMIS-219

The fix will basically use Path.resolve insead of URI.resolve
2015-09-08 10:29:29 -04:00
Martyn Taylor 82f6a88d59 [maven-release-plugin] prepare for next development iteration 2015-09-07 10:02:01 +01:00
Martyn Taylor 8c1e0e15fc [maven-release-plugin] prepare release 1.1.0 2015-09-07 10:01:10 +01:00
Martyn Taylor a2aa18c123 [maven-release-plugin] prepare for next development iteration 2015-09-04 20:20:13 +01:00
Martyn Taylor a5decb659e [maven-release-plugin] prepare release 1.1.0 2015-09-04 20:19:11 +01:00
Martyn Taylor 4576ccea08 [maven-release-plugin] prepare for next development iteration 2015-09-04 19:48:52 +01:00
Clebert Suconic 90d05bb17d Improving openwire tests on the integration-testsuite
In one situation I have seen a failrue on ProducerFlowControl to break everything else from here
This change will both avoid the failure and change the report of leaked threads so we can find them easily on the system.out when it happens (for future debugging)
2015-09-03 19:16:19 -04:00
jbertram ea9609c579 ARTEMIS-211 Memory leak using wildcard topic 2015-09-02 15:47:00 -05:00
Clebert Suconic 511bfc7e15 ARTEMIS-187 Hold lock between server running and data tools to avoid data damaged 2015-08-31 17:38:43 -04:00
Clebert Suconic 8d98fc395f Refactoring Auth
this is doing some refactoring, making the SecurityStore mechnism possible to be reused on other protocols,
without forcing them to implement ServerSession on checks that won't fit the Server Model from Artemis
2015-08-28 15:04:59 -04:00
Clebert Suconic 8935483cdd ARTEMIS-208 fixing BrokerInfo, using OpenWire connection instead of static property on the protocolManager 2015-08-24 22:54:59 -04:00
Howard Gao 34e127cc0c ARTEMIS-208 BrokerInfo issue, also:
enlarged the default max size for tests to avoid send blocking.
2015-08-24 22:54:12 -04:00
Clebert Suconic 0771ba511c Improving bootstraping / CLI
- Added a method on Bootstrap class that could be used on embedding a server
2015-08-24 21:30:03 -04:00
Clebert Suconic 030f2fc59a Revert "ARTEMIS-187 hold lock between live server and tools"
This reverts commit f0f4f1684d.

Sorry about this.. I will rework this and send a commit again
2015-08-14 01:02:39 -04:00
Clebert Suconic 154e9d610d fixing tests 2015-08-14 00:44:39 -04:00
Clebert Suconic f0f4f1684d ARTEMIS-187 hold lock between live server and tools
This should avoid users damaging data while the server is running (by for instance running compact while the server is running)

https://issues.apache.org/jira/browse/ARTEMIS-187
2015-08-13 23:57:49 -04:00
Clebert Suconic 1dae99746b ARTEMIS-204 Improvements on OpenWire
https://issues.apache.org/jira/browse/ARTEMIS-204

by consequence this will also fix any possible issues with AMQP
2015-08-13 20:39:01 -04:00
jbertram 231079b8be Fix apostrophes in logging statements 2015-08-12 10:25:14 -05:00
jbertram 3bb88c60ca ARTEMIS-179 fix scale-down 2015-08-10 10:23:30 -05:00
jbertram 682cad63f3 ARTEMIS-179 Do not reconnect bridge on DISCONNECT
Note: this breaks scale-down because the bindings are removed.
2015-08-10 10:22:21 -05:00
Clebert Suconic 5ac2c2444b manual checkstyle changes 2015-08-10 10:08:23 -04: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 138bfe9682 Removing 'created by' comments 2015-08-07 15:17:24 -04:00
Andy Taylor 81756739bb ARTEMIS-186, ARTEMIS-188 and some refactoring
refactoring and simplifying some of the connection state code and removing stuff we dont need. Also removed some of maps used and removed the need for lots of lookups

https://issues.apache.org/jira/browse/ARTEMIS-186

Added message pull support for zero prefetch consumers

https://issues.apache.org/jira/browse/ARTEMIS-188

Added consumer flow control
2015-08-06 09:49:46 +01:00
Ryan Emerson 699a7ca7ef [ARTEMIS-147] Add WARN log when setting connection-ttl OR connection-ttl-override equal to check-period.
Now works when ARTEMIS is deployed in an application server as well as standalone.
2015-08-05 08:59:40 -04:00
Clebert Suconic 7cfc33790d ARTEMIS-162 Fix non serializable JGroups on Configuration clone used on Colocated support
https://issues.apache.org/jira/browse/ARTEMIS-162
2015-08-03 23:39:35 -04:00
jbertram fc14e31aa7 ARTEMIS-179 excessive cluster bridge retry logging
The information about the bridge connection retries is already logged
at DEBUG level elsewhere and a WARN message is already logged when the
connection dies in the first place. I don't see any good reason to
keep this logging here.
2015-08-03 08:24:28 -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
Clebert Suconic d002da8506 mqtt improvement over retained queue 2015-07-27 10:32:20 -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
Ryan Emerson 6b13b3bf97 Add WARN log when setting connection-ttl OR connection-ttl-override equal to check-period. 2015-06-29 09:54:29 +01:00
Clebert Suconic aa4a06329f [ARTEMIS-144] adding Browse and a few other improvements 2015-06-25 15:02:05 -04:00
jbertram bf9f6d213b ARTEMIS-104 missing i18n warns 2015-06-24 14:05:40 -05:00
jbertram 7c066c0ee4 ARTEMIS-105 forceFailover always throws exception 2015-06-24 09:47:13 -05:00
Clebert Suconic 077a416ee0 Improving up time of some tests 2015-06-23 16:35:44 -04:00
Otavio Rodolfo Piske f47d1bd15a ARTEMIS-129 removes empty package-info.java files
As describes in ARTEMIS-129, performs a small cleanup on the codebase by removing empty package-info.java files.
2015-06-23 10:50:13 -04:00