This chapter provides the following information for each release:
Highlights:
SecurityManager
implementation that supports replicationDue to ARTEMIS-2893 the fundamental way user management was implemented had to change to avoid data integrity issues related to concurrent modification. From a user's perspective two main things changed:
User management is no longer possible using the artemis user
commands when the broker is offline. Of course users are still free to modify the properties files directly in this situation.
The parameters of the artemis user
commands changed. Instead of using something like this:
./artemis user add --user guest --password guest --role admin
Use this instead:
./artemis user add --user-command-user guest --user-command-password guest --role admin
In short, use user-command-user
in lieu of user
and user-command-password
in lieu of password
. Both user
and password
parameters now apply to the connection used to send the command to the broker.
For additional details see ARTEMIS-2893 and ARTEMIS-3010
Highlights:
security-settings
and JNDI lookupHighlights:
broker.xml
broker.xml
addressMemoryUsagePercentage
and addressSize
as metricsThis is likely a rare situation, but it's worth mentioning here anyway. Prior to 2.14.0 if you configured a parameter on a queue
in broker.xml
(e.g. max-consumers
) and then later removed that setting the configured value you set would remain. This has changed in 2.14.0 via ARTEMIS-2797. Any value that is not explicitly set in broker.xml
will be set back to either the static default or the dynamic default configured in the address-settings (e.g. via default-max-consumers
in this example). Therefore, ensure any existing queues have all the needed parameters set in broker.xml
values before upgrading.
Highlights:
check
tool for checking the health of a brokerenable-metrics
address settingHierarchicalObjectRepository
, an internal object used to store address and security settingsVersion 2.13.0 added new audit logging which is logged at INFO
level and can be very verbose. The logging.properties
shipped with this new version is set up to filter this out by default. If your logging.properties
isn‘t updated appropriately this audit logging will likely appear in your console and artemis.log
file assuming you’re using a logging configuration close to the default. Add this to your logging.properties
:
# to enable audit change the level to INFO logger.org.apache.activemq.audit.base.level=ERROR logger.org.apache.activemq.audit.base.handlers=AUDIT_FILE logger.org.apache.activemq.audit.base.useParentHandlers=false logger.org.apache.activemq.audit.resource.level=ERROR logger.org.apache.activemq.audit.resource.handlers=AUDIT_FILE logger.org.apache.activemq.audit.resource.useParentHandlers=false logger.org.apache.activemq.audit.message.level=ERROR logger.org.apache.activemq.audit.message.handlers=AUDIT_FILE logger.org.apache.activemq.audit.message.useParentHandlers=false ... #Audit logger handler.AUDIT_FILE=org.jboss.logmanager.handlers.PeriodicRotatingFileHandler handler.AUDIT_FILE.level=INFO handler.AUDIT_FILE.properties=suffix,append,autoFlush,fileName handler.AUDIT_FILE.suffix=.yyyy-MM-dd handler.AUDIT_FILE.append=true handler.AUDIT_FILE.autoFlush=true handler.AUDIT_FILE.fileName=${artemis.instance}/log/audit.log handler.AUDIT_FILE.formatter=AUDIT_PATTERN formatter.AUDIT_PATTERN=org.jboss.logmanager.formatters.PatternFormatter formatter.AUDIT_PATTERN.properties=pattern formatter.AUDIT_PATTERN.pattern=%d [AUDIT](%t) %s%E%n
Highlights:
server
header in STOMP CONNECTED
frame to be disabledacceptor
to more easily identify the acceptor
which has the problem.broker.xml
to find the default connector
URL for commands which require it (e.g. consumer
, producer
, etc.)Highlights:
com.sun.jndi.ldap.read.timeout
in LDAPLoginModule.This was mainly a bug-fix release with a notable dependency change impacting version upgrade.
Due to the WildFly dependency upgrade the broker start scripts/configuration need to be adjusted after upgrading.
Locate this statement in bin/artemis
:
WILDFLY_COMMON="$ARTEMIS_HOME/lib/wildfly-common-1.5.1.Final.jar"
This needs to be replaced with this:
WILDFLY_COMMON="$ARTEMIS_HOME/lib/wildfly-common-1.5.2.Final.jar"
Locate this part of JAVA_ARGS
in etc/artemis.profile.cmd
respectively bin/artemis-service.xml
:
%ARTEMIS_HOME%\lib\wildfly-common-1.5.1.Final.jar
This needs to be replaced with this:
%ARTEMIS_HOME%\lib\wildfly-common-1.5.2.Final.jar
This was a light release. It included a handful of bug fixes, a few improvements, and one major new feature.
Highlights:
This was mainly a bug-fix release with a notable dependency change impacting version upgrade.
Due to the dependency upgrade made on ARTEMIS-2319 the broker start scripts need to be adjusted after upgrading.
Locate this if
statement in bin/artemis
:
if [ -z "$LOG_MANAGER" ] ; then # this is the one found when the server was created LOG_MANAGER="$ARTEMIS_HOME/lib/jboss-logmanager-2.0.3.Final.jar" fi
This needs to be replaced with this block:
if [ -z "$LOG_MANAGER" ] ; then # this is the one found when the server was created LOG_MANAGER="$ARTEMIS_HOME/lib/jboss-logmanager-2.1.10.Final.jar" fi WILDFLY_COMMON=`ls $ARTEMIS_HOME/lib/wildfly-common*jar 2>/dev/null` if [ -z "$WILDFLY_COMMON" ] ; then # this is the one found when the server was created WILDFLY_COMMON="$ARTEMIS_HOME/lib/wildfly-common-1.5.1.Final.jar" fi
Notice that the jboss-logmanager
version has changed and there is also a new wildfly-common
library.
Not much further down there is this line:
-Xbootclasspath/a:"$LOG_MANAGER" \
This line should be changed to be:
-Xbootclasspath/a:"$LOG_MANAGER:$WILDFLY_COMMON" \
Locate this part of JAVA_ARGS
in etc/artemis.profile.cmd
respectively bin/artemis-service.xml
:
-Xbootclasspath/a:%ARTEMIS_HOME%\lib\jboss-logmanager-2.1.10.Final.jar
This needs to be replaced with this:
-Xbootclasspath/a:%ARTEMIS_HOME%\lib\jboss-logmanager-2.1.10.Final.jar;%ARTEMIS_HOME%\lib\wildfly-common-1.5.1.Final.jar
Highlights:
Highlights:
consumersBeforeDispatchStarts
and timeBeforeDispatchStarts
from 5.x.auto-delete-queues-delay
and auto-delete-addresses-delay
Address Settings.default-consumer-window-size
Address Setting.key-store-password
and trust-store-password
in management.xml.JMSXGroupSeq
-1 to close/reset message groups from 5.x.This was mainly a bug-fix release with a few improvements a couple notable new features:
Highlights:
producer
CLI command.This was mainly a bug-fix release with a few improvements but no substantial new features.
This was a bug-fix release with no substantial new features or improvements.
This was a bug-fix release with no substantial new features or improvements.
Highlights:
SASL_EXTERNAL
for AMQP clients.Highlights:
LoggingActiveMQServerPlugin
).sslProvider
URL parameter.acceptor
that needs to be compatible with HornetQ and/or Artemis 1.x clients needs to have anycastPrefix=jms.queue.;multicastPrefix=jms.topic.
in the acceptor
url. This prefix used to be configured automatically behind the scenes when the broker detected these old types of clients, but that broke certain use-cases with no possible work-around. See ARTEMIS-1644 for more details.Highlights:
Create <ARTEMIS_INSTANCE>/etc/management.xml
. At the very least, the file must contain this:
<management-context xmlns="http://activemq.org/schema"/>
This configures role based authorisation for JMX. Read more in the Management documentation.
If configured, remove the Jolokia war file from the web
element in <ARTEMIS_INSTANCE>/etc/bootstrap.xml
:
<app url="jolokia" war="jolokia.war"/>
This is no longer required as the Jolokia REST interface is now integrated into the console web application.
If the following is absent and you desire to deploy the web console then add:
<app url="console" war="console.war"/>
Note: the Jolokia REST interface URL will now be at http://<host>:<port>/console/jolokia
Highlights:
web
element in <ARTEMIS_INSTANCE>/etc/bootstrap.xml
:<app url="console" war="console.war"/>
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights:
Highlights: