Commit Graph

741 Commits

Author SHA1 Message Date
Clebert Suconic 6e28e46834 ARTEMIS-4503 Use BufferedOutputStream on ./artemis consumer --data 2023-11-13 16:56:26 -05:00
Clebert Suconic b041f2cde2 ARTEMIS-4476 Client Failures Soak Test
I was not able to reproduce the actual issue here, but I heavily used this test during debugging.
This will not serve as a reproducer to the Ghost consumer issue, but this is a valid test.
2023-11-09 15:09:35 -05:00
Robbie Gemmell 66dd52fcf2 ARTEMIS-4490: update to SLF4J 2.0.9 2023-11-03 17:55:48 +00:00
Robbie Gemmell bbe40c4b45 [maven-release-plugin] prepare for next development iteration 2023-10-27 11:14:45 +01:00
Robbie Gemmell f4bccc1a26 [maven-release-plugin] prepare release 2.31.2 2023-10-27 11:14:19 +01:00
Clebert Suconic 845648526f [maven-release-plugin] prepare for next development iteration 2023-10-25 14:45:43 -04:00
Clebert Suconic 5a1c9bf3d1 [maven-release-plugin] prepare release 2.31.1 2023-10-25 14:45:41 -04:00
Clebert Suconic 0d2a94b006 [maven-release-plugin] prepare for next development iteration 2023-09-15 14:40:49 -04:00
Clebert Suconic 74f08ea059 [maven-release-plugin] prepare release 2.31.0 2023-09-15 14:40:45 -04:00
Clebert Suconic 784aa9f884 [maven-release-plugin] prepare for next development iteration 2023-09-14 16:54:07 -04:00
Clebert Suconic 816b0828eb [maven-release-plugin] prepare release 2.31.0 2023-09-14 16:54:05 -04:00
Clebert Suconic 6c9ddfd460 [maven-release-plugin] prepare for next development iteration 2023-09-14 14:58:10 -04:00
Clebert Suconic 30e4df8ff8 [maven-release-plugin] prepare release 2.31.0 2023-09-14 14:58:07 -04:00
Clebert Suconic 536174e0bb ARTEMIS-4397 Fixing Upgrade command
co-authored with Domenico Francesco Bruscino <brusdev@apache.org>
2023-09-14 12:25:46 -04:00
Domenico Francesco Bruscino 85b8db94a2 ARTEMIS-4428 Set rootLogger level to INFO 2023-09-13 12:58:37 +01:00
Domenico Francesco Bruscino 2731299345 ARTEMIS-4428 Expand default loggers configuration 2023-09-12 13:45:16 -04:00
Robbie Gemmell 819e1a9802 NO-JIRA: make various poms indents consistent 2023-09-12 17:03:58 +01:00
Clebert Suconic 6a8cd175dc ARTEMIS-4401 improving JDBC Performance with Paging by a significant factor 2023-09-12 08:34:09 -04:00
Clebert Suconic 4b8c7199e7 ARTEMIS-4384 Moving Cluster verify under verify group
With this you would access the same functionality as ./artemis check cluster
2023-09-08 14:08:14 -04:00
Clebert Suconic 47a3ee5304 ARTEMIS-4413 Improve reliability of CheckTest.testNodeCheckTopology
I have also made some other quick changes to make testing here easier.
2023-09-01 11:53:58 -04:00
Clebert Suconic 78a3e66f3d ARTEMIS-4372 Renaming --staticCluster as --static-cluster 2023-09-01 11:53:58 -04:00
Alexey Markevich 50a1824c02 ARTEMIS-4349: Replace Guava cache with Caffeine
Combination of changes from Alexey Markevich with updates from Robbie Gemmell. See PRs for detail.

This closes #4584.
This closes #4540.
2023-08-29 16:00:53 +01:00
Robbie Gemmell df410da7ae ARTEMIS-4402: add some unit tests exercising the semi-generated log/message bundles to make generation problems more quickly noticable 2023-08-25 15:02:24 +01:00
Šmucr Jan 999789bdc5 ARTEMIS-4390 Fix the upgrade-linux smoke test on Windows
The test cannot work on Windows unless I can make the `upgrade` CLI command
respect my choice to upgrade a Linux distribution. This commit therefore adds
a new `--linux` option for the `upgrade` command, and leverages it in the
`upgrade-linux` smoke test.

* The `--cygwin` option has been preserved for backwards compatibility.
* The `IS_CYGWIN` attribute has been renamed to `IS_NIX` to reflect the change.
* The OS "recognition" method (in `InstallAbstract::run`) has been updated to
  reflect the need for enforcing *nix behavior, which is now the default if all
  other methods fail.
2023-08-16 09:06:10 -04:00
Clebert Suconic 064018a3e9 ARTEMIS-4384 cluster verify CLI command
ARTEMIS-4385 Expand StatQueue to visualize --clustered
2023-08-11 19:12:44 -04:00
Clebert Suconic bce775c98e ARTEMIS-4382 Long Time to process export / import 2023-08-01 13:08:03 -04:00
Clebert Suconic 39b6edd6df ARTEMIS-4372 small tweaks on Artemis CLI 2023-08-01 13:08:03 -04:00
Clebert Suconic 05f8e5d68f ARTEMIS-4372 small fixes on CLI 2023-07-31 22:31:30 -04:00
Clebert Suconic 2656643267 ARTEMIS-4375 Block console if starting server from shell 2023-07-31 11:27:25 -04:00
Clebert Suconic 93ee61e35c ARTEMIS-4372 Implement Pico-cli and script auto-complete
ARTEMIS-4375 Implement artemis shell using JLine3 integrated with auto-completion from picocli

This commit involves two JIRAs. One is adding PicoCLI and the next is Using JLine3 and implement a shell.
I have tried to keep these commits separate but these changes became interdependent hence the two JIRAs are squashed in this commit.
2023-07-31 10:40:27 -04:00
Justin Bertram 7048d9d4a5 [maven-release-plugin] prepare for next development iteration 2023-07-20 14:39:21 -05:00
Justin Bertram f05b63b8a1 [maven-release-plugin] prepare release 2.30.0 2023-07-20 14:36:44 -05:00
Clebert Suconic 6b61e9eaaf NO-JIRA Moving CLI Management to use ManagementHelper 2023-07-20 15:01:58 -04:00
Clebert Suconic 9ffe062c41 NO-JIRA Moving SimpleManagement to test-support 2023-07-20 13:33:55 -04:00
Clebert Suconic 677d71b8e7 ARTEMIS-4366 Missing Mirrored ACKs with MULTICAST and subscriptions 2023-07-17 20:19:06 -04:00
Justin Bertram cce565e78f ARTEMIS-4353 clean up Maven dependencies
This commit contains the following changes:
 - eliminate used, undeclared dependencies
 - eliminate unused, declared dependencies
 - fix scope for test dependencies
 - eliminate org.hamcrest completely as its use involved deprecated code
   as well as dependencies from multiple versions
2023-07-14 14:03:41 +01:00
Clebert Suconic 36a20dbf76 ARTEMIS-4348 Parse connectors on broker.xml for default URI 2023-07-07 17:32:17 -04:00
Gary Tully 1ef88b3105 ARTEMIS-4351 suppress verbose info logging from console authenticator filter 2023-07-07 13:13:48 +01:00
Justin Bertram 4b91d1d57e ARTEMIS-4318 migrate to Airline 2
The "Airline" library we're currently using is deprecated according the
GitHub project - https://github.com/airlift/airline. It recommends using
either Airline 2 or Picocli. The former offers the simplest migration
path as it's almost completely compatible with the current code. This
commit implements that migration.
2023-07-06 09:36:09 -04:00
Robbie Gemmell cb9e1fedc8 ARTEMIS-4345: update to Error Prone 2.20.0 and fix up new errors 2023-07-05 09:40:24 +01:00
Justin Bertram b316272e14 ARTEMIS-4311 fix typo 2023-06-20 17:50:19 +01:00
Clebert Suconic ae554b43db [maven-release-plugin] prepare for next development iteration 2023-06-14 18:20:58 -04:00
Clebert Suconic 2be5c54cd0 [maven-release-plugin] prepare release 2.29.0 2023-06-14 18:20:45 -04:00
five-iron 600799de30 ARTEMIS-4303 Fix windows service
When installing artemis on windows as a service, if your chosen
installation path contained a space, then an extra escape
character (%) was being inserted in the generated
artemis-service.xml, causing the service to fail to start.
This fix changes the value of ARTEMIS_INSTANCE_ETC_URI in that file
from "artemis.instance.etc.uri.windows" to "artemis.instance.etc.uri"
to get rid of that unnecessary escape character.
2023-06-13 08:24:39 -07:00
Gary Tully 587ffb223c ARTEMIS-3042 simple properties based, extensible broker image 2023-05-24 15:22:01 +01:00
Clebert Suconic e719622de5 ARTEMIS-4285 Limit number of redelivery records 2023-05-19 13:59:28 -07:00
Justin Bertram 5320bd03b3 ARTEMIS-4273 mask command not using codec props 2023-05-11 06:36:12 -07:00
Justin Bertram 6254c140e3 ARTEMIS-4212 handful of updates
- fix syntax used for 'addresses' CLI option
 - update release notes
 - enforce new semantics on parsing & add test
2023-05-04 12:25:15 -07:00
Clebert Suconic f733cac08f ARTEMIS-4254 Improving Transaction test with replication to use 3 nodes 2023-05-03 13:51:56 -07:00
Domenico Francesco Bruscino cc9db6b2f7 ARTEMIS-4244 Set web config using system properties 2023-04-26 17:07:32 -05:00
Domenico Francesco Bruscino 4e77a34c29 ARTEMIS-4243 Fix export of bindings without routing types 2023-04-20 10:01:36 +02:00
Clebert Suconic d23ced586d ARTEMIS-4236 Reorganize broker.xml around paging properties
This is how I see these properties.
I am trying to make this easier to understand.

Co-authored-by: Robbie Gemmell <robbie@apache.org>
2023-04-06 17:48:40 -07:00
Justin Bertram 8ba9727b78 ARTEMIS-4210 refactor connection audit logging
This commit fixes the following things:

 - Moves connection audit logging to the resource audit logger instead
   of using a dedicated logger as that would adversely impact upgrading
   users, and arguably didn't make sense in the first place.
 - Mitigates an potential NPE w.r.t. connection ID.
 - Updates the "dummy" management connection to return a valid
   connection ID.
2023-03-30 14:37:17 -07:00
Justin Bertram d2e5ddfe86 ARTEMIS-4210 audit connection creation & destruction 2023-03-28 16:21:04 -05:00
Justin Bertram 97c78525da ARTEMIS-4181 make try-with-resources style consistent 2023-03-03 08:40:51 -06:00
Justin Bertram 50e90cad5d ARTEMIS-4151 tighten default MBean access
This is a preventative measure to limit what users can do with any MBean
other than those in the hawtio or org.apache.activemq.artemis domains.
2023-03-02 19:17:14 -06:00
David Lanouette 7e1f6c1abe ARTEMIS-4160 Handle hostnames with double dashes
Previously, the code added a comment with the host name in it.
Sometimes hostnames don't follow the xml standards for comments.
Specifically, having a double dash ("--") in the host name would cause
an error when jolokia tried to load the config file - because it was
invalid xml.

The simple solution was to not put the host name into the comment.

A unit test has been included to ensure the same thing doesn't happen in the
future.

Signed-off-by: David Lanouette <David.Lanouette@RedHat.com>
2023-02-22 06:01:45 +01:00
Justin Bertram cfb585eaf6 ARTEMIS-4150 disable Log4j2 MBean by default 2023-02-06 13:20:49 -06:00
Clebert Suconic 2378d187af [maven-release-plugin] prepare for next development iteration 2023-01-31 07:22:48 -05:00
Clebert Suconic 893e1e7916 [maven-release-plugin] prepare release 2.28.0 2023-01-31 07:22:47 -05:00
Robbie Gemmell 9ff5c0f426 ARTEMIS-4134: list the version in initial boostrap log message, make it available earlier and more obviously/reliably than later message after startup 2023-01-17 16:37:34 +00:00
Domenico Francesco Bruscino 2e98c51d63 ARTEMIS-4123 Enable Strict-Transport-Security header 2023-01-07 22:54:51 -06:00
Justin Bertram 30f6d80696 ARTEMIS-4100 improve consistency & wording for CLI 2022-12-16 15:06:28 -05:00
Clebert Suconic af9bd7b84a ARTEMIS-4065 Optimize page counters to not use the journal as often
- From now on we will save snapshots of page-counters on the journal (basically for compatibility with previous verions).
  And we will recount the records on startup.

- While the rebuild is being done the value from the previous snapshot is still available with current updates.
2022-12-15 10:30:18 -05:00
Gary Tully bfb33c7a26 ARTEMIS-4042 - remove use of codec system property from scripts as env var can now be read directly 2022-12-08 15:04:26 +00:00
Robbie Gemmell f790911c44 ARTEMIS-4110: insert standard ASF licence header comment in various cases, such as to replace a javadoc header 2022-12-07 10:21:25 +00:00
Robbie Gemmell 481d07f27e ARTEMIS-4092: resolve issues with upgrade backups, tweaks for clarity and consistency, additional output detail
Adds test verifications that expected files are backed up and match pre-upgrade reference files.

This closes #4291
2022-11-23 16:05:37 +00:00
Domenico Francesco Bruscino 3a13a7850c ARTEMIS-4077 Add an option to disable XML external entity processing 2022-11-15 10:06:03 -06:00
Justin Bertram dce4ba3c1a [maven-release-plugin] prepare for next development iteration 2022-11-08 13:17:38 -06:00
Justin Bertram 1fd6cb6239 [maven-release-plugin] prepare release 2.27.0 2022-11-08 12:46:20 -06:00
Clebert Suconic 03dec4e2d0 ARTEMIS-4081 Comparing upgrades against fresh instances and some adjustments 2022-11-08 11:29:53 -05:00
Robbie Gemmell 304033673c ARTEMIS-4081: some small cleanups and fixups 2022-11-07 15:41:44 +00:00
Clebert Suconic 9c88fb4f88 ARTEMIS-4081 Upgrade command
This command will help updating the instance from a previous home
2022-11-04 00:13:39 -04:00
Clebert Suconic db1338af52 ARTEMIS-4020 Fixing Management DTO Parsing with custom ETC
This is fixing an issue introduced by the logging changes where a custome ETC would not work correctly.
2022-11-02 15:05:58 -04:00
Justin Bertram 38fc74749b
ARTEMIS-4079 quick semantic fix 2022-11-01 10:24:40 -05:00
Justin Bertram d7e02ca9fb ARTEMIS-4079 CLI retry doesn't work sometimes
CLI commands which only use a JMS connection (e.g. producer and
consumer) will retry successfully when omitting or specifying the
incorrect user and/or password. However, commands which use the core API
directly will not.
2022-11-01 10:09:59 -04:00
Gary Tully 45ffea9ef8 ARTEMIS-4002 - support JAVA_ARGS_APPEND env var to easily modify the jdk comand line, JDK_JAVA_OPTIONS is prepend only 2022-10-28 13:59:42 +01:00
Justin Bertram 9138cc86ca ARTEMIS-4049 user add fails w/space in broker path
This problem was originally discovered on Windows, but the problem
occurs on *nix as well.
2022-10-19 10:09:33 +01:00
Domenico Francesco Bruscino 8583288603 ARTEMIS-4057 Fix backup last OOME heap dump on Windows 2022-10-18 08:49:31 +02:00
Timothy Bish b900a1e4bd ARTEMIS-4020 Standardize the naming of Logger types for consistency
Attempt to standardize all Logger declaration to a singular variable name
which makes the code more consistent and make finding usages of loggers in
the code a bit easier.
2022-10-13 12:40:45 -04:00
Robbie Gemmell 7b3c185bba ARTEMIS-4020: restore some gates I had stashed changes to undo removals for 2022-10-10 09:55:03 +01:00
Timothy Bish 617269319a ARTEMIS-4020: Remove string appends and various isXEnabled logger checks (add some where useful)
Logger statements should use formatting syntax and let the normal framework checks take care of
checking if a logger is enabled instead of string concats and isXEnabled logger checks except
in cases there is known expense to the specifc logging message/arg preparation or passing.

Changes from myself and Robbie Gemmell.

Co-authored-by: Robbie Gemmell <robbie@apache.org>
2022-10-07 15:40:53 -04:00
Clebert Suconic 12cc70c5bf ARTEMIS-4020 Using a little trick to create the Loggers
Trick provided by Tim Bish
2022-09-29 17:46:51 -04:00
Robbie Gemmell 9873fccf74 ARTEMIS-4020: switch to using SLF4J API for logging, use Log4J 2 as impl for broker distribution and tests
PR includes work from myself and Clebert Suconic, squashed from the new-logging branch.
2022-09-28 14:01:54 -04:00
Clebert Suconic 5d8e7fe829 [maven-release-plugin] prepare for next development iteration 2022-09-21 13:00:47 -04:00
Clebert Suconic 2d7b1a3ef7 [maven-release-plugin] prepare release 2.26.0 2022-09-21 13:00:46 -04:00
Justin Bertram 92964e4f00 ARTEMIS-3934 restore settings equivalent to -XX:+AggressiveOpts
Before we moved to Java 11 we recommended using the -XX:+AggressiveOpts
JVM tuning option. In Java 8 this was essentially equivalent to setting
these two main parameters:

 - -XX:BiasedLockingStartupDelay=500 (4000 by default)
 - -XX:AutoBoxCacheMax=20000 (128 by default)

BiasedLockingStartupDelay defaults to 0 in Java 11, but AutoBoxCacheMax
still defaults to 128. Therefore, we should add
-XX:AutoBoxCacheMax=20000 to restore this optimization that's been lost
since removing -XX:+AggressiveOpts.
2022-09-20 20:45:36 -04:00
Domenico Francesco Bruscino e7ff8fd427 ARTEMIS-3980 Remove web content from distribution 2022-09-16 11:02:25 -04:00
Clebert Suconic 8d1865fdcb ARTEMIS-3995 Mute Artemis Maven Plugin
The ActiveMQ Artemis Maven plugin will throw system.out and log.info for a lot of stuff,
This should mute some of that output.
2022-09-16 11:02:05 -04:00
Clebert Suconic 4ad830fb95 Bumping artemis as 3.0
After removing ActiveMQ Artemis rest (per ARTEMIS-3987), we should start promoting Artemis as 3.0
2022-09-12 15:09:31 -04:00
Clebert Suconic 11eab60584 [maven-release-plugin] prepare for next development iteration 2022-08-30 18:04:06 -04:00
Clebert Suconic fb1b362b47 [maven-release-plugin] prepare release 2.25.0 2022-08-30 18:04:05 -04:00
Clebert Suconic d4cbbfde1e ARTEMIS-3943 Changing default broker.xml and xsd with max-page-read comments and defaults 2022-08-30 13:45:17 -04:00
Rico Neubauer 6482805f7d
ARTEMIS-3922 Reducing contention on Throwable#getOurStackTrace
By allowing to pass caller's classname directly to org.apache.activemq.artemis.utils.ActiveMQThreadFactory#defaultThreadFactory instead of calculating it from stack.
2022-08-30 11:08:31 -05:00
Clebert Suconic d06459df57 ARTEMIS-3943 Adjusting defalut address settings to avoid OME from paging and flow control 2022-08-30 09:26:35 -04:00
Robbie Gemmell 734e7f4ae5 ARTEMIS-3950: dont prepare unused debug detail during xml data import processing 2022-08-22 16:10:28 +01:00
Clebert Suconic 252e5b0b14 ARTEMIS-3928 Limiting parallel IO in paging which would allow multiple destinations running all at once
Running HorizontalPagingTest with these variables would make the test to fail unless these changes are applied.

export TEST_HORIZONTAL_SERVER_START_TIMEOUT=300000
export TEST_HORIZONTAL_TIMEOUT_MINUTES=120
export TEST_HORIZONTAL_PROTOCOL_LIST=OPENWIRE

export TEST_HORIZONTAL_OPENWIRE_DESTINATIONS=200
export TEST_HORIZONTAL_OPENWIRE_MESSAGES=1000
export TEST_HORIZONTAL_OPENWIRE_COMMIT_INTERVAL=100
export TEST_HORIZONTAL_OPENWIRE_RECEIVE_COMMIT_INTERVAL=0
export TEST_HORIZONTAL_OPENWIRE_MESSAGE_SIZE=20000
export TEST_HORIZONTAL_OPENWIRE_PARALLEL_SENDS=10
2022-08-10 19:29:29 -04:00
Clebert Suconic 12b81e7a25 ARTEMIS-3928 Adding SoakTest for Paging with in many destinations
Also some organization on soak test to allow this test
adding CLI operation to configure memory size of the broker
2022-08-10 16:38:58 -04:00
Clebert Suconic fa002728f2 [maven-release-plugin] prepare for next development iteration 2022-07-26 11:59:21 -04:00
Clebert Suconic 897d9beaef [maven-release-plugin] prepare release 2.24.0 2022-07-26 11:59:19 -04:00