Commit Graph

572 Commits

Author SHA1 Message Date
gtully 10a74ce737 https://issues.apache.org/jira/browse/AMQ-5943 - patch, with test, applied with thanks to Torsten Mielke 2015-08-25 12:07:02 +01:00
gtully 11579bb918 https://issues.apache.org/jira/browse/AMQ-5938 - add remove(messageId) op to offline durable subs jmx view 2015-08-21 13:17:09 +01:00
gtully 3c2ed9352b AMQ-5933 - add test and fix 2015-08-19 15:02:41 +01:00
gtully ffdaeb2bd1 AMQ-5920 - make using a vt transaction configurable, a transaction negates concurrentstoreanddispatch and imposes local 2pc on mKahadb so needs to be off by default 2015-08-17 15:35:36 +01:00
Christopher L. Shannon (cshannon) 3c358b32fd AMQ-5889 - refactoring and cleanup 2015-08-13 15:49:50 +00:00
Christopher L. Shannon (cshannon) e14aca871c https://issues.apache.org/jira/browse/AMQ-5889
-Cleaned up missing license headers and refactored packages.
-Added configuration options for a protocol detection timeout and
for the max number of connections accepted at the same time.
-Fixed a regression with connection counts
-Also added some more tests
2015-08-13 14:41:29 +00:00
Christopher L. Shannon (cshannon) 04ee70a161 https://issues.apache.org/jira/browse/AMQ-5889
Adding support for auto detection of wire protocols over a transport.
OpenWire, AMQP, STOMP, and MQTT can all be detected and the broker
will properly handle each one over a given Transport.  Currently
auto TCP, NIO, SSL, and NIO+SSL transports can handle auto-detection
of the wire format and client but support could be added in the
future for other transports like websockets.
2015-08-11 19:39:29 +00:00
Timothy Bish 6cdd750ddc [maven-release-plugin] prepare for next development iteration 2015-08-10 11:04:26 -04:00
Timothy Bish a9eeb03520 [maven-release-plugin] prepare release activemq-5.12.0 2015-08-10 11:04:17 -04:00
Christopher L. Shannon c6542a921b AMQ-5748 - Cleanup and clearing cache on shutdown 2015-08-09 09:39:14 -04:00
Christopher L. Shannon (cshannon) a49d46e3ca https://issues.apache.org/jira/browse/AMQ-5748
Updating MemoryTopicMessageStore to decrement store statistics on cache
eviction.  Updating KahaDBMessageStoreSizeStatTest to account for the
fact that a LRU cache is used so the last 100 messages are kept in
memroy.
2015-08-08 17:59:19 +00:00
Timothy Bish a3c8bee1f0 https://issues.apache.org/jira/browse/AMQ-5605
Attempt to resolve high CPU usage after error by ensuring that the
transport is disposed along with the fire of the local error.
2015-08-07 16:21:52 -04:00
Christopher L. Shannon (cshannon) 2b7bb6f81b https://issues.apache.org/jira/browse/AMQ-5837
Switching to a List to track dispatched messages in a TopicSubscription
to be consistent with a PrefetchSubscription and to prevent an error
in case acks come back out of order.
2015-08-06 17:14:09 +00:00
gtully 340728f2d1 AMQ-5920 - use implicit broker transaction for virtual topic fanout and add concurrentSend=true option to use an executor to fanout. Combination gives a 3x reduction in fanout roundtrip for small persistent messages to 100 consumer queues 2015-08-06 11:56:47 +01:00
Christopher L. Shannon (cshannon) 457dbd8b64 https://issues.apache.org/jira/browse/AMQ-5919
Converting printStackTrace statements to slf4j so that exceptions
are logged properly
2015-08-05 16:29:29 +00:00
Timothy Bish 82e3ce805e https://issues.apache.org/jira/browse/AMQ-5916
Apply patch from Ganesh Murthy to resolve issue of creation of durable
subscriber fails via broker AdminView due to lack of SecurityContext on
ConnectionContext
2015-08-04 14:51:15 -04:00
Timothy Bish 5e05df1cb7 Fix a bunch of javadoc warnings produced during release profile builds. 2015-08-04 11:54:46 -04:00
Christopher L. Shannon (cshannon) 5684d093c0 https://issues.apache.org/jira/browse/AMQ-5875
Reworking DurableConduitBridge to look up subscriptions from the
TopicRegion  instead of the RegionBroker since inactive subscriptions
need to be looked at as well when dynamicOnly is false for a
network bridge.
2015-07-29 12:10:05 +01:00
gtully a439a0c6bf AMQ-5875 - rework the patch a bit to only call createDemandSubscription when we have a match to avoid trcking state in error via the bridge subscriptionMap* from configureDemandSubscription 2015-07-17 16:56:22 +01:00
Christopher L. Shannon (cshannon) 2117768e0a https://issues.apache.org/jira/browse/AMQ-5875
Fixing a regression that caused a network bridge to recreate durable
demand improperly.
2015-07-17 16:34:06 +01:00
gtully b1ea29ed14 AMQ-5892 - remove default stack trace from service warn to debug level on async error; makes it consistent with transport logging 2015-07-16 15:18:23 +01:00
gtully 2b5b890db9 AMQ-5888 add patch from GMURTHY with thanks - fix and test 2015-07-16 11:53:12 +01:00
Christopher L. Shannon (cshannon) f10aab6428 https://issues.apache.org/jira/browse/AMQ-5851
resolves #123

This commit resolves an issue where unmatched acknowledgement
messages could be received when running a MDB consumer and
sending messages with a short TTL.  The expiration logic when
receiveing an expired Message Ack will now only expire messages
in dispatch relating to the received ack, not all expired messages
in the dispatch list.
2015-07-09 16:46:21 +01:00
gtully a05a9a2129 https://issues.apache.org/jira/browse/AMQ-5552 - added profile for activemq.tests=smoke to run a fast subset of tests that gives a fast verification of a full build 2015-07-09 14:10:38 +01:00
Timothy Bish 13044decce https://issues.apache.org/jira/browse/AMQ-5848
Use the latest openwire version marshallers in the KahaDB store when
starting from a clean install, drop back to the version used in the
existing store if one is found.
2015-07-08 17:29:32 -04:00
Christopher L. Shannon bd28c3b0ba https://issues.apache.org/jira/browse/AMQ-5748
Fixing a potential Null pointer exception in  MemoryMessageStore
2015-07-07 18:54:06 -04:00
Christopher L. Shannon (cshannon) 46055034c9 https://issues.apache.org/jira/browse/AMQ-5837
This commit adds an Inflight message size statistic to SubscriptionStatistics
so we can know the size of all the messages that are inflight, besides just the count.
2015-07-07 16:33:58 -04:00
Christopher L. Shannon (cshannon) 785b16bf9e https://issues.apache.org/jira/browse/AMQ-5748
Added a getMessageSize method to MessageStore to support retrieving the
total message size of all stored messages for a destination.  Added a
new storeMessageSize statistic to DestinationStatistics.
2015-07-07 18:03:27 +00:00
Timothy Bish 7a68ad5d98 https://issues.apache.org/jira/browse/AMQ-4814
Remove of a durable subscription when the keepDurableSubActive flag is
true (default) did not actually stop and cleanup the still active cursor
due to the fact that the cursor checks the flag of its subscription to
see if it should stay active when its stop method is called.  The
subscription needs to disable that flag when the subscription is being
removed so that the cursor will correctly shutdown.
2015-07-06 18:21:20 -04:00
Timothy Bish c38a61d7ae https://issues.apache.org/jira/browse/AMQ-5340
Clean up a bit, extend test timeout to account for slow CI machines,
remove System prints and replace with LOG.
2015-07-06 16:47:58 -04:00
Christopher L. Shannon 174dcbff2a https://issues.apache.org/jira/browse/AMQ-5340
A QueueBrowser no longer checks expiry on messages to prevent a
browser from hanging in between the hasMoreElements check and actually
getting a message.  This means that if messages were in the queue when
the browser started it will receive messages even if they are now
expired. Even though the browser will get the expired message, the
broker will still expire it to prevent future access to it.

Thanks to Henno Vermeulen for providing a test case.
2015-07-06 16:13:52 -04:00
Timothy Bish e4af2eb635 https://issues.apache.org/jira/browse/AMQ-5814
Use the context of the subscription when the producer adds a destination
that matches its wildcard.
2015-07-02 11:36:53 -04:00
Christopher L. Shannon (cshannon) 12b26b641b https://issues.apache.org/jira/browse/AMQ-5745
This commit is based off a patch submitted by admin@int3solutions.com.
It fixes several locations in the code where there are potential resource leaks.
2015-06-30 13:41:48 -04:00
Timothy Bish 1b493749a1 https://issues.apache.org/jira/browse/AMQ-5859
fix for incorrect logic in reconnect attempt limits and also fix a case
where an NPE could occur (saw in the tests).   Based on patch provided
by Benoit Wiart
2015-06-30 13:00:04 -04:00
gtully 002ade79b0 https://issues.apache.org/jira/browse/AMQ-5639 - the duplex case needed work. All advisories were being acked async in duplex mode, that code needed to be more selective to forward advisories that dont terminate at the bridge. Fix and test 2015-06-26 14:54:29 +01:00
Dejan Bosanac 13c471cc11 https://issues.apache.org/jira/browse/AMQ-5656 - add support for selective mbean suppression; refactor a bit so we can support patterns and wildcards 2015-06-26 12:56:37 +02:00
gtully b6fea83126 https://issues.apache.org/jira/browse/AMQ-5863 - fix and test - sequenceId state in messageid needs to be cleared before doing a store 2015-06-25 12:49:52 +01:00
Christian Schneider 97cd60fb7e [AMQ-5821] Use wiring to check for extensions
This closes #119
2015-06-24 12:10:10 -04:00
gtully 37c46b9b42 https://issues.apache.org/jira/browse/AMQ-5705 - fix test regression. Make PublishedAddressPolicy vm scheme aware so such that is won't attempt a transform 2015-06-23 11:25:43 +01:00
Timothy Bish 833d30837b https://issues.apache.org/jira/browse/AMQ-5848
Introduce OpenWire v11 which adds noLocal to the SubscriptionInfo, if
configured KahaDB can store that version and the noLocal value is
recovered from the store.
2015-06-18 14:25:07 -04:00
Christopher L. Shannon (cshannon) b40dc4cc54 https://issues.apache.org/jira/browse/AMQ-5668
This commit fixes a race condition in AbstractStoreCursor setLastCacheId that could
cause a null pointer exception in certain cases.
2015-06-17 19:09:53 -04:00
Christopher L. Shannon (cshannon) fc3e026122 https://issues.apache.org/jira/browse/AMQ-5705
Modifing the AdivsoryBroker to set the originBrokerURL to the transport connector's
URL if it has been set versus using a default URL.
2015-06-17 17:47:24 +00:00
Christopher L. Shannon (cshannon) edacc2a840 https://issues.apache.org/jira/browse/AMQ-5843
Adding a new property on PolicyEntry called includeBodyForAdvisory which will
include the original message body when sending advisory messages that include
the original message, instead of clearing it out.  This is turned off by
default.
2015-06-16 12:48:38 -04:00
Christopher L. Shannon (cshannon) 61fd811adc https://issues.apache.org/jira/browse/AMQ-5393
Adding a property called schedulePeriodForDiskUsageCheck which can be set
to a time period to periodically check disk usage limits and adjust if
the amount of disk space has been reduced.
2015-06-12 10:35:20 -04:00
gtully 3100909041 https://issues.apache.org/jira/browse/AMQ-5830 - ensure duplex inbound connection sets network=true flag, fix and test 2015-06-09 12:19:49 +01:00
Christopher L. Shannon (cshannon) 886e2d4d97 Adding a configuration option to PolicyEntry to enable setting the maximum number of created destinations by policy on the broker.
This resolves https://issues.apache.org/jira/browse/AMQ-5751
2015-06-08 16:00:08 -04:00
Christopher L. Shannon (cshannon) ea03bb1f8c https://issues.apache.org/jira/browse/AMQ-5813
Fixing countBeforeFull for TopicSubscriptions to report a positive value
2015-06-05 14:08:15 -04:00
gtully 928e815a02 https://issues.apache.org/jira/browse/AMQ-5656 - add support for selective mbean suppression based on objectName attribute match. Avoids mbeanserver contention on systems where producer/consumers/dests are dynamic 2015-06-04 14:27:18 +01:00
Timothy Bish 35b82e5f93 https://issues.apache.org/jira/browse/AMQ-5599
Ensure that persistence adapter start is not missed to avoid infinite
wait for it.
2015-06-02 11:36:47 -04:00
mfrazier dcc7b11347 AMQ-5713 - making accessors public to remove startup error.
Includes unit test DestinationBridgeAccessorsTest which replicated the problem and now passes.
2015-05-29 16:13:41 -07:00
Christopher L. Shannon (cshannon) eece576b19 https://issues.apache.org/jira/browse/AMQ-5792
Adding SubscriptionStatistics to group together all metrics in a bean
for a subscription.
2015-05-28 15:47:30 -04:00
Dejan Bosanac ea2746b121 https://issues.apache.org/jira/browse/AMQ-5697 - adding acl fields as some plugins can use those directly instead of setting roles 2015-05-25 13:24:36 +02:00
Christopher L. Shannon 84737f7749 https://issues.apache.org/jira/browse/AMQ-5771
Including remote ip address when logging authentication failures
2015-05-22 15:37:48 -04:00
gtully 9bc602be43 https://issues.apache.org/jira/browse/AMQ-4705 - close window where both master and slave can be active - slave waits for possible keepAlivePeriod with the lock before startin. Ensures a keepAlive has completed on the master 2015-05-22 11:40:40 +01:00
Christopher L. Shannon (cshannon) e99c814830 Fixing missing volatile on references in VMTransport to prevent a synchronization bug.
This resolves https://issues.apache.org/jira/browse/AMQ-5787
2015-05-20 15:09:17 -04:00
gtully 9ad65c62ed https://issues.apache.org/jira/browse/AMQ-5164 https://issues.apache.org/jira/browse/AMQ-4842 - master slave advisory needed to wait for failover reconnect - exponential backoff was sometimes giving to long a delay. Retroactive override needs to applied after policies. Tests reinstated 2015-05-20 09:57:05 +01:00
gtully 3fdf9861b2 https://issues.apache.org/jira/browse/AMQ-5783 - properly remove free topic from the store when there are no remaining subs. Issue: release of the index but remaining metadata refs to the old state. Mbean was also left dangling. test thanks to pat fox 2015-05-20 09:57:05 +01:00
gtully 17f4f349f3 more tidy up of derby usage in tests to ensure proper cleanup; ci failures 2015-05-20 09:57:05 +01:00
Timothy Bish fd2805fe1c https://issues.apache.org/jira/browse/AMQ-5441
Don't dip into the store to recover durable topic subscriptions or queue
subscriptions depending on the subscription strategy in use.  The needed
information is always kept in either TopicRegion or QueueRegion even
after restart as all stored destinations are reloaded as the broker is
started.
2015-05-15 16:01:54 -04:00
gtully 5e36f65e0e https://issues.apache.org/jira/browse/AMQ-4705 - lastmod granualarity is second on some nix. Also write on lock acquire to ensure modification time change 2015-05-15 13:23:12 +01:00
gtully 181e4d4617 https://issues.apache.org/jira/browse/AMQ-4705 - ensure cached lastModified is externally visible - hardened test showed window for missed mod 2015-05-14 13:48:14 +01:00
gtully b8a20e9ef6 skipped first dispatch on vmtransport needed a better test - reworked to avoid busy loop on full and ensured sync on started for enqueue. Sort FailoverStaticNetworkTest and NetworkOfTwentyBrokersTest intermittent failures 2015-05-13 13:56:24 +01:00
gtully ccbbecb4a4 https://issues.apache.org/jira/browse/AMQ-4705 - apply patch from ganesh murthy with thanks. Fix and test making use of last modified to track deletion and recreation events 2015-05-12 23:19:07 +01:00
gtully c89bb7a316 fix intermittent failure of FailoverStaticNetworkTest. Bridge fails to start triggerStartAsyncNetworkBridgeCreation thread waiting on localBrokerInfo. The command was dropped due to contention between dispatch and peer start. Fix and test. Relates to https://issues.apache.org/jira/browse/AMQ-3684 2015-05-12 22:10:57 +01:00
Dejan Bosanac e19293de5f https://issues.apache.org/jira/browse/AMQ-5772
Improve Broker.removeConnection() method, so that we pass the cause for removing it (if available)
2015-05-12 14:23:12 +02:00
Timothy Bish 16a1e2b686 https://issues.apache.org/jira/browse/AMQ-5768
Exclude advisory topics from the expired message check.
2015-05-08 13:45:21 -04:00
gtully 1359e8eae2 https://issues.apache.org/jira/browse/AMQ-4068 fix intermittent test failure. Rework usage check to prevent additions to the store rather than blocking scheduled dispatch from the store 2015-05-08 14:14:25 +01:00
Timothy Bish 1271d2ea03 https://issues.apache.org/jira/browse/AMQ-5758
Fix for potential NPE.
2015-05-06 15:13:15 -04:00
Timothy Bish 9ef4259297 https://issues.apache.org/jira/browse/AMQ-5616
Use ConcurrentMap in declarations
2015-04-28 11:15:08 -04:00
gtully c129051175 https://issues.apache.org/jira/browse/AMQ-5746 - separate out start from creation of scheduler store. test via Martyn Taylor with thanks. This closes #80 2015-04-27 16:16:49 +01:00
gtully 23ecbe80d0 https://issues.apache.org/jira/browse/AMQ-5743 - confine logging to the jmx purge op 2015-04-24 13:35:02 +01:00
gtully c85fa67e1c https://issues.apache.org/jira/browse/AMQ-5742 - fix and intermittent failure of DemandForwardingBridgeTest is sorted 2015-04-23 14:32:40 +01:00
gtully eb6c082631 https://issues.apache.org/jira/browse/AMQ-5735 - fix up semantics around lastDeliveredSequenceId 2015-04-22 16:32:17 +01:00
Timothy Bish a0835c2c21 https://issues.apache.org/jira/browse/AMQ-5371
Move option ignoreNetworkConsumers up to base AbortSlowConsumerStrategy
so it can be used for both the original version and the slow ack aware
version.
2015-04-20 15:20:33 -04:00
Martyn Taylor a65ac586c2 https://issues.apache.org/jira/browse/AMQ-5729 - Do not log passwords on MBean method calls.
Previous to this patch the AnnotatedMBean class would simply dump
any arguments passed in via JMX call to the log (when audit is enabled).
Method parameters can sometimes contain sensitive information such as
the password field on QueueView.sendTextMessage.

This patch adds a @Sensitive annotation to the JMX module allowing
implementations of MBean interfaces to mark method parameters as sensitive
preventing values from being logged.
2015-04-20 18:06:45 +01:00
Timothy Bish be66175079 https://issues.apache.org/jira/browse/AMQ-5719
This closes #86

commit 72837960cf
Author: Christopher L. Shannon (cshannon)
<christopher.l.shannon@gmail.com>

Updated durable related error messages in TopicRegion to include both
subscriptionName and clientId.
2015-04-14 17:42:30 -04:00
Dejan Bosanac f556076a2c https://issues.apache.org/jira/browse/AMQ-4929 - remove audit from TransactionBroker 2015-04-14 14:55:11 +02:00
Dejan Bosanac 2852a8bdb1 https://issues.apache.org/jira/browse/AMQ-4929 - remove BrokerService.supportFailoverSupport. This closes #60 2015-04-14 13:59:01 +02:00
Timothy Bish ec9a92f6fc https://issues.apache.org/jira/browse/AMQ-5649
Ensures that max producers on a connection includes anonymous producers
in its count, based on patch from: Christopher L. Shannon (cshannon)
<christopher.l.shannon@gmail.com>

Merged the test into the existing ConfigTest that validates the max
producers functionality.
2015-04-13 10:25:51 -04:00
Dejan Bosanac 2562cf21a2 https://issues.apache.org/jira/browse/AMQ-5718 - don't add messages to subscriber while it's discarding 2015-04-13 11:16:55 +02:00
Dejan Bosanac 69767a2f2f https://issues.apache.org/jira/browse/AMQ-5665 - memory store don't propagate connection context 2015-04-09 13:29:37 +02:00
Clebert Suconic ab8f54b066 fixing a race on SharedLockFile 2015-04-08 11:17:00 -04:00
Clebert Suconic 0a161380f8 AMQ-5709 Fixing tests
https://issues.apache.org/jira/browse/AMQ-5709

This is just fixing a test properly
2015-04-08 10:28:42 -04:00
Clebert Suconic 89c75ca28a AMQ-5709 Reworking Logging on Locker
https://issues.apache.org/jira/browse/AMQ-5709

This is about changing how the Log is done in case of not being able to lock (log only once)
2015-04-07 17:24:48 -04:00
Christian Posta 61da1faa4c https://issues.apache.org/jira/browse/AMQ-5672 Added an option for allowing only a single selector for the virtual destination selector cache. also added some JMX views into the selector cache that can be used at runtime. includes unit tests 2015-04-06 16:12:20 -07:00
gtully 1d71cb7036 https://issues.apache.org/jira/browse/AMQ-5674 - revisit change - use single redelivey delay attribute for both initial and subsequent delays - resolves regression in BrokerRedeliveryTest 2015-04-03 14:19:15 +01:00
Timothy Bish 6df02555fd https://issues.apache.org/jira/browse/AMQ-5680
Fix typo in getTempQueues method.
2015-04-01 09:52:33 -04:00
Dejan Bosanac 8bb58036a0 https://issues.apache.org/jira/browse/AMQ-5697 - authorization map and composite destinations 2015-03-31 17:13:37 +02:00
Christian Posta efc9a8d578 Fix for https://issues.apache.org/jira/browse/AMQ-5689 Queue dispatching hangs when there are redelivered messages that dont match current consumers selectors, refactored out the pendingDispatchList in Queue implementation 2015-03-27 15:19:56 -07:00
Timothy Bish 05ff52dc15 https://issues.apache.org/jira/browse/AMQ-5413
https://issues.apache.org/jira/browse/AMQ-5433
https://issues.apache.org/jira/browse/AMQ-5647
https://issues.apache.org/jira/browse/AMQ-5684

Adds support for AMQP drain and fixes some issues around incorrect
dispatching and credit handling.  Should resolve several issues that
have been seen using test suites from AmqpNetLite and other AMQP
clients.
2015-03-27 15:11:38 -04:00
Timothy Bish e33b3f5939 https://issues.apache.org/jira/browse/AMQ-5686
Call into the delegate for asyncAddTopicMessage to avoid a stack
overflow.
2015-03-24 16:07:07 -04:00
gtully 55f040e616 https://issues.apache.org/jira/browse/AMQ-5568 - ensure directory exists - fix ci 2015-03-10 16:18:50 +00:00
Dejan Bosanac 3b39d2cc2a https://issues.apache.org/jira/browse/AMQ-5644 - authorization map for wildcard subscriptions 2015-03-10 11:24:27 +01:00
Dejan Bosanac 24c2215f4e Revert "https://issues.apache.org/jira/browse/AMQ-5644 - authorization map for wildcard subscriptions"
This reverts commit 7777744dc2.
2015-03-06 18:06:17 +01:00
Dejan Bosanac 7777744dc2 https://issues.apache.org/jira/browse/AMQ-5644 - authorization map for wildcard subscriptions 2015-03-06 15:35:20 +01:00
gtully ab28b771e3 https://issues.apache.org/jira/browse/AMQ-5640 - fix by ensuring parent stat is updated on dest init, thanks for the nice test Torsten 2015-03-05 14:46:59 +00:00
gtully 8c66fba0aa https://issues.apache.org/jira/browse/AMQ-5568 - fix and test - only delete lock file if lock was held on stop 2015-03-05 13:27:40 +00:00
gtully 5313ad8a96 remove stack trace from auth failure log warn - stack trace is already covered by debug service level logging 2015-03-04 22:06:05 +00:00
Timothy Bish 67ccfcad88 https://issues.apache.org/jira/browse/AMQ-5470
Allow for early SASL authentication and failure if credentials not
valid.
2015-03-04 14:06:04 -05:00
gtully 741e3aad3e https://issues.apache.org/jira/browse/AMQ-5630 - add rejectDurableConsumers boolen attribute - when true, requests to create durable subscriptions will fail with a JMSException - not allowed 2015-03-03 13:30:10 +00:00