Chapter 2. Enhancements
ENTMQBR-428 - Implement SASL external
AMQ Broker can now validate AMQP connections by using the identity of the connection’s SSL certificate rather than using traditional credentials such as a username and password. This benefits deployments where secure access is managed through SSL certificates.
ENTMQBR-831 - Broker should respond to changes in
AMQ Broker now retains the changes that you make to the
logging.propertiesconfiguration file without restarting the broker.
ENTMQBR-893 - Masking of password does not work with
You can now mask passwords in the JAAS configuration file
login.config. Previously, password masking was not supported for
login.config, which meant that the passwords in the file were stored in plain text.
ENTMQBR-908 - Support masked passwords in
You can now mask passwords in the
broker.xmlconfiguration file. Previously, password masking was not supported for
broker.xml, which meant that the passwords in the file were stored in plain text.
ENTMQBR-935 - Should have Ability to split
broker.xmlinto multiple files and import into
AMQ Broker now supports XML inclusions in the
broker.xmlconfiguration file, which enables you to break
broker.xmlinto separate files. For example, if you have multiple brokers that share the same set of addresses and address settings, you can define the addresses in a separate file, and then include that file in each broker’s
ENTMQBR-945 - Non-persistent messages lost in non-failure scenarios when authorization fails, because delivery mode defaults to asynchronous
AMQ Broker now enables you to configure notifications for loss of non-persistent messages by clients. Obvious failure conditions such as broker stoppage or disconnection of a storage provider can cause this type of loss. However, the default delivery mode for non-persistent messages, which is asynchronous, can also cause message loss in situations such as failed authorization or use of a non-configured queue. You can now use the CompletionListener API to configure notifications for such message-loss events.
ENTMQBR-1002 - Enable the pause method for an address
AMQ Broker 7.5 enables you to pause an address, which pauses all of the queues bound to that address. New queues that you add to this address are also paused until you resume the address. To pause or resume an address, use the Core JMS API to implement the
resume()methods on an
AddressControlinterface. For more information, see AddressControl in the Core JMS API documentation.
ENTMQBR-1056 - Add Support for DB2 v11.latest
The 7.2 version of AMQ Broker adds support for the database DB2, version 11.
ENTMQBR-1063 - Improve DB2 compatibility
AMQ Broker now supports IBM DB2 versions 10.5 and 11.1 for message storage. The following enhancements have been made:
AUTO_INCREMENTis now supported on DB2.
- You can now configure the maximum allowed time difference between the system time and DB2 time. This makes high availability more reliable, because the broker will be shut down automatically if the time difference exceeds the configured value.
- Database tables can now be created externally. Concurrent table creation checking has been improved.
ENTMQBR-1271 - Allow custom etc and data directories to be used
AMQ Broker 7.2 provides greater flexibility in storing a broker instance’s configuration files and data. Previously, a broker instance’s configuration files and data could only be stored in the
data/directories within the broker instance’s directory. Now, you can store these files in any custom directory, including locations outside of the broker instance’s directory.
ENTMQBR-1282 - Support for exclusive consumers
AMQ Broker now supports exclusive queues. An exclusive queue routes messages to a single consumer even if multiple consumers are present. In addition, the consumer that receives the messages will receive them with guaranteed message ordering so that they can be consumed in the same order in which they were produced.
ENTMQBR-1308 - Create an
ActiveMQServerPluginfor logging various broker events
Starting in AMQ Broker 7.2, logging has been improved through a new
LoggingActiveMQServerPlugin. By using this plugin, you can configure highly-informative logging about many different types of events that would otherwise only be available through debug logs.
ENTMQBR-1367 - Support SSL Certificate Revocation List
Starting in AMQ Broker 7.2, you can now specify an SSL certificate revocation list on an acceptor’s URL. If you are using SSL for client communication, this means that you can specify a list of certificates that have been revoked by the issuing certificate authority (CA) before their scheduled expiration date and should no longer be trusted.
ENTMQBR-1370 - Add
userattribute to queue in XML/JMX
When a queue is auto-created it is assigned the user name of the connecting client. This user name is now exposed as metadata on the queue and also in JMX and in the AMQ Console. You can also now configure a user on a pre-defined queue by modifying the
broker.xmlfile. This enhancement makes it possible to understand and track with whom and how queues originated.
ENTMQBR-1385 - Add support for virtual topic consumers
AMQ Broker now supports migrating existing OpenWire clients that use virtual topic subscriptions (an ActiveMQ 5.x-only feature) without requiring any changes to the client. This functionality maps the virtual topic concept to an Artemis fully qualified queue name (FQQN). By using a FQQN, you can create and access a standard Artemis topic subscriber queue.
ENTMQBR-1403 - Support referrals in LDAP login module
AMQ Broker now supports LDAP referrals. If you use LDAP referrals in your LDAP infrastructure, you can now configure the broker to use these referrals to authenticate and authorize users. You can use the broker’s JAAS LDAP login module to control how the broker handles LDAP referrals.
ENTMQBR-1648 - Don’t hardcode openshift.DNS_PING service name
AMQ Broker 7.5 enables you to specify a unique value for the OpenShift DNS ping service for each application template deployment that you make in a given OpenShift project. This enhancement enables you to deploy multiple broker clusters in the same OpenShift project. For more information, see the description of the
PING_SVC_NAMEparameter in Application template parameters.
ENTMQBR-1783 - Add a user and role manager (create/delete/update/list) JMX endpoint in AMQ 7
AMQ Broker 7.3 supports adding, removing, and updating user information by using the management API when you are using the
PropertiesLoginModuleclass. Previously, you could perform these actions only by using the command-line interface.
ENTMQBR-1918 - [AMQ7, critical-analyzer] add extra detail to output for analyzing cause of timeout
The logs for the Critical Analyzer now provide extra information about a slow-performing broker when you enable tracing on the package named
ENTMQBR-1932 - Support AMQ 7 on Java 11
AMQ Broker 7.4 adds runtime support for JDK 11 Java Virtual Machines (JVMs).
ENTMQBR-1974 - Support masked passwords in
AMQ Broker now supports masking the values of the
trust-store-passwordsettings in the
management.xmlfile. These values are used when you secure remote JMX access with SSL.
ENTMQBR-2020 - Track routed and unrouted messages to an address
Address metrics now include information about how many messages the address has received. This number is divided between routed and unrouted messages. Prior to this enhancement, it was impossible to determine if an address had received a message which was not routed, for example, in the case of a JMS topic with no subscriptions.
ENTMQBR-2025 - Allow users to define custom last value queue keys
AMQ Broker 7.4 supports last value queues with custom last value key names. Previously, last value queues used only the default last value key name of
ENTMQBR-2139 - Support MSSQL for database message persistence
AMQ Broker 7.4 supports Microsoft SQL Server 2016 for JDBC-based persistence.
ENTMQBR-2173 - Support a Prometheus plugin or agent
AMQ Broker 7.4 includes a pre-configured plugin for Prometheus. Prometheus is software built to monitor large, scalable systems and store historical runtime data over an extended time period. The AMQ Broker Prometheus plugin exports broker runtime metrics to Prometheus format, enabling you to use Prometheus itself to visualize and run queries on the data.
ENTMQBR-2299 - An option to reject messages without a JMSXUserID
Starting in AMQ Broker 7.4, you can track and log the origins of messages using the
_AMQ_VALIDATED_USERmessage key. You can also configure the broker to reject a message that does not have a user name already populated by the client when it sends the message.
ENTMQBR-2345 - Enhancements to the databaseStoreType
In AMQ Broker 7.4, you can add an encrypted user name and password when configuring a
database-storeelement in your
ENTMQBR-2687 - Add new ActiveMQArtemis CRD version to reflect actual configuration schema
In AMQ Broker 7.5, the Custom Resource Definition (CRD) files used by the AMQ Broker Operator have been redesigned. This enhancement makes the CRDs more consistent with the
broker.xmlconfiguration file that you use to configure on-premise broker deployments. For more information, see Overview of Custom Resource Definitions.
ENTMQBR-2846 - Operator-based deployments larger than one broker are clustered by default
In the 7.5 version of the AMQ Broker Operator, a deployment of two or more brokers is clustered by default. In the 7.4 version of the Operator, you needed to explicitly include a
clusterConfigconfiguration element in the Custom Resource (CR) that you created for your deployment.
ENTMQBR-2921 - Scaledown controller no longer explicitly deployed via Custom Resource
In the 7.5 version of the AMQ Broker Operator, if you intend to enable message migration in your broker deployment, you no longer need to deploy a dedicated Custom Resource (CR) instance for the scaledown controller. Now, if you set
truein your main broker CR, the Operator automatically instantiates and starts the scaledown controller to prepare for message migration. If you set
false, the Operator does not instantiate the scaledown controller. If you do not explicitly set a value for
messageMigration, the Operator sets a default value of
true. In this case, the Operator also automatically instantiates and starts the scaledown controller.
ENTMQBR-3126 - Added AMQ Broker support for running within OpenShift Container Platform on IBM Z
AMQ Broker 7.5 adds broker and Operator container images that support RHEL 8 on IBM Z. This added support enables you to create broker deployments within OpenShift Container Platform on IBM Z. For more information, see Deploying AMQ Broker on OpenShift Container Platform Using an Operator.