Commit Graph

881 Commits

Author SHA1 Message Date
Clebert Suconic 78a3e66f3d ARTEMIS-4372 Renaming --staticCluster as --static-cluster 2023-09-01 11:53:58 -04:00
Justin Bertram 444d5da72b
NO-JIRA add another curl management example 2023-08-04 12:09:49 -05:00
Mike Artz c5f0e3400c ARTEMIS-4159 Support duplicate cache size configuration per address
This commit introduces support for configuring a specific Duplicate ID cache size per address in the Artemis server. Previously, there was only a global setting for the ID cache size, but now each address can have its own cache size.

The changes include the addition of a new configuration property id-cache-size in the Artemis server configuration file. This property can now be specified under each address setting in the configuration file, and its value will determine the Duplicate ID cache size for that particular address. If the id-cache-size property is not specified for an address, it will use the global setting.

The test cases have been updated to cover this new functionality, and integration test have been added to verify that address-specific cache sizes work as expected.

Documentation has been added to address-settings.adoc, configuration-index.adoc and duplicate-detection.adoc
2023-08-04 10:25:08 -05:00
Robbie Gemmell 39a13aa07c ARTEMIS-4383: fix a couple of headings butchered in the migration 2023-08-03 16:27:59 +01:00
Robbie Gemmell f6e647f939 ARTEMIS-4383: add RAT config to fix the build, and LICENSE updates to reflect the new files 2023-08-03 13:04:47 +01:00
Justin Bertram 3a4b421d2e ARTEMIS-4383 migrate user docs to AsciiDoc
Markdown, which is currently used for user-facing documentation, is good
for a lot of things. However, it's not great for the kind of complex
documentation we have and our need to produce both multi-page HTML and
single-page PDF output via Maven.

Markdown lacks features which would make the documentation easier to
read, easier to navigate, and just look better overall.

The current tool-chain uses honkit and a tool called Calibre. Honkit is
written in TypeScript and is installed via NPM. Calibre is a native tool
so it must be installed via an OS-specific package manager. All this
complexity makes building, releasing, uploading, etc. a pain.

AsciiDoc is relatively simple like Markdown, but it has more features
for presentation and navigation not to mention Java-based Maven tooling
to generate both HTML and PDF. Migrating will improve both the
appearance of the documentation as well as the processes to generate and
upload it.

This commit contains the following changes:
 - Convert all the Markdown for the User Manual, Migration Guide, and
   Hacking guide to AsciiDoc via kramdown [1].
 - Update the `artemis-website` build to use AsciiDoctor Maven tooling.
 - Update `RELEASING.md` with simplified instructions.
 - Update Hacking Guide with simplified instructions.
 - Use AsciiDoc link syntax in Artemis Maven doc plugin.
 - Drop EPUB & MOBI docs for User Manual as well as PDF for the Hacking
   Guide. All docs will be HTML only except for the User Manual which
   will have PDF.
 - Move all docs up out of their respective "en" directory. This was a
   hold-over from when we had docs in different languages.
 - Migration & Hacking Guides are now single-page HTML since they are
   relatively short.
 - Refactor README.md to simplify and remove redundant content.

Benefits of the change:
 - Much simplified tooling. No more NPM packages or native tools.
 - Auto-generated table of contents for every chapter.
 - Auto-generated anchor links for every sub-section.
 - Overall more appealing presentation.
 - All docs will use the ActiveMQ favicon.
 - No more manual line-wrapping! AsciiDoc recommends one sentence per
   line and paragraphs are separated by a blank line.
 - AsciiDoctor plugins for IDEA are quite good.
 - Resulting HTML is less than *half* of the previous size.

All previous links/bookmarks should continue to work.

[1] https://github.com/asciidoctor/kramdown-asciidoc
2023-08-02 16:21:06 -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
Robbie Gemmell 6442270e2d ARTEMIS-4369: add clarifying note to docs around transport options for broker-connections 2023-07-21 10:44:14 +01:00
Justin Bertram f1ebdf1925
NO-JIRA 2.30.0 release notes 2023-07-20 14:10:21 -05: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
iamgd67 e15bc1b35f NO-JIRA: fix typos/wording in key-differences.md and authentication.md
This closes #4525
2023-06-26 09:56:23 +01:00
Domenico Francesco Bruscino 137e1ed52d ARTEMIS-4333 Document web SNI settings 2023-06-26 09:48:02 +01:00
Justin Bertram b316272e14 ARTEMIS-4311 fix typo 2023-06-20 17:50:19 +01:00
Gary Tully 9b5dbf4265 ARTEMIS-4314 - fix typo in doc 2023-06-16 15:55:38 +01:00
Gary Tully a8b4ee1992 ARTEMIS-4314 support queue federation batchOnCapacity via consumerWindowSize=0 2023-06-16 15:44:51 +01:00
Clebert Suconic 1fe3a9fb6e 2.29.0 release notes update 2023-06-14 18:12:06 -04:00
a181321 582a689cdb ARTEMIS-4186 Ability to set compressionLevel for compressLargeMessages 2023-06-14 04:42:38 -07:00
Domenico Francesco Bruscino bd3c057559 ARTEMIS-4251 Support CORE client failover to other live servers
Improve the CORE client failover connecting to other live servers when all
reconnect attempts fails, i.e. in a cluster composed of 2 live servers,
when the server to which the CORE client is connected goes down the CORE
client should reconnect its sessions to the other liver broker.
2023-06-13 08:24:02 -07:00
Justin Bertram c96a074b53 ARTEMIS-4292 support more Micrometer system metrics
This commit exposes Micrometer's system metrics for:
 - file descriptors
 - processor
 - uptime
2023-06-13 04:58:59 -07:00
Justin Bertram c4501f6793 ARTEMIS-4294 support text-encoded WebSocket frames 2023-05-31 16:34:02 -05:00
Justin Bertram 903e5888af ARTEMIS-4238 deprecate transactionTimeout activation config prop 2023-05-31 15:16:34 -05:00
Justin Bertram e7de2c7001 ARTEMIS-4297 allow regex in no-cache exception config 2023-05-31 11:37:28 -07:00
Clebert Suconic e719622de5 ARTEMIS-4285 Limit number of redelivery records 2023-05-19 13:59:28 -07:00
Gary Tully d2abc56f56 ARTEMIS-4280 - map roles from review group info, optional roles properties file 2023-05-17 15:16:37 +01:00
Robbie Gemmell 7f4cd2ac56 NO-JIRA: add note that the -all clients cant be embedded with the broker, which uses the regular clients 2023-05-15 17:12:14 +01:00
Justin Bertram c2bada6a77 ARTEMIS-4267 original exception lost for NoCacheLoginException
When skipping the authentication cache details for the original
exception are not logged.

This commit ensures these details are logged and adopts the
ExceptionUtils class from Apache Commons Lang in lieu of the previous
custom implementation.
2023-05-08 17:01:35 +02:00
Gary Tully c5d872575e ARTEMIS-4256 - support removal of configuration via properties 2023-05-05 11:58:15 +01: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
Justin Bertram aad3d0b90d ARTEMIS-4262 clarify wildcard syntax documentation 2023-04-27 19:26:03 +02:00
Domenico Francesco Bruscino cc9db6b2f7 ARTEMIS-4244 Set web config using system properties 2023-04-26 17:07:32 -05:00
Robbie Gemmell 5035bd2c61 ARTEMIS-4210: undo earlier doc change missed by 8ba9727b78 2023-03-31 12:10:03 +01: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 fc8d884118
NO-JIRA add a few missing identifiers to the filter docs 2023-03-16 13:37:09 -05:00
Justin Bertram 68c5bed159 ARTEMIS-4200 configurable link-stealing for MQTT 2023-03-10 17:51:24 -06:00
Domenico Francesco Bruscino bb08a573eb ARTEMIS-3640 Use client connectors for HA 2023-03-09 11:20:51 +00:00
Justin Bertram c2a9ec73a3
NO-JIRA clarify MQTT sub queue clean-up doc 2023-03-03 14:26:22 -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
Justin Bertram b76c672305 ARTEMIS-4162 support deleting addresses & queues w/o usage check
There are certain use-cases where addresses will be auto-created and
never have a direct binding created on them. Because of this they will
never be auto-deleted. If a large number of these addresses build up
they will consume a problematic amount of heap space.

One specific example of this use-case is an MQTT subscriber with a
wild-card subscription and a large number of MQTT producers sending one
or two messages a large number of different MQTT topics covered by the
wild-card. Since no bindings are ever created on any of these individual
addresses (e.g. from a subscription queue) they will never be
auto-deleted, but they will eventually consume a large amount of heap.
The only way to deal with these addresses is to manually delete them.

There are also situations  where queues may be created and never have
any messages sent to them or never have a consumer connect. These
queues will never be auto-deleted so they must be deleted manually.

This commit adds the ability to configure the broker to skip the usage
check so that these kinds of addresses and queues can be deleted
automatically.
2023-03-02 19:17:03 -06:00
Justin Bertram 438dd47a78
ARTEMIS-4177 remove defunct logging doc 2023-02-24 12:15:11 -06:00
Timothy Bish a7973c1dc3 ARTEMIS-4178 Fix some minor typos in broker connections docs
Fix a few small typos in the broker connections docs
2023-02-23 12:57:46 +00:00
Paul Wright d06d996950 NO-JIRA Add link to download page 2023-02-14 08:47:12 +01:00
Justin Bertram 9f04fea592
NO-JIRA add performance info to cluster doc 2023-02-13 14:07:51 -06:00
ALX 3db843a760 NO-JIRA Minor corrections to the HA documentation page 2023-02-13 11:53:58 +01:00
Justin Bertram d531a9378d
NO-JIRA update hacking guide 2023-02-10 12:24:20 -06:00
Justin Bertram 733cb4c11f
NO-JIRA clarify unit testing doc 2023-02-10 12:06:06 -06:00
Gary Tully 446df6d825 NO-JIRA - add in default to doc for connectionsAllowed 2023-02-09 10:54:26 +00:00
Justin Bertram f154c0b7dd ARTEMIS-4153 Support 'offline' Maven 2023-02-06 13:20:34 -06:00
Ryan Highley 6e4af114f1 NO-JIRA - Hacking Guide Branch Name Updates
Updates the hacking guide docs to correct the branch names as "main"
2023-02-03 10:40:48 -05:00
Justin Bertram 5acf269109
NO-JIRA improve formatting for remote JMX doc 2023-01-31 12:03:37 -06:00
Clebert Suconic 4b55da3eb0 Updating release docs 2023-01-31 07:10:48 -05:00
Clebert Suconic 764db34e9b ARTEMIS-3178 Page Limitting (max messages and max bytes)
I am adding three attributes to Address-settings:

* page-limit-bytes: Number of bytes. We will convert this metric into max number of pages internally by dividing max-bytes / page-size. It will allow a max based on an estimate.
* page-limit-messages: Number of messages
* page-full-message-policy: fail or drop

We will now allow paging, until these max values and then fail or drop messages.

Once these values are retracted, the address will remain full until a period where cleanup is kicked in by paging. So these values may have a certain delay on being applied, but they should always be cleared once cleanup happened.
2023-01-30 18:19:45 -05:00
Justin Bertram 009f539406
NO-JIRA update MQTT docs for WSS 2023-01-27 11:10:16 -06:00
Clebert Suconic 0d3cd8d880 ARTEMIS-4136 Mirrored sync replica
I am adding an option sync=true or false on mirror. if sync, any client blocking operation will wait a roundtrip to the mirror
acting like a sync replica.
2023-01-23 12:38:11 -05:00
iliya e68034518d ARTEMIS-4129 Add max-saved-replicated-journals-size parameter to primary and replicated policy configuration
Allow override default max-saved-replicated-journals-size value when the server is configured as primary or replicated.
2023-01-17 12:07:10 -06:00
Vilius Šumskas 9dc3e5c3e8 NO-JIRA Add forgotten upgrade documentation about console redirect 2023-01-12 16:20:29 -05:00
Justin Bertram 56167b5e13 ARTEMIS-4122 support timed refresh for LegacyLDAPSecuritySettingPlugin
Some LDAP servers (e.g. OpenLDAP) do not support the "persistent search"
feature and therefore the existing "listener" feature does not actually
fetch updates. This commit implements a "pull" feature controlled by a
configurable interval equivalent to what is implemented in the cached
LDAP authorization module from ActiveMQ "Classic."
2023-01-07 22:54:35 -06:00
waldi5001 0a80958c54
ARTEMIS-3707 ResourceAdapter Documentation 2022-12-18 01:16:58 -06:00
eidottermihi 76b8acc1dc
ARTEMIS-2876 Add JUnit5 Extensions for testing
Adds a new module 'artemis-junit-5' which adds JUnit 5 Extensions for
unit testing. For backwards compability, 'artemis-junit' still uses
JUnit 4. Common stuff has been moved to 'artemis-junit-commons'. Work is
based on the initial PR
https://github.com/apache/activemq-artemis/pull/3436 by @luisalves00
2022-12-17 01:44:57 -06:00
Justin Bertram 038e95adb9 ARTEMIS-4109 unable to auto-delete q for MQTT retained msg 2022-12-15 13:44:55 -06:00
Justin Bertram df81bfa567 ARTEMIS-4103 support journal-lock-acquisition-timeout in broker.xml 2022-12-15 13:44:40 -06:00
Justin Bertram ba2cbddd6b
ARTEMIS-3871 fix MQTT shared sub q naming semantics 2022-12-13 14:45:13 -06:00
Justin Bertram b5e25eb4fe ARTEMIS-3871 uniquely name MQTT share sub queues 2022-12-13 11:59:08 -05:00
Justin Bertram 499e3c119f ARTEMIS-4101 caching failed authn result on LDAP cxn failures 2022-12-13 09:07:28 -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
Justin Bertram ae89c6c974
NO-JIRA add supporting link for commit msg 2022-12-06 16:10:29 -06:00
Clebert Suconic 2374bbcf2a NO-JIRA Updating Release on docs 2022-11-28 15:58:35 -05:00
Justin Bertram bbd5043f4f
NO-JIRA improve reconnect doc 2022-11-23 19:33:04 -06:00
ruromero 3e50014e0d [ARTEMIS-3168] Implement Kubernetes JaaS LoginModule
Signed-off-by: ruromero <rromerom@redhat.com>
2022-11-22 11:44:00 +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
Robbie Gemmell 97e0a3d7f2 ARTEMIS-4081, ARTEMIS-4020: update versions/update docs around new upgrade helper tool, and refresh existing manual update step diffs for subsequent change 2022-11-04 18:13:06 +00:00
Jan Šmucr 60c544272c Fix and rewrite the config-delete-* docs
* Fixed the `config-delete-divert` entry
* Added some formatting
* Reworded the description
2022-11-04 09:26:21 -05: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
Gerd Klingler d3a3009230 NO-JIRA: Fixing typo in address-model.md
Name for address should be address.foo as used in the related image
2022-10-31 15:45:06 -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 f0ecf6bc89
NO-JIRA fix AMQP acceptor property typo 2022-10-13 11:23:51 -05:00
Gary Tully 8a6e29ccde
ARTEMIS-4042 - read sensitive string codec env var if system property is not set 2022-10-13 11:20:01 -05:00
Robbie Gemmell b604545a3c ARTEMIS-4043: remove other doc snippets linking to previously-removed rest.md file, also update URL to point to referenced version 2022-10-12 15:15:29 +01:00
Justin Bertram c3b304779e
NO-JIRA update missed docs for JGroups upgrade 2022-10-07 11:20:39 -05: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
Domenico Francesco Bruscino 0113e38695 NO-JIRA Adding Release notes about removing web content 2022-09-23 17:11:27 +02:00
Robbie Gemmell b8771e1181 NO-JIRA: tweak/clarify previous change to versions.md 2022-09-23 14:54:12 +01:00
Clebert Suconic c96d89a7dc NO-JIRA Adding Release notes about removing rest 2022-09-22 15:56:30 -04:00
Marlon Müller 9fa36e7c53 ARTEMIS-3763 Use margin when checking time difference between broker and database
* Add configurable time margin for checking offset between database server and broker when updating lease lock
2022-09-22 14:34:33 -04:00
Clebert Suconic 5811f4fcc1 Version.md update before the release 2022-09-21 12:28:05 -04:00
Robbie Gemmell dfa797f906 ARTEMIS-4006: remove repackaged/partial-shaded -all uber client artifacts from the assembly 2022-09-20 17:54:33 +01:00
Justin Bertram 9d20d7b87f
NO-JIRA remove out-dated GC recommendation
G1 is the recommended (and default) GC algorithm.
2022-09-19 14:43:56 -05:00
Domenico Francesco Bruscino e7ff8fd427 ARTEMIS-3980 Remove web content from distribution 2022-09-16 11:02:25 -04:00
Gary Tully 871d63aaad ARTEMIS-3978 - add some more documentation around broker properties 2022-09-15 13:27:41 +01:00
Justin Bertram 6b5a73db8a
ARTEMIS-3913 custom MQTT client ID rejection
Sometimes users want to perform custom client ID validation, and in the
case of an invalid client ID the proper reason code should be returned
in the CONNACK packet.
2022-09-14 11:50:36 -05:00
Justin Bertram a254e50aae
NO-JIRA update Jolokia doc with example curl command 2022-09-13 11:30:32 -05:00
Clebert Suconic e654eba0de ARTEMIS-3987 Removing ActiveMQ Artemis Rest from the codebase.
As we discussed on the dev list, this module hasn't been used for a while, and we have been asking users to use stomp and stomp-WS instead.
2022-09-12 15:09:31 -04:00
Clebert Suconic f953408185 ARTEMIS-3969 Removing Extra tests from the codebase 2022-09-02 13:04:53 -04:00
Clebert Suconic 36b7e154ee Release notes 2.25.0 2022-08-30 17:21:26 -04: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
Justin Bertram 87e9b361bb
ARTEMIS-3785 support specifying alias for SSL keystore 2022-08-24 17:22:01 -05:00
Robbie Gemmell 174270fbc2 ARTEMIS-3914: reorder and clarify some bits, use version placeholder to give specific version in example dependency declaration 2022-08-08 12:10:00 -04:00
Stephen E. Baker dc2b67331d
NO-JIRA update address-settings.md
Add a note about match specificity
2022-08-03 10:17:24 -05:00
Justin Bertram 1662bc740e
NO-JIRA small update for security manager 2022-08-02 08:59:26 -05:00
Clebert Suconic 0cd203c32d ARTEMIS-3914 Document client classpath automated 2022-08-01 15:13:02 -04:00
Justin Bertram b93613142f
NO-JIRA core bridge doc clarification 2022-07-29 10:04:18 -05:00
Justin Bertram 53cb526d82
NO-JIRA core bridge doc fix 2022-07-29 10:03:04 -05:00
Justin Bertram 1e56f823a5
NO-JIRA fix stale project info 2022-07-26 17:22:24 -05:00
Clebert Suconic 3b24211ba9 NO-JIRA update versions.md for next release 2022-07-26 11:24:26 -04:00
Justin Bertram 631568f020
ARTEMIS-3905 update docs for disabled proxy 2022-07-25 12:41:27 -05:00
Justin Bertram a2262612ca
ARTEMIS-3892 fix tests, add docs 2022-07-20 11:36:12 -05:00
Justin Bertram 695bc5a648 ARTEMIS-3888 make web console detection more robust
Currently the broker detects the presence of the web console by looking
for the name of a file (i.e. console.war). This is fragile because if
the file is renamed for any reason then the broker won't print the
status of the web console when it starts.

This commit improves web console detection by inspecting the
<display-name> tag in the war file's WEB-INF/web.xml. By default it
looks for "hawtio", but this can be customized using the system property
"org.apache.activemq.artemis.webConsoleDisplayName".
2022-07-19 13:42:56 -04:00
Justin Bertram a0fb174c8f
NO-JIRA clarify JmsTemplate warning 2022-07-16 14:52:53 -05:00
Ryan Highley 57f48ee146
ARTEMIS-3558 Add broker-connections to config idx
Adds links to existing amqp-broker-connections.md doc to
configuration-index.md covering broker.xml elements.
2022-07-11 14:50:11 -05:00
Clebert Suconic d0d2a9a16b 2.23.1 release notes on doc 2022-06-14 15:03:49 -04:00
Clebert Suconic 342565d4c1 ARTEMIS-3850 Eliminate Page Soft Cache. Add Option to read messages based on sizing. 2022-06-14 14:53:14 -04:00
Justin Bertram c9208aafda ARTEMIS-3851 MQTT sub q exists after restart despite CleanSession=1
MQTT 3.1 and 3.1.1 clients using a clean session should have a
*non-durable* subscription queue. If the broker restarts the queue
should be removed. This is due to [MQTT-3.1.2-6] which states that the
session (and any state) must last only as long as the network
connection.
2022-06-14 14:48:45 -04:00
Clebert Suconic 1223f4fb03 NO-JIRA Updating Release notes on Docs, pre release 2022-06-07 11:35:20 -04:00
Justin Bertram 73758c91f4
NO-JIRA add DB upgrade instructions for 2.21.0 2022-05-31 23:11:11 -05:00
Justin Bertram 2e1bf7fbf7
NO-JIRA update release docs for 2.22.0 2022-05-31 11:47:37 -05:00
Vilius Šumskas d8af49d64c
NO-JIRA Improve ActiveMQBasicSecurityManager documentation 2022-05-23 12:26:33 -05:00
Justin Bertram 974bd5f6e1
ARTEMIS-3808 support start/stop embedded web server via mngmnt
It would be useful to be able to cycle the embedded web server if, for
example, one needed to renew the SSL certificates. To support
functionality I made a handful of changes, e.g.:

 - Refactoring WebServerComponent so that all the necessary
   configuration would happen in the start() method.
 - Refactoring WebServerComponentTest to re-use code.
2022-05-23 10:57:49 -05:00
iliya 0b321ab8ff ARTEMIS-3759 Add mirror controller address filter support
Allow replication only certain addresses with mirror controller.
The configuration is similar to cluster address configuration.

Co-authored-by: Robbie Gemmell <robbie@apache.org>
2022-05-04 21:25:58 -04:00
Justin Bertram dbde8c57d8
NO-JIRA clarify default for send-to-dla-on-no-route 2022-05-03 11:17:13 -05:00
Clebert Suconic 5e6f599f80 ARTEMIS-3805 producer-window-size default 2022-04-26 16:14:14 -04:00
Robbie Gemmell 5e54159908 ARTEMIS-3804: make the version number available to reference in the user manual, add it to the intro page
Updates release instructions to note using the filtered scratch area from artemis-website for other builds
2022-04-26 11:22:44 -04:00
Clebert Suconic 49102443f6 Revert "ARTEMIS-3707 ResourceAdapter Documentation"
This reverts commit 6b784daff1.
2022-04-25 15:38:49 -04:00
waldi5001 6b784daff1 ARTEMIS-3707 ResourceAdapter Documentation 2022-04-25 08:24:41 -04:00
AntonRoskvist bb44e37e84
ARTEMIS-3733 - Destination cache size too small for OpenWire clients 2022-03-30 11:15:25 -05:00
Tiago Bueno 84c1feae8c NO-JIRA fix duplicate text in security.md doc
Remove the duplicate text in CertificateLoginModule section of the
the security.md doc
2022-03-30 11:48:30 -04:00
Justin Bertram 7d03f714dd
Fix typo 2022-03-29 15:19:43 -05:00
Justin Bertram 122edfbdb8
NO-JIRA add version/upgrade info for 2.21.0 2022-03-29 15:12:47 -05:00
Domenico Francesco Bruscino 41463c8397 ARTEMIS-3710 Deprecate queues config element 2022-03-22 09:37:31 -04:00
Domenico Francesco Bruscino 603462a1a5 ARTEMIS-3708 Collapse key transformer into policy 2022-03-21 19:34:48 -04:00
Clebert Suconic 5bba1fbc30 ARTEMIS-3720 Documentation about max-messages 2022-03-18 16:27:46 -04:00
Justin Bertram 2b5a25a106 ARTEMIS-3702 auth failures don't adhere to MQTT spec
The commit includes the following changes:
 - Don't drop the connection on subscribe or publish authorization
failures for 3.1 clients.
 - Don't drop the connection on subscribe authorization failures for
3.1.1 clients.
 - Add configuration parameter to control behavior on publish
authorization failures for 3.1.1 clients (either disconnect or not).
2022-03-15 15:33:54 -04:00
franz1981 f8b045bd2d ARTEMIS-3522 Implement performance tool for RUL benchmarks
Co-authored-by: gtully
2022-03-02 13:32:42 +01:00
gtully dcaebfb24e ARTEMIS-3660 - rename broker-balancer to connection-router 2022-03-01 11:15:16 +01:00
Justin Bertram bc65438344
ARTEMIS-3687 bridges with concurrency > 1 can leak 2022-02-26 15:16:04 -06:00
Justin Bertram c51fda09cd
ARTEMIS-3685 support reloading bridges 2022-02-26 15:16:04 -06:00
Justin Bertram 2dc76bd9f4
ARTEMIS-3657 refactor address docs
Mainly refactoring the address docs. This commit has the following
changes:

 - Remove examples for discouraged use-cases (e.g. using anycast and
multicast on the same address).
 - Reword to use configuration terms wherever possible. For example,
instead of saying "point-to-point" (which is not a configuration term)
say "anycast". References to things like "point-to-point" and
"publish-subscribe" are still there since users are familiar with these
terms. They're just used much less often.
 - Remove duplicate explanation of exclusive queues.
 - Remove duplicate explanation of auto-create and auto-delete elements.
 - Re-create graphics and include the master SVGs for potential updates
later.
 - Give non-destructive queues its own chapter.
 - Add details about specifying routing type using a message property.
 - Update the styling on the user manual's cover page to look better.
 - Lots of re-wording for clarity's sake.
 - Re-order sub-sections for clarity's sake.
 - Break up the address model and the settings documentation. The
settings documentation is large and deserves its own chapter. The
original anchor link is still available with a link to the new chapter.

In general the address-specific documentation should be much more clear,
concise, and consistent now.
2022-02-26 15:14:32 -06:00
Domenico Francesco Bruscino b0f131f080 ARTEMIS-3694 Support remote servers for console smoke tests 2022-02-23 20:39:11 +01:00
Justin Bertram 3be4dd6aeb
NO-JIRA clarify LVQ docs on clustering 2022-02-21 14:59:56 -06:00
AntonRoskvist 99b9d87bfd
ARTEMIS-2934 Add option to suppress SESSION notifications 2022-02-17 14:56:16 -06:00
Matteo Baccan 8c3f699d27 Typo error: double semicolon at the end of line 2022-02-17 10:30:33 -05:00
Justin Bertram 7648e8bac3
NO-JIRA fix compressLargeMessage documentation 2022-02-10 09:49:22 -06:00
Domenico Francesco Bruscino bac579ac25
ARTEMIS-3573 Support PropertiesLoginModule custom password codecs 2022-02-07 20:31:30 -06:00
Luis De Bello cf73e895f3
ARTEMIS-3613: Deprecating stompMaxFramePayloadLength in favour of webSocketMaxFramePayloadLength 2022-02-07 19:44:18 -06:00
Domenico Francesco Bruscino 290e5016c8
ARTEMIS-3645 Support broker balancer cache persistence 2022-02-07 19:08:00 -06:00
Justin Bertram d377a5a638 ARTEMIS-3658 remove refs to Jetty's deprecated NCSARequestLog 2022-02-04 13:48:49 -05:00
Justin Bertram 9c459eb313 ARTEMIS-2413 upgrade JGroups
JGroups 3.x hasn't been updated in some time now. The last release was
in April 2020 almost 2 years ago. Lots of protocols have been updated
and added and users are wanting to use them. There is also increasing
concern about using older components triggered mainly by other
recently-discovered high-profile vulnerabilities in the wider Open
Source Java community.

This commit bumps JGroups up to the latest release - 5.2.0.Final.
However, there is a cost associated with upgrading.

The old-style properties configuration is no longer supported. I think
it's unlikely that end-users are leveraging this because it is not
exposed via broker.xml. The JGroups XML configuration has been around
for a long time, is widely adopted, and is still supported. I expect
most (if not all) users are using this. However, a handful of tests
needed to be updated and/or removed to deal with this absence.

Some protocols and/or protocol properties are no longer supported. This
means that users may have to change their JGroups stack configurations
when they upgrade. For example, our own clustered-jgroups example had to
be updated or it wouldn't run properly.
2022-02-04 13:47:11 -05:00
Justin Bertram e184038d05 ARTEMIS-3670 support diverting to multiple addresses 2022-02-04 11:39:16 -05:00
Justin Bertram 8063110644 ARTEMIS-3638 Support MQTT 5
MQTT 5 is an OASIS standard which debuted in March 2019. It boasts
numerous improvments over its predecessor (i.e. MQTT 3.1.1) which will
benefit users. These improvements are summarized in the specification
at:
https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901293

The specification describes all the behavior necessary for a client or
server to conform. The spec is highlighted with special "normative"
conformance statements which distill the descriptions into concise
terms. The specification provides a helpful summary of all these
statements. See:
https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901292

This commit implements all of the mandatory elements from the
specification and provides tests which are identified using the
corresponding normative conformance statement. All normative
conformance statements either have an explicit test or are noted in
comments with an explanation of why an explicit test doesn't exist. See
org.apache.activemq.artemis.tests.integration.mqtt5 for all those
details.

This commit also includes documentation about how to configure
everything related to the new MQTT 5 features.
2022-02-04 09:57:15 -05:00
Gergő Rubint 605079d4ba NO-JIRA: Fix Undelivered Messages typo 2022-02-04 09:28:36 +01:00
Paul Wright ba62bc66a7 NO-JIRA: fix broken links in docs
This closes #3798
2022-02-02 16:21:10 +00:00