1862 Commits

Author SHA1 Message Date
Francesco Nigro
b10d765139 ARTEMIS-2602 load surviving records into SparseArrayLinkedList 2020-01-17 14:31:52 -05:00
Clebert Suconic
1a6c4e5c62 ARTEMIS-2603 Deadlock between pageStore.getCurrentID and page.cleanup
This happened when JournalStorageManager.startReplication and PageStore.cleanup were called between multiple threads.
2020-01-17 11:39:30 -05:00
Clebert Suconic
bbe9f9adce NO-JIRA Adding test name into temporary folder name directory
This is to make it possible to identify what test is leaking files whenever that is happening.
That is because future tests will report the leaks, and it's difficult to identify where it happened.

Also i'm changing NoProcessFilesBehind to show the getOpenFD propertly
2020-01-13 09:39:51 -05:00
Justin Bertram
97735ca72c [maven-release-plugin] prepare for next development iteration 2020-01-10 09:00:58 -06:00
Justin Bertram
25a947f6cb [maven-release-plugin] prepare release 2.11.0 2020-01-10 08:57:46 -06:00
Clebert Suconic
e397a17796 ARTEMIS-2592 Fixing DeadLock between deleteMessages and depage
This was happening through purge
2020-01-09 19:41:14 -06:00
yang wei
3e20906a49 NO-JIRA typo on logger 2020-01-09 15:21:29 -06:00
Justin Bertram
9e9c0778b1 ARTEMIS-2516 support sys props in xinclude href 2020-01-09 14:04:09 -05:00
Clebert Suconic
534d8b4719 NO-JIRA Happy new year! 2020-01-08 20:44:05 -05:00
Justin Bertram
0293d80574 NO-JIRA support 0 in human readable byte calculation 2020-01-08 12:37:30 -06:00
Wei Yang
0e6a1dee47 ARTEMIS-2584 Optimize PageTransactionInfoImpl in-memory size 2020-01-08 12:39:14 -05:00
Justin Bertram
1ad8b3c059 ARTEMIS-2590 support com.sun.jndi.ldap.read.timeout in LDAPLoginModule 2020-01-08 12:38:27 -05:00
Justin Bertram
6a290cf2b2 ARTEMIS-2591 add details to consumer lock timeout log 2020-01-08 12:31:15 -05:00
Justin Bertram
59e7db8925 ARTEMIS-2567 redundant lock on server.lock file 2020-01-08 14:04:43 +08:00
Christopher L. Shannon (cshannon)
fe66506139 ARTEMIS-2565 - Add plugin support for Federated Queues/Addresses
Add a new interface called ActiveMQServerFederationPlugin to allow
customization of the federated queue/address feature of the broker
2020-01-06 06:38:35 -05:00
Dewald Pretorius
9fac4b866c ARTEMIS-2550 Support Websocket Continuation Frames
Large messages can be split up using Websocket Continuation Frames.
This allows for much smaller buffer sizes to send or receive
potentially very large messages.
2020-01-02 20:36:35 -06:00
Clebert Suconic
13278cc45f ARTEMIS-2581 Duplicate Detection on AMQP should be configurable
There is an optimization in AMQP, that properties are only parsed over demand.

It happens that after ARTEMIS-2294 (commit 2dd06716989820eeecad7f39faabfbb8f025f7f1),
every send would request for the property on the message, resulting the properties to always be parsed upon send.
Even when there's no use of application properties.
2019-12-19 17:54:21 -05:00
Justin Bertram
8d8eaebb65 ARTEMIS-2580 support pluggable SSL TrustManagerFactory 2019-12-19 17:53:52 -05:00
Justin Bertram
2a452bd7a3 ARTEMIS-2578 clarify storage capacity messages
This is a surprisingly large change just to fix some log messages, but
the changes were necessary in order to get the relevant data to where it
was being logged. The fact that the data wasn't readily available is
probably why it wasn't logged in the first place.
2019-12-17 20:27:10 -05:00
Wei Yang
9c928377c9 NO-JIRA minor changes on test 2019-12-17 09:40:31 -05:00
Justin Bertram
c06404406c ARTEMIS-2574 allow security manager config via XML
The test-suite has long used the broker's ability to configure the
security manager. This commit implements this functionality via XML
configuration.
2019-12-12 15:48:43 -05:00
Clebert Suconic
747c8dca71 ARTEMIS-2549 Removing duplicate definition of attribute 2019-12-11 13:50:13 -05:00
sebthom
51eb01e88e NO-JIRA Minor code improvement in QueueImpl
Removed unused private constant FLUSH_TIMEOUT.
Solved some compiler warnings (missing generic type, private class can
be final). Fixed a performance related sevntu checkstyle warning
"Variable 'xyz' can be moved inside the block at line '2,864' to
restrict runtime creation.".
2019-12-11 10:18:43 -05:00
brusdev
b666cb495b ARTEMIS-2572 The retryMessages remove all paged messages
Add a paged message to the tail, when the QueueIterateAction doesn't handle it, to avoid removing unhandled paged message. Move the refRemoved calls from the QueueIterateActions to the iterQueue to fix the queue stats.
2019-12-10 13:00:16 +01:00
Sebastian Thomschke
3ad8391e9b
ARTEMIS-2570 Improve performance of ConnectionsView 2019-12-06 11:55:48 +01:00
Wei Yang
9ce8cad970 NO-JIRA close page after recovering page counter 2019-12-05 16:52:58 -05:00
Justin Bertram
04db90edde ARTEMIS-2567 restore locking semantics on server.lock when reading status 2019-12-05 11:39:11 -06:00
Clebert Suconic
108ee5d24b NO-JIRA Fixing intermittent failure 2019-12-03 16:25:00 -05:00
Justin Bertram
8614ca1167 ARTEMIS-2564 retryMessages incorrectly removes msgs 2019-12-03 14:24:01 -05:00
Clebert Suconic
0b1afd35dc ARTEMIS-2421 Using ActiveMQScheduledComponent 2019-11-26 16:15:06 -05:00
Bas Elzinga
e12f3ddc6f ARTEMIS-2421 periodic journal lock evaluation
If a broker loses its file lock on the journal and doesn't notice (e.g.
network connection failure to an NFS mount) then it can continue to run
after its backup activates resulting in split-brain.

This commit implements periodic journal lock evaluation so that if a live
server loses its lock it will automatically restart itself.
2019-11-26 11:14:56 -05:00
Clebert Suconic
506c03a884 ARTEMIS-2559 Clear Transaction out of ResourceManager in case of failure 2019-11-22 10:30:29 -05:00
brusdev
9946d8e63c ARTEMIS-2538 Removing all messages from a huge queue causes OOM
The PageSubscriptionImpl.cleanupEntries could be locked by the queue
depage because they are executed with the same executor and the depage
could be locked by the iterQueue.
If PageSubscriptionImpl.cleanupEntries is locked, no one clean up the
JournalRecord and PagePositionImpl instances created during iterQueue.
So removing all messages from a huge queue, causes the retention of too
JournalRecord and PagePositionImpl instances until an OOM.
To avoid to lock the PageSubscriptionImpl.cleanupEntries the depage is
executed only if the queue isn't iterating.
2019-11-22 10:10:16 -05:00
Clebert Suconic
91cbbb8698 ARTEMIS-2559 Connection failure should rollback pending XA TX 2019-11-21 17:52:45 -05:00
Christopher L. Shannon (cshannon)
fb54707e2d ARTEMIS-2549 - Add Downstream support to Federation
This commit introduces the ability to configure a downstream connection
for federation.  This works by sending information to the remote broker
and that broker will parse the message and create a new upstream back
to the original broker.
2019-11-20 08:47:16 -05:00
Andy Taylor
0ab75b9968 ARTEMIS-2554 - Queue control browse broken with large messages
https://issues.apache.org/jira/browse/ARTEMIS-2554
2019-11-18 10:36:18 +00:00
michael.pearce
f6401d81b5 ARTEMIS-2547 fix AMQP Client reconnect fails on broker stop start
Add unit test
Add fix to clear clientids when server is stopped.
2019-11-11 12:33:13 +00:00
sebthom
54daa445ed ARTEMIS-2541 Improve message browser of Admin UI 2019-11-08 12:31:50 +01:00
sebthom
318c26cde7 ARTEMIS-2540 Display LargeMessage column in message browser of admin UI 2019-11-05 20:02:51 -05:00
brusdev
f680d9f712 ARTEMIS-2466 PageSyncTimer::timeSync isn't configurable using ASYNCIO
Add the config parameter `page-sync-timeout` to set a customized value,
because if the broker is configured to use ASYNCIO journal, the timeout
has the same value of NIO default journal buffer timeout ie 3333333.
2019-11-05 22:44:52 +01:00
brusdev
83e2595618 ARTEMIS-2534 Deleting addresses auto created on configuration reload
Skip the deletion of address's and queue's auto created on configuration
reload.
2019-11-05 16:05:27 -05:00
brusdev
55a55daa7b ARTEMIS-2538 Removing all messages from a huge queue causes OOM
The iterQueue transaction commits are locked by the synchronization
context. So removing all messages from a huge queue causes the creation
of too locked transactions for the paged messages and so OOM.
The iteration on paged message is executed out the iterQueue
synchronization context to avoid to lock the transaction commits.
2019-11-05 16:04:08 -05:00
Joshua Smith
d7d11a0c6f ARTEMIS-2535 Add ignorePartialResultException option to LDAPLoginModule
Active Directory servers are unable to handle referrals automatically.
This causes a PartialResultException to be thrown if a referral is
encountered beneath the base search DN, even if the LDAPLoginModule is
set to ignore referrals.

This option may be set to 'true' to ignore these exceptions, allowing
login to proceed with the query results received before the exception
was encountered.

Note: there are no tests for this change as I could not reproduce the
issue with the ApacheDS test server. The issue is specific to directory
servers that don't support the ManageDsaIT control such as Active
Directory.
2019-10-30 13:47:50 -07:00
Justin Bertram
0ddd55b2cc NO-JIRA add acceptor to handshake timeout msg 2019-10-29 14:37:57 -04:00
Justin Bertram
84067d8fef ARTEMIS-2504 implement retroactive addresses
A new feature to preserve messages sent to an address for queues that will be
created on the address in the future. This is essentially equivalent to the
"retroactive consumer" feature from 5.x. However, it's implemented in a way
that fits with the address model of Artemis.
2019-10-28 09:01:42 -04:00
Justin Bertram
c0e77e96d1 ARTEMIS-2529 update address-settings mngmnt 2019-10-28 09:01:42 -04:00
Christopher L. Shannon (cshannon)
ad0581bf76 ARTEMIS-2531: Fix filter in FederatedQueue to prevent infinite consumer
creation in a circular or bidrectional setup
2019-10-25 14:26:46 -04:00
Christopher L. Shannon (cshannon)
1aed3f9dd6 ARTEMIS-2526 - Update ActiveMQServerImpl to call correct
beforeDestroyQueue hook
2019-10-24 16:20:08 -04:00
brusdev
0ac605740e ARTEMIS-2503 Improve wildcards for the authorisation key attributes
Improve wildcard support for the key attribute in the roles access
match element and whitelist entry element, allowing prefix match for
the mBean properties.
2019-10-23 15:27:53 -04:00
Wei Yang
89698b9dbc ARTEMIS-2524 Remove message from map in LVQ if it's deleted/moved/expired/changed 2019-10-21 20:46:13 -04:00