ActiveMQ Artemis 2.0.0 Release Notes
A complete list of JIRAs for the 2.0.0 release can be found at the Apache ActiveMQ Artemis project JIRA.
Sub-task {#sub-task .text-purple}
- [ARTEMIS-781] - Create Address Journal Record Type
- [ARTEMIS-782] - Add new configuration schema that includes first class Address elements
- [ARTEMIS-783] - Implement “anycast” routing in Artemis PostOffice
- [ARTEMIS-784] - Add new management methods to include new first class addresses
- [ARTEMIS-785] - Update Examples to use new configuration
- [ARTEMIS-787] - Update core client wireformat to support new addressing scheme
- [ARTEMIS-788] - Update MQTT& STOMP to check that addresses are multicast
- [ARTEMIS-789] - Update Tests
- [ARTEMIS-790] - Create a Configv1 to Configv2 transformation tool
- [ARTEMIS-791] - Define XSD for new configuration
- [ARTEMIS-813] - Store Address Data and AutoCreate Address on Queue Load/Create
- [ARTEMIS-815] - Make address path separator configurable
- [ARTEMIS-876] - Remove JMS stuff from code-base
- [ARTEMIS-877] - Update various protocols to deal with new addressing scheme
- [ARTEMIS-878] - Update CLI
- [ARTEMIS-879] - Implement new security roles for addresses
- [ARTEMIS-880] - Support address prefixing
- [ARTEMIS-881] - Add new address-settings to deal with new config options
Bug
- [ARTEMIS-164] - Add examples from qpid JMS
- [ARTEMIS-367] - MQTT Tests log error checking DLQ
- [ARTEMIS-474] - replication fails with colocated topologies
- [ARTEMIS-566] - Cannot remove JMS queue that has been removed from Core side
- [ARTEMIS-773] - AMQP: Transactional Acquistion and Retirement does not seem to work correctly.
- [ARTEMIS-882] - Some objects don’t support lists on the connection factory definition
- [ARTEMIS-883] - Fix OpenWire policy=Block
- [ARTEMIS-885] - Fix OpenWire wildcard conversion issue
- [ARTEMIS-886] - Tiny error in documentation
- [ARTEMIS-887] - Fix some OpenWire test failures
- [ARTEMIS-888] - AMQP headers arent always set
- [ARTEMIS-890] - Dropped Messages, Paging and Block are ignored when broker is non persistent
- [ARTEMIS-892] - Error decoding AMQP frame sent by Artemis
- [ARTEMIS-893] - Fix FailoverTransactionTest.testWaitForMissingRedeliveries
- [ARTEMIS-899] - On user authentication a stack trace is logged to the error channel
- [ARTEMIS-900] - Fix compatibility with older Artemis and HornetQ versions after the address changes
- [ARTEMIS-901] - SASL PLAIN auth with AMQP doesn’t take authzid into account
- [ARTEMIS-902] - OpenWire Compression Issue
- [ARTEMIS-907] - Fix NettySecurityClientTest
- [ARTEMIS-909] - the default welcome files aren’t served correctly
- [ARTEMIS-911] - consumer ack count no increased with individual acknowledge
- [ARTEMIS-912] - 1.x to 2.0 configuration migration tool does not work
- [ARTEMIS-913] - Slow consumer detection not working when paging
- [ARTEMIS-914] - Max saved replicated journal size on Live node should not be -1
- [ARTEMIS-915] - WebComponent stopped when backup failback
- [ARTEMIS-917] - Retained messages from file system contain weird chars
- [ARTEMIS-918] - Autocreated address is always anycast when using qpid-jms client
- [ARTEMIS-919] - Issues creating jms queues in core config in broker.xml when hot reloading configuration
- [ARTEMIS-921] - Consumers killed as slow even if overall consuming rate is above threshold
- [ARTEMIS-926] - CME when Artemis server start
- [ARTEMIS-927] - ActiveMQ logs cluster password in plain text
- [ARTEMIS-929] - Artemis cli tools does not check non-existing options
- [ARTEMIS-930] - JDBC FileFactory Driver Prepared Statement does not always return ID
- [ARTEMIS-931] - Improve HTTP upgrade connection
- [ARTEMIS-934] - Stomp server keeps pinging client after client stops responding
- [ARTEMIS-936] - Allow AMQP transformers to be configured and default to native
- [ARTEMIS-937] - Use Proper disk alignment over libaio instead of 512 hard coded.
- [ARTEMIS-939] - User list not updated on the broker dynamically
- [ARTEMIS-944] - Broker can’t convert AMQP python message to Openwire format
- [ARTEMIS-945] - The queue manager doesn’t check for null when deleting queue
- [ARTEMIS-946] - CLONE - Consumers killed as slow even if overall consuming rate is above threshold
- [ARTEMIS-949] - Prevent Openwire from closing consumer twice
- [ARTEMIS-950] - Change log level from INFO to WARN for “Invalid “host” value “0.0.0.0” detected for…” when Artemis is bound to 0.0.0.0
- [ARTEMIS-951] - MQTT Messages Acks are not auto-committed
- [ARTEMIS-952] - MQTT Clean session should delete subscription queues
- [ARTEMIS-953] - Refactor JMX object names
- [ARTEMIS-954] - role does not default to amq as the documentation states.
- [ARTEMIS-958] - Improve web server tmp dir cleanup
- [ARTEMIS-960] - Send Will messages have extra string encoding
- [ARTEMIS-961] - MQTT Will messages are not encoded as UTF8
- [ARTEMIS-962] - improve the OpenMBean support for browsing
- [ARTEMIS-963] - ClassCastException in ActiveMQChannelHandler
- [ARTEMIS-969] - ReceiveMessage will expand unecessarily on core protocol
- [ARTEMIS-970] - javax.jms.Message.getJMSDestination() fails when message not sent with AMQP
- [ARTEMIS-974] - MQTT Will messages are not retained
- [ARTEMIS-976] - PostgresSequentialSequentialFileDriver SQLProvider NPE
- [ARTEMIS-977] - record id of address not set on journal reload
- [ARTEMIS-978] - Replicating live restarts as backup when both live and backup are killed in a cluster
- [ARTEMIS-979] - OpenWire “no-Local” consumer not working
- [ARTEMIS-980] - Openwire can’t send message to temp destination
- [ARTEMIS-981] - OpenWire can’t receive empty ObjectMessage
- [ARTEMIS-982] - Deadlock on AMQP Close versus Delivery on AMQP
- [ARTEMIS-986] - Integer overflow in MySQLSQLProvider.java
- [ARTEMIS-988] - Regression: web tmp dir not cleaned up
- [ARTEMIS-989] - Individual Acknowledge: ActiveMQConnectionFactory.createContext(final int sessionMode) throws exception for ActiveMQJMSConstants.INDIVIDUAL_ACKNOWLEDGE
- [ARTEMIS-990] - AMQ119032: User: Customer does not have permission=’CREATE_DURABLE_QUEUE’ on address $sys.mqtt.queue.qos2
- [ARTEMIS-991] - Null dereference after hitting Ctrl+d when prompted for password in `artemis create`
- [ARTEMIS-992] - NPE and other trouble when cluster-connection has bad connector-ref
- [ARTEMIS-998] - NPE when using JDBCFileDriver when Blob is null
- [ARTEMIS-1000] - Openwire exception response no correlation-id
- [ARTEMIS-1003] - Documentation uses incorrect variable in code example for Large Messaging
- [ARTEMIS-1007] - Missing management annotations
- [ARTEMIS-1010] - Oracle12C driver does not support table names with lower case letters
- [ARTEMIS-1017] - Wrong error message when default destination for producer is not specified
- [ARTEMIS-1020] - CDI Extension doesn’t discover Configuration via CDI producers
- [ARTEMIS-1026] - Don’t route to queue when consumerCount = 0 and purge-on-no-consumers = true
Improvement
- [ARTEMIS-410] - STOMP destination prefixes should be configurable
- [ARTEMIS-537] - Allow Artemis to use Karaf JAAS security
- [ARTEMIS-560] - Add support for Paging using JDBC Store
- [ARTEMIS-762] - AMQP Clients are not updated after management operations
- [ARTEMIS-829] - Core Protocol Producers will re-encode messages on the server
- [ARTEMIS-851] - Parse System.properties as Configuration
- [ARTEMIS-866] - make replication and quorum voting configurable and more resilient
- [ARTEMIS-873] - Use K,M,G notations on broker.xml
- [ARTEMIS-903] - Add documentation for updating Artemis to newer versions
- [ARTEMIS-906] - Memory Mapped JournalType
- [ARTEMIS-920] - Log SQL Exceptions and Warnings
- [ARTEMIS-922] - Clean up addressing API
- [ARTEMIS-928] - Remoting Layer will reuse ByteBuffer Pools on messages
- [ARTEMIS-935] - Tool to recalculate disk sync times
- [ARTEMIS-938] - JDBC persistence-store should use BIGINT type for IDs in database tables
- [ARTEMIS-943] - Update and document XML importer/exporter for new addressing scheme
- [ARTEMIS-947] - Configuration reload logic should deal with new addressing scheme
- [ARTEMIS-957] - JDBC Store should use setBytes API vs using Concat on BLOB
- [ARTEMIS-964] - Move common XMLDataExporter logic into a utility class
- [ARTEMIS-993] - ClientConsumerImpl.java contains unreachable code
- [ARTEMIS-996] - Simplify and deduplicate lookupHome(path) in artemis-maven-plugin
- [ARTEMIS-1002] - ActiveMQBuffers creates a new netty pool increasing memory footprint
- [ARTEMIS-1006] - JDBC Storage Manager to show SQLExceptions on logs
- [ARTEMIS-1008] - Allow web server host to be set on create
New Feature
- [ARTEMIS-17] - Add Broker Interceptor - like the Camel Broker Component in ActiveMQ 5
- [ARTEMIS-24] - Lazy conversions on Protocols / Persistency
- [ARTEMIS-562] - Use ‘to’ field if sender target is null
- [ARTEMIS-780] - Improve addressing, routing and JMS configuration in Artemis
- [ARTEMIS-983] - Allow JMS client to fully qualify the queue it uses
- [ARTEMIS-999] - Support Oracle12C for Artemis JDBC Store
- [ARTEMIS-1009] - Pure Encoding of Messages
Task
- [ARTEMIS-891] - upgrade proton to 0.16
- [ARTEMIS-896] - Remove 32 bits native library
- [ARTEMIS-923] - Bump minimum Maven to 3.1.0
- [ARTEMIS-995] - Cleanup test suite
- [ARTEMIS-1019] - Removing defunct integrations (Aerogear and Vertx)
- [ARTEMIS-1029] - Cleanup testsuites