Commit Graph

2721 Commits

Author SHA1 Message Date
gtully 9484e49ab0 no jira - fix intermittent checkthreadrule failure in JDBCJournalTest 2021-06-03 11:28:39 +01:00
Clebert Suconic f380324ca3 NO-JIRA fixing intermittent failure with a Wait call 2021-06-02 19:53:26 -04:00
gtully 815f383f9c ARTEMIS-3234 - revisit fix to deal with credit on unmatched acks, thanks to brusdev for the interceptor feature and test from ARTEMIS-2650 2021-06-02 16:23:46 +01:00
Clebert Suconic ee92ddcb3b NO-JIRA Fixing test 2021-06-01 19:41:40 -04:00
Clebert Suconic 24c6d904b9 ARTEMIS-3324 JournalFilesRepository running out of open files while compacting 2021-06-01 16:36:51 -04:00
gtully 7ce9030e9f ARTEMIS-3323 - ensure openwire message id is unique and consistent for the life of a broker when converted from core 2021-06-01 19:43:25 +01:00
Domenico Francesco Bruscino ba6422d45f ARTEMIS-3315 Fix JSON serialization of AMQP messages
Replace the JSON serialization errors for unknown types with their respective string representation.
2021-05-27 11:31:25 -04:00
Justin Bertram cdaa00d470 ARTEMIS-3317 OpenWire property conversion can cause ClassCastException 2021-05-27 09:52:49 -04:00
Clebert Suconic cfee2035c8 ARTEMIS-3318 Invalid data on page should not hold page cleanup 2021-05-27 08:08:47 -04:00
Domenico Francesco Bruscino 6ec7a69d45 ARTEMIS-3236 Preserve managed queues on removing MQTT subscription 2021-05-25 11:24:53 -05:00
Justin Bertram e9c94e57d9 ARTEMIS-3288 support bulk user loading with basic security manager 2021-05-25 11:13:35 -05:00
Clebert Suconic 4de9e887f6 ARTEMIS-3309 Fixing QueueControlUsingCoreTest 2021-05-25 11:45:17 -04:00
Clebert Suconic f6df6083e3 ARTEMIS-3283 Fixing Slow Consuemr Test and speeding it up
I am removing some combinations that are not needed here,
and I'm adding another extra test to valiate the rate per minutes
2021-05-25 11:29:04 -04:00
Justin Bertram 3621258458 ARTEMIS-3285 potential duplicate messages with LVQ + non-destructive 2021-05-24 16:42:10 -04:00
Domenico Francesco Bruscino e03c4fe193 ARTEMIS-3309 Add a parameter to limit messages to move or transfer 2021-05-24 14:09:20 -04:00
Justin Bertram e543aa3bd5 ARTEMIS-3159 errors during concurrent expiration with auto-creation 2021-05-24 13:02:08 -05:00
Justin Bertram 81bbca15c1 ARTEMIS-3229 add details to AdressControl MBean 2021-05-24 11:51:14 -05:00
Martyn Taylor 3c0e14de58 ARTEMIS-3283 Added SlowConsumerThreshold unit configuration option 2021-05-24 11:49:38 -05:00
gtully 72c9cae8e1 ARTEMIS-3311 - ensure visibility of error state on operation context callback registration, fix and test 2021-05-24 16:07:36 +01:00
Clebert Suconic 847fe90411 ARTEMIS-3295 Removing Clutered OpenWire test since we are not clustering advisory any longer 2021-05-24 09:51:42 -04:00
Clebert Suconic c0128b29cb ARTEMIS-3297 Fixing BackupSyncLargeMessageTest 2021-05-24 09:05:58 -04:00
Clebert Suconic 3f38be8c08 ARTEMIS-3310 Paging could lose AMQPmessage if match didn't work for any reason 2021-05-20 13:19:57 -04:00
Domenico Francesco Bruscino 9e9e279d42 ARTEMIS-3294 Fix testTextMessageAttributeLimits 2021-05-20 13:19:39 -04:00
Clebert Suconic 5e622a642d ARTEMIS-3297 Fixing Tests that do not support retention on the file system 2021-05-18 22:27:39 -04:00
Clebert Suconic 27c343913f ARTEMIS-3297 Journal Retention Feature 2021-05-18 16:29:18 -04:00
Robbie Gemmell 2e2cd1f073 ARTEMIS-3296: get things building on Java 16 (and 17EA+21)
Updates parent pom, various plugins or deps, tidies up inconsistent versions
and consolidates to inherited version where possible, define properties for
some versions where not. Disables some problematic tests on JDK16+ for now.

Drops DS test dep back 1 version to remove a specific breakage affecting
multiple tests/modules, introduced after its upgrade in commit
9e70b26368.
2021-05-17 08:28:46 -04:00
Andy Taylor a34d9aad6b ARTEMIS-3295 - do not cluster advisories
https://issues.apache.org/jira/browse/ARTEMIS-3295
2021-05-14 10:08:21 -04:00
Robbie Gemmell a3de3d4c75 ARTEMIS-3038, ARTEMIS-2813: remove the CoreClientOverOneWaySSLKerb5Test test class
- It is already entirely disabled one or more ways depending on what JVM is in use.
- If enabled on any modern JVM it would either fail by default or can never work, as
  the related ciphers it requires have been disabled (8) or entirely removed (11+)
  due to being considered unsuitable for use.
2021-05-14 11:37:16 +01:00
Timothy Bish 9e70b26368 ARTEMIS-2813 Fix SaslKrb5LDAPSecurityTest failing on JDK 11
Fixes issues with SaslKrb5LDAPSecurityTest by updating to latest Apache Directory
release which required some updates to the test to fix deprecation warnings and an
updates to commons.lang to fix issues with new namespace for StringUtils that will
work on JDK 8+ only.
2021-05-14 10:07:38 +01:00
Timothy Bish 9513405020 ARTEMIS-2813 Update MiniKDC and fix Kerberos tests on JDK 11+
Updates the MiniKDC dependency and adds another now needed dep in order
to get the Kerberos tests working on JDK 11+ builds.
2021-05-14 10:07:38 +01:00
Clebert Suconic 67d47274a1 NO-JIRA removing runDirectJournalBlast 2021-05-12 09:51:56 -04:00
Clebert Suconic 4727be6a69 NO-JIRA fixing logging.properties 2021-05-12 09:51:56 -04:00
Clebert Suconic a30b3a81b9 ARTEMIS-3293 System test on Paging and DLQ processing 2021-05-11 16:30:23 -04:00
Clebert Suconic 5393470b84 NO-JIRA Reformating smoke-tests/pom.xml
no semantic changes on this commit.
just making it look prettier.
2021-05-05 16:27:53 -04:00
Clebert Suconic b0f8f515c5 ARTEMIS-3273 Recover tool and PrintData enhancements 2021-04-30 18:41:05 -04:00
Clebert Suconic d2676e77f8 ARTEMIS-3271 Improve Critical Analyzer to use AutoCloseable on the API 2021-04-30 12:46:15 -04:00
Clebert Suconic 42405fedcf ARTEMIS-3261 Expanding verification to journal compacting counters
After testing a production outage situation I still encountered issues on deciding the journal should be compacted.
This is addressing these issues.
2021-04-26 16:45:17 -04:00
Clebert Suconic 62395dcd44 ARTEMIS-3261 Fixing tests and allowing configuration to reload data files on start 2021-04-24 21:30:56 -04:00
Clebert Suconic 1392cb5f0b ARTEMIS-3261 Enhance compact to deal with Rollbacks and update records that can be replaced 2021-04-23 15:17:06 -04:00
Jacob Middag 6b86770079 NO-JIRA Fix description of DiskStoreUsage
In 73c4e399d9 a description is added to DiskStoreUsage. It incorrectly describes the diskStoreUsage as a percentage. This commit changes it to a fraction which it is (also before the description change). A percentage would be better, since MaxDiskUsage is also specified as percentage.
2021-04-19 12:47:29 -04:00
gtully 0f3d87799a ARTEMIS-3240 - ensure pending transactions are rolled back on connection failure. Fix and test 2021-04-16 10:22:06 -04:00
Clebert Suconic d408f284b1 ARTEMIS-3238 AMQP Mirror not routing correctly with SNF 2021-04-12 19:30:35 -04:00
gtully fa80c03049 ARTEMIS-3234 - fix and test, the existing tests suffered with suppressInternalManagementObjects defaulting to true. credit accounting is now independent of the ack list such that preack for advisories can work 2021-04-12 08:29:58 -04:00
Domenico Francesco Bruscino b4789a894f ARTEMIS-3221 Migrating to Jakarta EE 8 artifacts 2021-04-09 11:49:59 -04:00
gtully 9c9f89f1d5 ARTEMIS-3106 - remove sha-1 references from the test 2021-04-09 14:52:55 +01:00
Clebert Suconic 565d921a07 ARTEMIS-3106 Check style fix on SaslScramTest 2021-04-09 08:48:21 -04:00
Clebert Suconic 5642356c13 artemis-3106 Refactoring SaslScramTest to use ActiveMQTestBase
The main benefit on ActiveMQTestBase is to avoid thread leakaging between tests on this case
that is, one test affecting the next and being difficult to find the cause.
2021-04-09 08:43:21 -04:00
Clebert Suconic faf32fe550 ARTEMIS-3227 Web Console could be shutdown after certain failures 2021-04-08 19:59:00 -04:00
Christoph Läubrich 5313a800a3 ARTEMIS-3106 Support for SASL-SCRAM
adds the implementation necessary to perform SASL-SCRAM authentication with ActiveMQ Artemis
2021-04-08 19:58:09 -04:00
Domenico Francesco Bruscino a70b21cf89 NO-JIRA Fix SSLSupportTest for IBM JVM 2021-03-31 15:46:19 +02:00
Justin Bertram 0ca413004b ARTEMIS-3155 fix test 2021-03-29 11:38:42 -05:00
gtully 3b4872e1a2 ARTEMIS-3128 - add test of large message browse opentype support 2021-03-26 14:42:03 +00:00
Andy Taylor 658d45f543 ARTEMIS-3202 - add a flag to deleted diverts removed from config
https://issues.apache.org/jira/browse/ARTEMIS-3202
2021-03-24 19:24:16 -04:00
Andy Taylor 69bea6756c ARTEMIS-3201 - configured diverts arent persisted
https://issues.apache.org/jira/browse/ARTEMIS-3201
2021-03-24 19:24:16 -04:00
Domenico Francesco Bruscino e45c1d98d4 NO-JIRA Fix NettyConnectorWithHTTPUpgradeTest 2021-03-24 19:05:06 -04:00
Justin Bertram 186481bbe8 ARTEMIS-3155 differentiate SSL store type and provider
The provider of an SSL key/trust store is different from that store's
type. However, the broker currently doesn't differentiate these and uses
the provider for both. Changing this *may* potentially break existing
users who are setting the provider, but I don't see any way to avoid
that. This is a bug that needs to be fixed in order to support use-cases
like PKCS#11.

Change summary:
 - Added documentation.
 - Consolidated several 2-way SSL tests classes into a single
   parameterized test class. All these classes were essentially the same
   except for a few key test parameters. Consolidating them avoided
   having to update the same code in multiple places.
 - Expanded tests to include different providers & types.
 - Regenerated all SSL artifacts to allow tests to pass with new
   constraints.
 - Improved logging for when SSL handler initialization fails.
2021-03-24 09:08:33 -04:00
Clebert Suconic 8d24bfa646 ARTEMIS-3204 Fixing NPE on Counting Queue for Resource Limit 2021-03-24 08:12:40 -04:00
Clebert Suconic 7b8f34afe9 ARTEMIS-3196 Fixing ActiveMQServerControlUsingCoreTest 2021-03-23 18:49:47 -04:00
Clebert Suconic 89ea4ecda7 NO-JIRA Adding CoreMessage Test with Bytes access 2021-03-23 10:03:52 -04:00
Andy Taylor bb94d0a5b3 ARTEMIS-3196 - expose journal pool files in JMX
https://issues.apache.org/jira/browse/ARTEMIS-3196
2021-03-23 10:01:24 +00:00
gtully 02bb7031c2 ARTEMIS-3175 - implement address setting management-message-attribute-size-limit to sensibly limit data returned by list/browse/filter management ops 2021-03-23 09:48:45 +00:00
gtully 8fd1b33d16 ARTEMIS-3197 - add selectorAware option to virtualTopicConsumerWildcards for openwire acceptor 2021-03-22 19:15:02 -04:00
AntonRoskvist e9e1e476ee ARTEMIS-3198 Add concurrency option on core bridges 2021-03-22 19:13:06 -04:00
Clebert Suconic 41d9eef511 ARTEMIS-3191 Tests with Mirror and Credentials 2021-03-22 19:10:37 -04:00
Clebert Suconic b4beea1f2c ARTEMIS-3150 Broker Connections with restricted security
The local connections and sessions created internally were supposed to bypass security
just like bridges and other internal components
2021-03-22 17:32:43 -04:00
Markus Meierhofer 1d1a9433bc ARTEMIS-2870: Transfer connection close/failure listeners one by one on reattachment
Previously, when a session was reattached, all the close/failure listeners
were removed from the old connection and set onto the new connection.
This only worked when at most 1 session of the old connection was
transferred: When the second session was transferred, the old
connection already didn't contain any close/failure listeners anymore,
and therefore the list of close/failure listeners was overwritten by
an empty list for the new connection.

Now, when a session is being transferred, it only transfers the
close/failure listeners that belong to it, which are the session itself
+ the TempQueueCleanerUppers.

Modified a test to check whether the sessions are failure listeners of
the new connection after reattachment.
2021-03-18 18:26:07 -04:00
gtully 8d848f4615 ARTEMIS-3188 / ARTEMIS-2108 Fixing StackOverFlow over bindings
This fix was done in collaboration with Gary Tully
2021-03-18 18:08:42 -04:00
gtully 052bd60da4 ARTEMIS-3180 - fix multiple path match case in wildcard address map 2021-03-18 11:24:51 +00:00
Justin Bertram d36525348d ARTEMIS-3174 add test 2021-03-17 13:36:09 -05:00
Clebert Suconic 3c5b95c47c NO-JIRA Simple Logging Change on Test 2021-03-16 11:59:00 -04:00
Robbie Gemmell 96a09041ee ARTEMIS-3183: resolve various immediate warnings at build start
- Remove duplicates dependency definition following e7e3c71511.
- Removes deprecated RELEASE version use, consolidate modules on single paho client version.
- Remove prerequisites entry as per warning, suggested enforcer rule already in place.
2021-03-16 12:48:48 +00:00
Domenico Francesco Bruscino adf054f606 ARTEMIS-3144 Fix RestDeserializationTest 2021-03-11 13:09:15 +01:00
Clebert Suconic f49a163427 ARTEMIS-3137 Fixing Test with wrong message type on Xpath and Core 2021-03-10 21:44:07 -05:00
gtully 202601645b ARTEMIS-3141 - configure managementBrowsePageSize limit to 1k for test expectation 2021-03-10 16:15:20 +00:00
Justin Bertram eb26f67ab6 ARTEMIS-3137 support XPath filters
Change summary:
 - Remove the existing Xalan-based XPath evaluator since Xalan appears
   to be no longer maintained.
 - Implement a JAXP XPath evaluator (from the ActiveMQ 5.x code-base).
 - Pull in the changes from https://issues.apache.org/jira/browse/AMQ-5333
   to enable configurable XML parser features.
 - Add a method to the base Message interface to make it easier to get
   the message body as a string. This relieves the filter from having
   to deal with message implementation details.
 - Update the Qpid JMS client to get the jms.validateSelector parameter.
2021-03-10 09:32:23 -05:00
gtully 20007ad485 ARTEMIS-3141 - respect the browse page limit on all queue controll/jmx operations that use a queue browser 2021-03-10 08:51:06 -05:00
Domenico Francesco Bruscino 5a5794021c ARTEMIS-3044 Add Artemis web console tests 2021-03-10 08:23:13 -05:00
Domenico Francesco Bruscino d4f1552019 ARTEMIS-3123 Update netty version to 4.1.59.Final 2021-03-09 12:55:53 -06:00
franz1981 57e85bbc10 NO-JIRA fix flaky ReplicatedMultipleFailbackTest NPE 2021-03-05 10:18:48 -05:00
Domenico Francesco Bruscino 5aa3a4b6aa ARTEMIS-3147 Fix auto created addresses reload 2021-03-03 13:49:59 -05:00
gtully a0ce3812ba ARTEMIS-3067, ARTEMIS-3135 - rework accounting for lazy decoding by directly referencing the owning page store, owner now tracked on a message rather than the message reference. This avoids the error prone checks around potential decoding sites 2021-02-24 15:50:13 +00:00
Clebert Suconic 66040b009c ARTEMIS-3135 Fixing intermittent test failure 2021-02-23 13:59:26 -05:00
gtully a56ade38b4 ARTEMIS-3135 - track possible change in memory estimate when messages are converted to maps for JMX or UI display, follows up from ARTEMIS-3067 2021-02-23 15:30:40 +00:00
Clebert Suconic 12c8096a23 ARTEMIS-3093 Ordering on multiple consumers and core with rollback 2021-02-22 15:10:04 -05:00
franz1981 6126d926dd ARTEMIS-3045 ReplicationManager can batch sent replicated packets 2021-02-19 15:18:20 -05:00
Clebert Suconic 7d10e915b6 ARTEMIS-3116 Fixing Core->AMQP Conversion of Scheduled Delivery Time 2021-02-12 13:00:06 -05:00
Clebert Suconic 21ee5985ea [maven-release-plugin] prepare for next development iteration 2021-02-11 12:00:04 -05:00
Clebert Suconic 36a771150b [maven-release-plugin] prepare release 2.17.0 2021-02-11 11:59:51 -05:00
Clebert Suconic e7e3c71511 ARTEMIS-3113 - Artemis AMQP shouldn't depend on JMS.
* removing the  JMS dependency on AMQP module
* fixing destinations usage.
* refactoring to remove some JMS usage and make exceptions a bit better

Jira: https://issues.apache.org/jira/browse/ARTEMIS-3113
2021-02-11 10:45:01 -05:00
Clebert Suconic c0867f0361 [maven-release-plugin] prepare for next development iteration 2021-02-09 12:12:48 -05:00
Clebert Suconic 9b473698e0 [maven-release-plugin] prepare release 2.17.0 2021-02-09 12:12:35 -05:00
Clebert Suconic 1647f5e1f1 NO-JIRA updating pom on jmh perf 2021-02-09 09:46:25 -05:00
Clebert Suconic 108334b333 NO-JIRA Fix Extra Tests pom 2021-02-08 16:09:13 -05:00
Clebert Suconic 6ed1e4c87d [maven-release-plugin] prepare for next development iteration 2021-02-08 15:56:31 -05:00
Clebert Suconic 06b29806ca [maven-release-plugin] prepare release 2.17.0 2021-02-08 15:56:18 -05:00
岳豹 9c5ec1b07c ARTEMIS-3105 large message file not closed on backup side 2021-02-07 10:41:41 +08:00
Clebert Suconic e65eff0f24 ARTEMIS-3096 Fixing compilation on JDK 1.8 2021-02-04 17:35:36 -05:00
Justin Bertram 15e3cdf409 ARTEMIS-3096 bridge config using wrong default conf-window-size 2021-02-04 13:48:37 -06:00
Emmanuel Hugonnet 40f4c0218e
[ARTEMIS-3080]: Provide JakartaEE 9 artefacts.
* using batavia and eclipse transformer to transform JMS code to JakartaEE.
* adding a test with JakartaEE
* upgrading owasp plugin to 6.1.0

Jira: https://issues.apache.org/jira/browse/ARTEMIS-3080
2021-02-03 18:35:01 +01:00
Ingo Karkat 044d6101e9 ARTEMIS-3081 Swap precedence of key/tr.store props
If an application wants to use a special key/truststore for Artemis but
have the remainder of the application use the default Java store, the
org.apache.activemq.ssl.keyStore needs to take precedence over Java's
javax.net.ssl.keyStore. However, the current implementation takes the
first non-null value from
  System.getProperty(JAVAX_KEYSTORE_PATH_PROP_NAME),
  System.getProperty(ACTIVEMQ_KEYSTORE_PATH_PROP_NAME),
  keyStorePath

So if the default Java property is set, no override is possible. Swap
the order of the JAVAX_... and ACTIVEMQ_... property names so that the
ActiveMQ ones come first (as a component-specific overrides), the
standard Java ones comes second, and finally a local attribute value
(through Stream.of(...).firstFirst()).

(In our case the application uses the default Java truststore location
at $JAVA_HOME/lib/security/jssecacerts, and only supplies its password
in javax.net.ssl.trustStorePassword, and then uses a dedicated
truststore for Artemis. Defining both org.apache.activemq.ssl.trustStore
and org.apache.activemq.ssl.trustStorePassword now makes Artemis use the
dedicated truststore (javax.net.ssl.trustStore is not set as we use the
default location, so the second choice
org.apache.activemq.ssl.trustStore applies), but with the Java default
truststore password (first choice javax.net.ssl.trustStorePassword
applies instead of the second choice because it is set for the default
truststore). Obviously, this does not work unless both passwords are
identical!)
2021-02-03 12:02:19 -05:00
Domenico Francesco Bruscino bcdb13365e ARTEMIS-3075 Skip temporary queues scale down 2021-02-03 10:20:42 -05:00
Tomas Hofman ebeea15c2a ARTEMIS-3074 Add ActiveMQServerControl#createBridge() method variant accepting a JSON string 2021-02-01 19:21:40 -05:00
Justin Bertram d9e114da55 ARTEMIS-3089 direct delivery can break LVQ+non-destructive 2021-02-01 19:19:20 -05:00
Domenico Francesco Bruscino 267c6e5b56 ARTEMIS-3091 Fix AMQP message headers export from the journal 2021-02-01 11:54:37 -05:00
Clebert Suconic 1ed52cc5b0 NO-JIRA Speeding up AddressqueueDeleteDelayTest 2021-02-01 11:32:19 -05:00
gtully d186d20406 ARTEMIS-3067 - track application properties in memory estimate and check for modification after potential filter execution 2021-02-01 09:21:17 -05:00
gtully 05e9cfed4c ARTEMIS-3064 - ensure useTopologyForLoadBalancing is disabled when ha=false 2021-01-28 15:26:15 -05:00
Clebert Suconic f122b5059f NO-JIRA Improvements on StompStests
Replace some Wait clauses
Use lower timeout when results are expected to be null
2021-01-28 14:10:24 -05:00
Clebert Suconic c019218c4e ARTEMIS-3084 Eliminate Block on moving to next file on libaio 2021-01-28 11:10:40 -05:00
Justin Bertram 88b21f9039 ARTEMIS-3082 fix non-destructive + rollback 2021-01-27 20:41:33 -05:00
Ryan Yeats 86a2cad12a ARTEMIS-1884 add plugin API for message level authorization policies 2021-01-25 13:44:36 -06:00
Justin Bertram 4fbc8bf67d ARTEMIS-3008 mngmnt op to reload config file 2021-01-25 13:35:19 -06:00
Justin Bertram 9319f0c8c8 ARTEMIS-3012 incorrect fallback consumer authorization
The fallback consumer authorization implemented in ARTEMIS-592 needs to
check for an *exact* security-settings match otherwise in certain
configurations a more general and more permissive setting might
be used instead of the intended more specific and more restrictive
setting.
2021-01-25 13:34:18 -06:00
Domenico Francesco Bruscino 9d070812dd ARTEMIS-3079 Fix AMQP binary properties serialization to JSON 2021-01-25 13:22:53 -06:00
gtully ec32b68247 ARTEMIS-2559 - resolve intermittent test failure when last ack is lost 2021-01-20 11:25:10 -05:00
Clebert Suconic 78c0792989 ARTEMIS-3065 AMQP Anonymous producer would eventually block 2021-01-13 15:46:54 -05:00
franz1981 884336f08c ARTEMIS-3049 append only chunk list benchmark 2021-01-12 17:28:13 -05:00
Justin Bertram 9aa7a10744 ARTEMIS-3058 improper AddressSettings merge
The merge method in AddressSettings should *not* use any getters. It
should reference the relevant variables directly. Using any getters will
return default values in the underlying value is null. This can cause
problems for hierarchical settings.

Also fixed a few potential NPEs exposed by the test-case.
2021-01-11 11:38:59 -05:00
Clebert Suconic b4d66b684a ARTEMIS-3054 Fix inconsistencies between replica catchup and page cleanup 2021-01-08 13:48:41 -05:00
Clebert Suconic 727baf20b2 NO-JIRA fixing intermittent failure on QueueAutoDeleteTest 2021-01-07 10:42:26 -05:00
gtully c384776d6f ARTEMIS-3033 - fix early visibility on cached simple string parts array 2021-01-07 11:32:46 +00:00
gtully 546bbfebfb ARTEMIS-3033 - implement address tree map for wildcards in place of linked addresses 2021-01-06 20:31:46 +00:00
gtully 4e70fcdb52 ARTEMIS-3043 - remove reference to improperly named field, now corrected, from test 2021-01-06 20:19:49 +00:00
Andy Taylor ea7f001776 ARTEMIS-3043 - improvements on new console
https://issues.apache.org/jira/browse/ARTEMIS-3043
2021-01-06 10:47:57 -05:00
franz1981 2b5d99bbd1 ARTEMIS-3016 Refactored duplicate ids cache 2021-01-06 09:05:01 -05:00
franz1981 b3b5d4893c ARTEMIS-3016 Reduce DuplicateIDCache memory footprint 2021-01-06 09:05:01 -05:00
franz1981 985559d086 ARTEMIS-3016 Adding JMH benchmark on duplicate ids cache 2021-01-06 09:05:01 -05:00
Domenico Francesco Bruscino 52e7c13207 NO-JIRA Fix PageCursorStressTest with hole on ack
Use a browsing cursor to get depaged messages
2021-01-04 17:46:33 +01:00
Clebert Suconic c63aa9f481 NO-JIRA OpenWire test retry 2020-12-23 11:14:29 -05:00
Domenico Francesco Bruscino 92d6ae87ed ARTEMIS-3027 Fixing AMQP persister encoding 2020-12-22 10:37:34 -05:00
Clebert Suconic c1de2c8679 NO-JIRA Checkstyle fix 2020-12-21 20:10:31 -05:00
Clebert Suconic 562674aaa9 NO-JIRA Intermittent failure fix 2020-12-21 17:36:42 -05:00
Clebert Suconic 1bb15639d7 NO-JIRA Fix intermittent failure on JMSConsumer2Test 2020-12-21 17:33:35 -05:00
Clebert Suconic a2bce6e921 NO-JIRA intermittent failures on testsuite 2020-12-21 16:51:25 -05:00
Clebert Suconic 122187ab88 NO-JIRA Disabling storage on openWire TemporaryQueueClusterTest 2020-12-21 16:26:09 -05:00
Clebert Suconic c3beea3a9e NO-JIRA Fixing intermittent test failure
waiting advisory to update client on openwire client
2020-12-21 16:19:42 -05:00
Clebert Suconic b07ae7af7c NO-JIRA fixing intermittent test failures 2020-12-21 14:23:39 -05:00
Clebert Suconic d8f57ae810 NO-JIRA Fixing checkstyle after SoakPagingTest Improvement 2020-12-21 14:17:50 -05:00
Clebert Suconic e3670b64e5 NO-JIRA Improving SoakPagingTest 2020-12-21 12:59:40 -05:00
Domenico Francesco Bruscino d7fc2fb8b8 ARTEMIS-3040 Fix reloading large messages paged before 2.12 2020-12-21 11:03:11 -05:00
Clebert Suconic 9f59006226 NO-JIRA Intermittent test failure due to Wait.assertEquals 2020-12-21 09:40:25 -05:00
Clebert Suconic 6b7d963f45 ARTEMIS-3039 Fixing network isolation signal on replication 2020-12-18 16:56:14 -05:00
Tomas Hofman b1835fa2d8 ARTEMIS-3037 JournalImpl#checkKnownRecordID() implementation can leave a thread hanging in WAITING state 2020-12-18 12:44:18 -05:00
Clebert Suconic 1c0896f773 NO-JIRA Using Assume on DNSSwitchTest and ignoring if it cannot be executed 2020-12-17 16:49:45 -05:00
Clebert Suconic 78715e66e0 NO-JIRA Allow some variance on the fast disk calculation
SyncSendTest could intermittnetly fail on fast jenkins instances.
2020-12-17 16:06:44 -05:00
Clebert Suconic 920d97b159 NO-JIRA Fixing intermittent failure 2020-12-17 14:30:20 -05:00
Clebert Suconic 4e2eda82f3 ARTEMIS-3018 Adding ignore on test for further investigation 2020-12-17 13:06:49 -05:00
Clebert Suconic ef815997e9 NO-JIRA fixing intermittent failures 2020-12-17 11:51:48 -05:00
Clebert Suconic 02bcb3195f ARTEMIS-3034 CLI Transfer Option 2020-12-16 14:17:04 -05:00
Clebert Suconic 3d32f5ce98 NO-JIRA Improving test to not fail when CI is slow 2020-12-16 13:17:10 -05:00
Clebert Suconic 3b0fa74970 ARTEMIS-3027 Fixing tests after some large messages changes 2020-12-14 15:19:12 -05:00
Clebert Suconic 63a3bcbe32 ARTEMIS-3027 Fixing Redistribution of Large Messages after expiration fix
This is fixing AmqpLargeMessageRedistributionTes and AMQPLargeMessageOverCoreBridgeTest after last commit on this issue.
2020-12-14 11:18:38 -05:00
Clebert Suconic dfd41d958e ARTEMIS-3027 Store calculated expiration as part of the journal record on AMQP 2020-12-10 18:33:15 -05:00
Clebert Suconic 94f1857914 ARTEMIS-3026 Allow "re-encode" of amqp large messages
notice the quotes on "re-encode", as this is just replacing the set of application properties, properties and headers by a new set
if a flag reEncoded is set to true on AMQPLargeMessage
2020-12-10 00:37:11 -05:00
Clebert Suconic 825341734a ARTEMIS-3024 Expiry or DLQ Retry not working with AMQP 2020-12-08 14:13:53 -05:00
Clebert Suconic 6a6a3b3863 ARTEMIS-3023 Avoid opening AMQP Large Message for final parsing 2020-12-07 21:24:45 -05:00
Clebert Suconic e6a6e81b02 ARTEMIS-3019 expiry changes in AMQP Large Message 2020-12-07 10:44:51 -05:00
Bartosz Spyrko-Smietanko f546298273 [ARTEMIS-3004] RA connection properties are not propagated to XARecoveryConfig 2020-12-01 09:44:49 -05:00
Domenico Francesco Bruscino 7eb22c18db ARTEMIS-3014 Fix JMX RBAC guard 2020-11-30 11:12:25 -06:00
gtully 7b9641dc9a ARTEMIS-3009 - reference remoteBinding loadbalancing type on add binding, rather then doing a second pass via the po and address manager. rework ARTEMIS-1680 2020-11-25 10:28:11 +00:00
gtully 0585bf1662 ARTEMIS-179 - fix intermittent failure on BindingsClusterTest 2020-11-25 10:08:24 +00:00
gtully a5d7a043dc ARTEMIS-2990 - alway be getBiased and only publish complete records and only calculate linked addresses once ARTEMIS-2990 2020-11-24 13:33:21 +00:00
Clebert Suconic 686036b1a4 ARTEMIS-3007 Checking if a message becomes large during copy
This is to avoid shutting down the server on a critical failure in case the message is a few bytes shy
from beyond the max buffer size.

This will prevent the issue.
2020-11-22 23:42:25 -05:00
Domenico Francesco Bruscino 27392b1d7e ARTEMIS-3005 Fix scaling down AMQP messages routing 2020-11-20 14:48:40 -05:00
Clebert Suconic af4d2cd5fc ARTEMIS-3006 Upgrading to Qpid ProtonJ 0.33.8
I am also bringing a test I used to report https://issues.apache.org/jira/browse/PROTON-2297
Even though the issue here is on proton. There's no such thing as enough tests so I am keeping the test.
2020-11-20 13:31:21 -05:00
Justin Bertram ec2cb19f2d ARTEMIS-3003 NPE when reloading persisted security-setting 2020-11-20 10:08:39 -05:00
gtully ccc74a2313 ARTEMIS-2938 - disable openwire host verification to work with existing certs 2020-11-20 13:28:42 +00:00
Clebert Suconic 83b12ca09f NO-JIRA Adding MQTT Test 2020-11-19 11:51:35 -05:00
Clebert Suconic 85b9ac3cce NO-JIRA Improving AmqpLargeMessageTest
This includes removing a test that was removed by accident on ddd8ed4402
And improving the test with size parameters.
2020-11-19 09:53:55 -05:00
Luis De Bello a2d827e23f ARTEMIS-2991 Removing HttpAcceptorHandler from HttpKeepAliveRunnable when upgrade to websocket connection 2020-11-18 15:04:52 -06:00
gtully d0d1aef88c ARTEMIS-2938 - allow array list serialisation for dependent openwire tests AMQ-7399 2020-11-18 12:56:42 +00:00
Justin Bertram 2c0b192e81 ARTEMIS-2997 NPE with JMS queue/topic toString() 2020-11-17 16:21:54 -05:00
Clebert Suconic 80b2c7a89a NO-JIRA Update Travis and github builds to include jmh as part of their builds
This will make sure PR checks will always check for issues on the new module
2020-11-17 16:17:46 -05:00
sebthom 80c51803da ARTEMIS-3001 Provide address and queue count via ActiveMQServerControl
See https://issues.apache.org/jira/browse/ARTEMIS-3001
2020-11-17 15:55:50 -05:00
franz1981 923fcb7fe4 ARTEMIS-2990 Improve scalability of wildcard address manager add/remove 2020-11-17 14:39:17 -05:00
franz1981 d63422161f ARTEMIS-2996 Provide JMH Benchmarks for Artemis 2020-11-17 14:39:17 -05:00
Justin Bertram 4bb9ed2d4e ARTEMIS-2986 deleting scheduled messages not permanent
When deleting a durable scheduled message via the management API the
message would be removed from memory but it wouldn't be removed from
storage so when the broker restarted the message would reappear.

This commit fixes that by acking the message during the delete
operation.
2020-11-16 23:46:32 -05:00
gtully 683879495c ARTEMIS-2990 - avoid auto boxing on binding id used as map key 2020-11-13 10:03:28 +00:00
gtully 9675ecae42 ARTEMIS-2985 - don't block netty threads for mqtt protocol actions 2020-11-12 21:01:00 +00:00
Justin Bertram 1551983a73 ARTEMIS-2961 reset TLS values w/forceSSLParameters 2020-11-12 11:06:35 -05:00
Clebert Suconic 80fa86b738 NO-JIRA Fixing Intermittent Failure on TransientQueueTest 2020-11-12 10:26:35 -05:00
Clebert Suconic ead05b7a89 ARTEMIS-2983 Fixing PrintData with AMQP 2020-11-11 12:47:02 -05:00
Clebert Suconic 62099e86d3 NO-JIRA improving test 2020-11-10 12:00:31 -05:00
Clebert Suconic c46870a853 ARTEMIS-2974 Proper fix for the CI on MultiThreadAuditLoggingTest 2020-11-09 10:05:48 -05:00
Clebert Suconic b0e07a6b5f ARTEMIS-2974 Adding Wait.assert on test 2020-11-07 11:20:06 -05:00
Justin Bertram ecead9b130 ARTEMIS-2974 audit logger can print wrong user info
Using a ThreadLocal for the audit user information works in most cases,
but it can fail when dispatching messages to consumers because threads
are taken out of a pool to do the dispatching and those threads may not
be associated with the proper credentials. This commit fixes that
problem with the following changes:

 - Passes the Subject explicitly when logging audit info during dispatch
 - Relocates security audit logging from the SecurityManager
implementation(s) to the SecurityStore implementation
 - Associates the Subject with the connection properly with the new
security caching
2020-11-05 11:38:08 -05:00
Robbie Gemmell 5ff075b7ff ARTEMIS-2971: add ANONYMOUS and EXTERNAL SASL mechanism support for outgoing AMQP server connections 2020-11-05 11:32:35 -05:00
Clebert Suconic 030baaa2d3 ARTEMIS-2970 Improving test on Broker Connection 2020-11-04 17:50:41 -05:00
Clebert Suconic a52ddb60ca ARTEMIS-2970 Adding test validaing Broker Connection with socket disconencts and TTL 2020-11-04 16:48:17 -05:00
Clebert Suconic 4e7bb97df7 [maven-release-plugin] prepare for next development iteration 2020-11-02 17:45:51 -05:00
Clebert Suconic 9768017530 [maven-release-plugin] prepare release 2.16.0 2020-11-02 17:45:38 -05:00
Clebert Suconic 648340a864 ARTEMIS-2969 / ARTEMIS-2937 Making sure consumers are cleaned after failures and reconnects 2020-11-02 17:24:45 -05:00
Clebert Suconic 16e8db3aeb Revert "NO-JIRA avoiding having rogue process when running test"
This reverts commit a2d6d1d89d.
2020-11-02 12:42:30 -05:00
Clebert Suconic a2d6d1d89d NO-JIRA avoiding having rogue process when running test 2020-11-02 11:23:52 -05:00
Andy Taylor dafef2b267 ARTEMIS-2973 - JMS AMQP Shared global subscriber queue not deleted on unsubscribe
https://issues.apache.org/jira/browse/ARTEMIS-2973
2020-11-02 10:00:13 -05:00
Clebert Suconic c0b12b14c8 ARTEMIS-2969 / ARTEMIS-2937 Controlling connecting state on AMQP Broker Connection
- Fixed an issue where I needed to set connection to null after closing it
- Added more tests on QpidDispatchPeerTest (tests i would have done manually, and reproduced a few issues along the way)
2020-11-02 09:54:21 -05:00
Clebert Suconic 10debc3478 NO-JIRA bump on extra-tests 2020-10-30 10:41:13 -04:00
Clebert Suconic 28919b6ad8 [maven-release-plugin] prepare for next development iteration 2020-10-30 10:16:29 -04:00
Clebert Suconic af5ca9f1e6 [maven-release-plugin] prepare release 2.16.0 2020-10-30 10:16:17 -04:00
Clebert Suconic dff2ed3638 ARTEMIS-2937 Implementing skip create and skip delete on Mirror Source 2020-10-30 08:44:51 -04:00
Clebert Suconic 480197975b ARTEMIS-2967 Adding testSimpleConnect back and fixing a possible NPE 2020-10-29 22:01:01 -04:00
Clebert Suconic 9b0f7605cb ARTEMIS-2969 / ARTEMIS-2937 Dealing with Connection Timeout properly on AMQP Broker Connections 2020-10-29 21:55:10 -04:00
Clebert Suconic dc7eb5c23d ARTEMIS-2937 Broker connection improvements
- Adding a paragraph about addressing and distinct queue names
- Renaming match on peers, senders and receivers as "address-match"
- Changing qpid dispatch test to use a single listener
- Fixing reconnect attemps message
2020-10-29 15:01:51 -04:00
Clebert Suconic d51c89471e ARTEMIS-2966 Anycast queues with distinct names would cause issues on sending messages 2020-10-29 10:09:36 -04:00
Clebert Suconic 753dac47d8 ARTEMIS-2937 Cleanup on tests 2020-10-29 10:09:36 -04:00
gtully e5566d5211 ARTEMIS-2964 - fire advisory messages via post office, independent of connection state. consume via regular auth 2020-10-29 09:58:52 +00:00
Clebert Suconic bf52134dc0 ARTEMIS-2937 Fixing Tests and some review 2020-10-28 15:08:48 -04:00
Clebert Suconic 8499eac76c ARTEMIS-2937 Server Side AMQP Connectivity with options to transfer queues or replicate data 2020-10-28 11:37:25 -04:00
Clebert Suconic 0c5d0303ba NO-JIRA Fixing QueueControlTest in certains envs 2020-10-26 09:45:40 -04:00
Clebert Suconic b309bb8f59 NO-JIRA Just adding some info on a test assert 2020-10-23 01:23:30 -04:00
Clebert Suconic f6ef285859 ARTEMIS-2927 LVQ broken after restart 2020-10-22 13:32:19 -04:00
Domenico Francesco Bruscino 90434a4cf4 ARTEMIS-2935 Fix JMX ObjectNames
Fix invalid object names setting a default broker name if it cannot be used.
2020-10-22 15:10:02 +08:00
gtully 69e58322f1 NO JIRA - add some durable sub loadbalancing to the scenario test 2020-10-21 14:57:12 +01:00
Emmanuel Hugonnet fdfc58171b [ARTEMIS-2939]: Artemis should not delete corrupt log files.
* Moving corrupted journal files to the attic folder.

Jira: https://issues.apache.org/jira/browse/ARTEMIS-2939
2020-10-20 18:39:06 -04:00
franz1981 4545749969 ARTEMIS-2941 Improve JDBC HA connection resiliency 2020-10-20 17:23:48 -04:00
gtully c4832c3209 ARTEMIS-2953 - drop the use of non deterministic finalize 2020-10-19 13:55:52 -04:00
Justin Bertram 75e12b5e1d ARTEMIS-2947 Implement SecurityManager that supports replication 2020-10-19 10:07:57 -04:00
gtully 583bd3602a ARTEMIS-2888 ARTEMIS-2859 ARTEMIS-2768 - revert new page-store-name addressSetting, when the page store respects the target address and the size is tallied on the target address store, it is no longer neecessary 2020-10-19 14:04:35 +01:00
gtully 4e8ce9ed10 ARTEMIS-2859 - track owning page store as in a message reference to ensure correct usage tracking, only track size on the owning store, reference everywhere else via refUp 2020-10-15 00:06:43 -04:00
Andy Taylor 0ce173dcb5 ARTEMIS-2838 - migrate to HawtIO 2
https://issues.apache.org/jira/browse/ARTEMIS-2838
2020-10-09 09:20:29 +01:00
franz1981 b4532d944d ARTEMIS-2823 Use datasource with JDBC store db connections fixes
It add additional required fixes:
- Fixed uncommitted deleted tx records
- Fixed JDBC authorization on test
- Using property-based version for commons-dbcp2
- stopping thread pool after activation to allow JDBC lease locks to release the lock
- centralize JDBC network timeout configuration and save repeating it
- adding dbcp2 as the default pooled DataSource to be used
2020-10-06 10:19:06 +02:00
Mikko Uoti 2faafec737 ARTEMIS-2823 Use datasource with JDBC store db connections
Replaces direct jdbc connections with dbcp2 datasource. Adds
configuration options to use alternative datasources and to alter the
parameters. While adding slight overhead, this vastly improves the
management and pooling capabilities with db connections.
2020-10-06 08:32:58 +03:00
gtully 7a472d2782 ARTEMIS-2768 - fix up conditional to include null pageStoreName option, it was a little over eager 2020-09-28 15:53:06 +01:00
Clebert Suconic 1d9964c2b0 NO-JIRA Fixing test intermittent failure with a Wait call 2020-09-27 00:26:15 -04:00
Clebert Suconic 702f3c453b ARTEMIS-2906 Fixing test on lastAckTimestamp 2020-09-25 15:26:14 -04:00
Clebert Suconic 98b94b5846 NO-JIRA Adding a test where I am sending an AMQP large message and sending it over a core bridge to another node
There are no semantic changes here. I wanted to check something and committed a good test.
2020-09-25 15:19:19 -04:00
Andy Taylor c77bf50db4 ARTEMIS-2908 - Persist Divert Configuration in Bindings journal
https://issues.apache.org/jira/browse/ARTEMIS-2908
2020-09-25 10:03:40 -04:00
gtully 77d1c8cd7f ARTEMIS-2768 - add warning if wildcard subscription does not have a matching page-store-name address setting 2020-09-24 13:52:57 -04:00
Justin Bertram 0f60b5a8e4 ARTEMIS-2906 add lastAckTimestamp to message counter 2020-09-24 12:51:00 -04:00
Justin Bertram cdc283fba5 ARTEMIS-2915 duplicate temp queues using OpenWire 2020-09-24 12:48:36 -04:00
franz1981 207c2265bf ARTEMIS-2912 Server start exception before activation can cause a zombie broker 2020-09-24 10:26:50 -04:00
gtully fa04881c6f ARTEMIS-2888 ARTEMIS-2859 ARTEMIS-2768 - new page-store-name addressSetting to allow wildcard subscriptions share a single page store 2020-09-24 09:39:31 +01:00
Justin Bertram beaacbfa8d ARTEMIS-2904 prevent acceptor from automatically starting 2020-09-23 20:19:16 -04:00
Robbie Gemmell acdd8b4dce NO-JIRA: tweaks to address some sporadic test failures 2020-09-23 17:22:48 +01:00
Justin Bertram 246bf08391 ARTEMIS-2909 revert ARTEMIS-2322
This reverts commit dbb3a90fe6.

The org.apache.activemq.artemis.core.server.Queue#getRate method is for
slow-consumer detection and is designed for internal use only.

Furthermore, it's too opaque to be trusted by a remote user as it only
returns the number of message added to the queue since *the last time
it was called*. The problem here is that the user calling it doesn't
know when it was invoked last. Therefore, they could be getting the
rate of messages added for the last 5 minutes or the last 5
milliseconds. This can lead to inconsistent and misleading results.

There are three main ways for users to track rates of message
production and consumption:

 1. Use a metrics plugin. This is the most feature-rich and flexible
way to track broker metrics, although it requires tools (e.g.
Prometheus) to store the metrics and display them (e.g. Grafana).

 2. Invoke the getMessageCount() and getMessagesAdded() management
methods and store the returned values along with the time they were
retrieved. A time-series database is a great tool for this job. This is
exactly what tools like Prometheus do. That data can then be used to
create informative graphs, etc. using tools like Grafana. Of course, one
can skip all the tools and just do some simple math to calculate rates
based on the last time the counts were retrieved.

 3. Use the broker's message counters. Message counters are the broker's
simple way of providing historical information about the queue. They
provide similar results to the previous solutions, but with less
flexibility since they only track data while the broker is up and
there's not really any good options for graphing.
2020-09-23 12:08:57 -04:00
Robbie Gemmell d9d98dfa8a ARTEMIS-2910: consider message annotations when determining routing type used for auto-creation with anonymous producers 2020-09-21 18:07:26 +01:00
Justin Bertram b89690813d NO-JIRA fixing tests after ARTEMIS-2889 changes broke them 2020-09-17 09:51:55 -05:00
Clebert Suconic bc1f841244 ARTEMIS-2901 Fixing testsuite on InterruptLargeMessageTest
The queue is missing access to the server,
recent changed functionality on temporary queues namespace needed
the server and now the unit test has to pass in the reference to fix the test.
2020-09-17 09:28:53 -04:00
Bernd Gutjahr 100d070942 ARTEMIS-2878 Add numberOfPages as metric
Added metric 'number.of.pages' to provide numberOfPages for an address.
2020-09-16 09:16:55 -05:00
Justin Bertram 9a90248f49 ARTEMIS-2889 better support for JMS topics with legacy LDAP plugin 2020-09-16 10:14:57 -04:00
Justin Bertram e47eb5ae20 ARTEMIS-589 flow control for individual STOMP subscribers 2020-09-16 10:13:47 -04:00
Justin Bertram 676bb101d8 ARTEMIS-2896 RA can double legacy prefix 2020-09-16 10:12:20 -04:00
Justin Bertram 6be8966164 ARTEMIS-2901 support namespace for temporary queues 2020-09-16 10:10:28 -04:00
Howard Gao fe5b81fd55 ARTEMIS-2854 Non-durable subscribers stop receiving after failover
In a cluster scenario where non durable subscribers fail over to
backup while another live node forwarding messages to it,
there is a chance that the the live node keeps the old remote
binding for the subs and messages go to those
old remote bindings will result in "binding not found".
2020-09-16 10:03:36 -04:00
Clebert Suconic 3e557f1070 ARTEMIS-2902 Fixing QueueControlUsingCoreTest Class Cast Exception on Long to Integer 2020-09-16 09:56:41 -04:00
Andy Taylor c29a8cda5c ARTEMIS-2902 - expose at queue control messages held in a prepared tx
https://issues.apache.org/jira/browse/ARTEMIS-2902
2020-09-15 11:08:59 -04:00
Clebert Suconic 7cf5289efa ARTEMIS-2900 Expose property (getWholeMessageSize) so users can intercept size of messages and large messages 2020-09-14 15:35:46 -04:00
Stefan Krutzler 1783aa15cb ARTEMIS-2875 - retry to reattach sessions on failed failover for the specified amount of times set in reconnectAttempts parameter 2020-09-10 08:21:18 +02:00
Justin Bertram f5a6189e2d ARTEMIS-2890 FQQN security-settings + JMS not working 2020-09-03 16:52:51 -04:00
Clebert Suconic c3887ed710 ARTEMIS-2887 Adding back Message.toString on audit logger 2020-08-26 21:48:30 -04:00
Justin Bertram 90853409a0 ARTEMIS-2886 optimize security auth
Both authentication and authorization will hit the underlying security
repository (e.g. files, LDAP, etc.). For example, creating a JMS
connection and a consumer will result in 2 hits with the *same*
authentication request. This can cause unwanted (and unnecessary)
resource utilization, especially in the case of networked configuration
like LDAP.

There is already a rudimentary cache for authorization, but it is
cleared *totally* every 10 seconds by default (controlled via the
security-invalidation-interval setting), and it must be populated
initially which still results in duplicate auth requests.

This commit optimizes authentication and authorization via the following
changes:

 - Replace our home-grown cache with Google Guava's cache. This provides
simple caching with both time-based and size-based LRU eviction. See more
at https://github.com/google/guava/wiki/CachesExplained. I also thought
about using Caffeine, but we already have a dependency on Guava and the
cache implementions look to be negligibly different for this use-case.
 - Add caching for authentication. Both successful and unsuccessful
authentication attempts will be cached to spare the underlying security
repository as much as possible. Authenticated Subjects will be cached
and re-used whenever possible.
 - Authorization will used Subjects cached during authentication. If the
required Subject is not in the cache it will be fetched from the
underlying security repo.
 - Caching can be disabled by setting the security-invalidation-interval
to 0.
 - Cache sizes are configurable.
 - Management operations exist to inspect cache sizes at runtime.
2020-08-26 13:36:24 -05:00
Domenico Francesco Bruscino b85156cc27 NO-JIRA POM on extra-tests to 2.16.0-SNAPSHOT 2020-08-24 16:24:25 +02:00
Domenico Francesco Bruscino 32bf9680f2 [maven-release-plugin] prepare for next development iteration 2020-08-24 16:03:24 +02:00
Domenico Francesco Bruscino a549fcedde [maven-release-plugin] prepare release 2.15.0 2020-08-24 16:03:12 +02:00
Justin Bertram d86067a65b ARTEMIS-2872 support FQQN syntax for security-settings 2020-08-22 18:24:40 -05:00
Justin Bertram 57b8c22a62 ARTEMIS-2880 support FQQN syntax for JNDI lookup 2020-08-20 15:16:17 -05:00
Justin Bertram 582a430213 ARTEMIS-2882 better support for JMS topics + FQQN
Support FQQN with JMS topics when sending to or consuming from a
specific subscription. This applies to JMS over core, OpenWire,
and AMQP.
2020-08-20 14:32:11 -05:00
Clebert Suconic a2bf85f529 NO-JIRA Fixing java.security location on java11 2020-08-20 11:36:21 -04:00
Michael Pearce 2c506cc52a [ARTEMIS-2863] Add support to pause dispatch when group rebalance
Add test case
Add implementation
Add docs
2020-08-19 12:04:50 -04:00
Clebert Suconic c63c1f40ca NO-JIRA Small improvement on compatibility tests 2020-08-19 11:47:27 -04:00
franz1981 40f20cfe6a ARTEMIS-2877 Fix journal replication scalability
This is allowing journal appends to happen in burst
during replication, by batching replication response
into the network at the end of the append burst.
2020-08-17 13:01:41 -04:00
franz1981 a6bf7d0e04 ARTEMIS-2837 Bursts of open files under high load
This would prevent to push a new opened file if there
is already one available to be consumed
2020-08-17 13:01:41 -04:00
franz1981 851aef1172 Revert "ARTEMIS-2837 Avoiding bursts on writes and pending callbacks"
This reverts commit 1761f763
2020-08-17 13:01:41 -04:00
Justin Bertram fa5b56ef1d ARTEMIS-2881 deadlock when destroying q and depaging
I couldn't reproduce this with a test, but static code analysis led me
to this solution which is similar to the fix done for ARTEMIS-2592 via
e397a17796.
2020-08-17 10:34:20 -05:00
Robbie Gemmell 131b8b22ec NO-JIRA: fix RandomUtilDistributionTest assertion and improve failure message 2020-08-11 10:32:52 -04:00
Clebert Suconic c551df770c ARTEMIS-2868 Protect Topology Updates from Split Brain on broker shutdown as well 2020-08-07 12:39:20 -04:00
Justin Bertram 43e3cd6047 ARTEMIS-2865 make tests more robust 2020-08-06 22:07:42 -05:00
Clebert Suconic 27cb9b37b1 ARTEMIS-2868 Protect Topology Updates from Split Brain 2020-08-06 17:40:57 -04:00
Clebert Suconic 9842f45a49 ARTEMIS-2867 Do not cache IPs on DNS Entries for NetworkHealthCheck
In case of a DNS outage, the pinger should still fail
If we cache the InetAddress this would not be possible
2020-08-06 17:40:41 -04:00
Clebert Suconic df2f48a481 NO-JIRA update RandomUtil.randomInterval to deal with (max==min) 2020-08-06 17:08:54 -04:00
Michael Pearce 486896d99e ARTEMIS-2873 Config-managed queues are auto-deleted
auto-delete-queues and auto-delete-created-queues should only apply to
NON configuration managed queues.
2020-08-06 15:19:57 -05:00
Justin Bertram 8473946646 ARTEMIS-2865 LegacyLDAPSecuritySettingPlugin can change default security match 2020-08-06 15:36:05 -04:00
Francesco Nigro 60e25b763c ARTEMIS-2844 Improve binding query performance by reusing AddressImpl instances 2020-07-30 23:32:10 -04:00
Clebert Suconic c00b210629 ARTEMIS-2858 DNS Tests on reconnects and backups
There are no fixes as part of this test addition.  As I wrote this test as I was debugging DNS issues.
2020-07-29 17:56:55 -04:00
Clebert Suconic 3d86d78828 ARTEMIS-2587 Exposing ActiveMQServer::isActivate through management at ActiveMQServerControl 2020-07-29 11:41:41 -04:00
brusdev 18b8df0f09 ARTEMIS-2855 Define a new broker plugin to track XA transactions 2020-07-29 10:40:55 -04:00
Justin Bertram 52d3ed1c68 ARTEMIS-2848 RA fails w/durable sub w/legacy prefix 2020-07-23 22:27:15 -04:00
Scott Werner e3ed8e815b ARTEMIS-2847 socks5h support
Added 'socksRemoteDNS' transport parameter.
If set to true, remote destination socket is created unresolved
and DNS resolution is disabled.
2020-07-21 16:04:15 -04:00
Clebert Suconic ccc0fa7100 ARTEMIS-2843 non-destructive LVQ not delivering msg to consumer 2020-07-20 12:01:23 -04:00
Clebert Suconic 7be77169c2 NO-JIRA POM on extra-tests to 2.15.0-SNAPSHOT 2020-07-09 13:57:24 -04:00
Clebert Suconic 6690ba1d24 [maven-release-plugin] prepare for next development iteration 2020-07-09 12:49:08 -04:00
Clebert Suconic a76f41a7ed [maven-release-plugin] prepare release 2.14.0 2020-07-09 12:48:54 -04:00
Clebert Suconic 5e69d7c34e NO-JIRA removing verbosing logging from test 2020-07-09 10:36:32 -04:00
Clebert Suconic 1761f76308 ARTEMIS-2837 Avoiding bursts on writes and pending callbacks 2020-07-08 23:08:27 -04:00
Howard Gao 6f8ff55dec ARTEMIS-2835 Porting HORNETQ-1575 and HORNETQ-1578
1 of 2) - Porting of HORNETMQ-1575

In a live-backup scenario, when live is down and backup becomes live, clients
using HA Connection Factories can failover automatically. However if a
client decides to create a new connection by itself (as in camel jms case)
there is a chance that the new connection is pointing to the dead live
and the connection won't be successful. The reason is that if the old
connection is gone the backup will not get a chance to announce itself
back to client so it fails on initial connection.

The fix is to let CF remember the old topology and use it on any
initial connection attempts.
2020-07-08 11:27:36 -04:00
Justin Bertram 20daf2354c ARTEMIS-2817 Support Stomp subscription with FQQN+multicast 2020-07-07 08:21:22 -04:00
Justin Bertram f5d5710133 ARTEMIS-2834 leaking meters
Move all of the meter registration code into the ManagementServer
implementation to provide better life-cycle management.
2020-07-07 08:18:28 -04:00
Justin Bertram fd207e75b0 ARTEMIS-2829 wrong return type for getDiskStoreUsage
Since getDiskStoreUsage on the ActiveMQServerControl is converting a
double to a long the value is always 0 in the management API. It should
return a double instead.
2020-07-07 08:18:28 -04:00
Justin Bertram cb7cd729d7 ARTEMIS-2828 add addressSize metric
Adding this metric required moving the meter registration code from the
AddressInfo class to the ManagementService in order to get clean access
to both the AddressInfo and AddressControl classes.
2020-07-07 08:18:28 -04:00
Justin Bertram 73c4e399d9 NO-JIRA clarify diskStoreUsage description 2020-07-07 08:18:28 -04:00
Justin Bertram ac8ffedf66 ARTEMIS-2827 add addressMemoryUsagePercentage as metric 2020-07-07 08:18:28 -04:00
Justin Bertram 26091f1907 ARTEMIS-2825 wrong calc for DiskStoreUsagePercentage
The calculation used by
ActiveMQServerControlImpl.getDiskStoreUsagePercentage() is incorrect. It
uses disk space info with global-max-size which is for address memory.
Also, the existing getDiskStoreUsage() method *already* returns a
percentage of total disk store usage so this method seems redundant.
2020-07-07 08:18:28 -04:00
Clebert Suconic 3f99c4b846 ARTEMIS-2797 Fixing updateQueue on filter / fixing ActiveMQServerControlTest 2020-07-06 21:45:27 -04:00
Jan Šmucr 6cc370e169 ARTEMIS-2797 Fixing redeploy mechanism
Queue settings are reset to their default values upon broker.xml reload ONLY.
Regular calls to PostOfficeImpl#updateQueue are no longer affected.
2020-07-06 15:02:03 -04:00
Clebert Suconic 257d353896 ARTEMIS-2797 Logging redeployment errors and speeding RedeployTest 2020-07-01 08:33:01 -04:00
Clebert Suconic 3d746d3b23 NO-JIRA Speeding test and intermittent failure 2020-06-29 21:45:13 -04:00
Clebert Suconic f79a4be4c1 ARTEMIS-2831 Avoiding StackOverFlowException when setDLAOnNoRoute(true) 2020-06-29 16:50:00 -04:00
Clebert Suconic 51d1ed4e11 ARTEMIS-2819 Proper fix (previous fix was breaking the testsuite) 2020-06-29 15:37:55 -04:00
Jan Šmucr 85e07a8afe ARTEMIS-2820 Undeploy diverts by removing them from broker.xml 2020-06-24 22:01:56 +01:00
Keith Wall efb1bd3f9f ARTEMIS-2819 exact match address setting removal ineffective 2020-06-24 12:54:05 -05:00
Jan Šmucr 5070e7a72c ARTEMIS-2797 - Reset queue properties by unsetting them in broker.xml
Now it is possible to reset queue parameters to their defaults by removing them
from broker.xml and redeploying the configuration.

Originally this PR covered the "filter" parameter only.
2020-06-23 11:20:03 +02:00
Havret 3e394b45e9 ARTEMIS-2815: Fix null pointer exception on attempt to update queue without filter 2020-06-23 09:36:45 +01:00
Clebert Suconic c54ff4c859 NO-JIRA fixing Intermittent failure on test 2020-06-22 20:42:29 -04:00
Robbie Gemmell 515dde9ef3 NO-JIRA: use a consistent version for the surefire and failsafe plugins from the parent, override to newer version 2020-06-22 14:04:48 -04:00
Robbie Gemmell ccc01ac4e5 ARTEMIS-2813: add JUnit assumption check, in case class runs within manually -Dtest=<foo> set 2020-06-22 13:08:13 +01:00
Robbie Gemmell 50bf1efeef ARTEMIS-2813: also exclude Core client kerberos-via-TLS test that can never work on JDK11+ as the ciphers were removed 2020-06-19 14:55:27 +01:00
Robbie Gemmell 932544f832 ARTEMIS-2813: only run the kerberos tests on JDK8 for now 2020-06-19 10:44:03 +01:00
Justin Bertram 0908cac668 ARTEMIS-2810 support all address-settings via mgmnt 2020-06-18 09:15:53 -04:00
Robbie Gemmell 502bfcfc56 ARTEMIS-2109: Update extra-tests bits. Disable errorprone for examples, at least for now, to avoid updating hundreds of poms. Allows building on 11+ 2020-06-11 18:50:01 +01:00
Robbie Gemmell d2c46762e8 ARTEMIS-2109: fix javadoc errors, remove doclint config for JDK8, remove superfluous plugin versions, update to 3.0.1 javadoc plugin
Using 3.0.1 like the current apache parent pom [not being used], and also as newer ones break build.
2020-06-11 18:50:01 +01:00
Emmanuel Hugonnet efe0f468de ARTEMIS-2109: Updating the build to be able to execute it on Java 11 and Java 8. 2020-06-11 18:50:01 +01:00
Robbie Gemmell 4641dedad6 ARTEMIS-2799: satisfy checkstyle to get tests working 2020-06-11 11:03:01 +01:00
Jacob Middag ba674fb842 ARTEMIS-2799 sniHost property not allowed on URLs 2020-06-10 16:35:12 -05:00
Justin Bertram e1d8f42cc1 ARTEMIS-2798 expiration for AMQP msgs not reloaded 2020-06-09 15:18:45 -04:00
Michael Pearce 99f6c7bf20 ARTEMIS-2787 - Add ability to disable and enable a queue
Add feature
Add tests
Add docs
Add missing bits noticed in ring-size
Address comments
2020-06-08 18:02:48 -04:00
Clebert Suconic 3f429d7707 NO-JIRA Enabling 2.10.0 on compatibility tests 2020-06-03 15:11:29 -04:00
gtully 1a5b1fbe8e ARTEMIS-2788 clear openwire producer state on produce close event 2020-06-03 13:33:18 +01:00
brusdev 053cfbc102 NO-JIRA Fix invalid log path in BMRules 2020-06-01 22:03:43 +02:00
brusdev 0b7ecf1a41 NO-JIRA Add RetryRule to FailoverClusterTest 2020-06-01 15:21:09 -04:00
Justin Bertram 7096bc187a ARTEMIS-2649 always over-write ORIG message props
ORIG message propertes like _AMQ_ORIG_ADDRESS are added to messages
during various broker operations (e.g. diverting a message, expiring a
message, etc.). However, if multiple operations try to set these
properties on the same message (e.g. administratively moving a message
which eventually gets sent to a dead-letter address) then important
details can be lost. This is particularly problematic when using
auto-created dead-letter or expiry resources which use filters based on
_AMQ_ORIG_ADDRESS and can lead to message loss.

This commit simply over-writes the existing ORIG properties rather than
preserving them so that the most recent information is available.
2020-06-01 15:19:34 -04:00
Francesco Nigro 6db63acee2 ARTEMIS-2785 test Netty direct ByteBuf memory leak due to compression 2020-06-01 11:12:37 -04:00
Justin Bertram 0443128b81 ARTEMIS-2783 user not set on shared queue 2020-05-28 16:38:26 -04:00
Clebert Suconic 39b3dd1044 ARTEMIS-2781 Adding getAllQueueNames; fixing tests 2020-05-28 16:36:59 -04:00
Clebert Suconic 06276ff26f NO-JIRA Fixing intermittent failure on PagingReceiveTest 2020-05-28 12:41:19 -04:00
brusdev 9a7620fd71 ARTEMIS-2770 Update diverts using the management API 2020-05-26 20:31:19 -04:00
Justin Bertram fd11a1e079 ARTEMIS-2781 return only local queue names for AddressControl.getQueueNames() 2020-05-26 17:30:38 -05:00
Clebert Suconic 4a25cc9c59 ARTEMIS-2775 Cleaning up activemq5-unit-ests
Some tests that are ignored, were never really operational.
2020-05-21 17:00:45 -04:00
brusdev 3bcea4e78e ARTEMIS-2774 Remove the divert transformer on divert destroying 2020-05-21 16:27:54 -04:00
Justin Bertram 4b7b612eb9 ARTEMIS-2771 support JVM GC & thread metrics 2020-05-20 15:53:15 -04:00
Clebert Suconic faa83b2ba6 [maven-release-plugin] prepare for next development iteration 2020-05-16 18:38:47 -04:00
Clebert Suconic 5f49d89264 [maven-release-plugin] prepare release 2.13.0 2020-05-16 18:38:34 -04:00
Clebert Suconic 83c7942a78 ARTEMIS-2766 Fixing AMQP Large Messages after Parsing change 2020-05-15 17:57:00 -04:00
Clebert Suconic fd2b869a1a Changing Extra Tests pom after pom changes 2020-05-15 16:56:52 -04:00
Clebert Suconic c99fcd501b [maven-release-plugin] prepare for next development iteration 2020-05-15 16:42:54 -04:00
Clebert Suconic 47fafac760 [maven-release-plugin] prepare release 2.13.0 2020-05-15 16:42:41 -04:00
Clebert Suconic 9ff3c17525 ARTEMIS-2757 improving flow control in AMQP 2020-05-15 16:12:07 -04:00
Francesco Nigro 4e1af3aea3 ARTEMIS-2762 JournalRecord is using too much memory to track JournalFile updates 2020-05-15 09:21:33 -04:00
Justin Bertram 3bd0d8bf38 ARTEMIS-2758 support disabling metrics per address 2020-05-14 15:16:23 -04:00
brusdev 71d311322a ARTEMIS-2759 Warn ignored connection factory URI parameters 2020-05-14 09:04:49 -04:00
Clebert Suconic 4fe4220ff0 ARTEMIS-2372 / ARTEMIS-2740 Improving Message Annotations support in AMQP
- when sending messages to DLQ or Expiry we now use x-opt legal names
- we now support filtering thorugh annotations if using m. as a prefix.
- enabling hyphenated_props: to allow m. as a prefix
2020-05-13 10:55:36 -04:00
Christopher L. Shannon (cshannon) 80ce96768e ARTEMIS-2752: Properly cleanup Federated Address Divert consumers
DivertBindings are now properly cleaned up when a queue binding is
removed that matches the divert. The correct key is now used to remove
the queue address from the set and the correct address is now used to
remove the remote consumer.
2020-05-11 14:56:24 -04:00
Atri Sharma 35e1d4e679 ARTEMIS-2709: Fix LiveToLiveFailoverTest::scaleDownDelay
Test fails with the primary server being killed by the crash and the backup server is killed
by the tearDown before ScaleDownHandler can kick in. This commit adds a wait method to allow
ScaleDownHandler to process before the test completes.
2020-05-11 14:50:59 -04:00
Clebert Suconic fad6ff9418 NO-JIRA Adding retryRule back on SoakPagingTest 2020-05-10 21:37:20 -04:00
brusdev b43f888ce2 ARTEMIS-2755 Add SoakPagingTest timeouts
Limit time awaiting producers and consumers.
2020-05-10 21:35:28 -04:00
brusdev 74598c88df ARTEMIS-2755 Improve SoakPagingTest stability
Await producers and consumer creation before to await the test running time.
2020-05-08 20:28:14 +02:00
Clebert Suconic c20d894e81 ARTEMIS-2753 Fixing OpenWire Temporary queue names over wildcard configurations 2020-05-06 23:24:24 -04:00
Michael Pearce ed4086c687 ARTEMIS-2534 Adding additional test for OpenWire and TempQueue 2020-05-05 18:19:11 -04:00
Clebert Suconic 863f0298d5 NO-JIRA Fixing intermittent failure (Wait condition) 2020-05-04 18:50:24 -04:00
Clebert Suconic 974423e0d2 NO-JIRA fixing test
AmqpExpiredMessageTest will expire messages, eventually the counter could be 0
so it is invalid to assertEquals(1, queue.getMessageCount()) as it will be 0 eventually.
2020-05-04 15:31:20 -04:00
Andy Taylor 2ab381565c ARTEMIS-2749 - Broadcast Group Control Improvements
https://issues.apache.org/jira/browse/ARTEMIS-2749
2020-05-04 16:20:08 +01:00