Mule ESB 3.2.2 Release Notes
We are happy to announce the release of Mule ESB 3.2.2 EE. This is a follow-up to Mule ESB 3.2.1, which continues MuleSoft’s commitment to making Mule the industry’s most powerful, complete, and up-to-date enterprise ESB solution.
We have been working very hard to resolve issues since 3.2.1, and we fixed over 90 issues for this release, making it the most stable version yet, and a highly recommended upgrade.
We focused on significantly improving ESB reliability by fixing multiple issues in the core and in the most used transports. This greatly improved the usability and consistency of Mule ESB, reducing friction points across the board. In particular, we recommend this upgrade to users who rely on JMS, CXF, HTTP and XSLT transformations.
On the MMC side, we focused on improving performance by as much as ten-fold for many deployments. We also worked on the communication among Mule servers to improve reliability and consistency.
Fixed in This Release
Mule version 3.2.2 builds on the features added in version 3.2.1 and fixes the following issues:
Key | Component/s | Summary |
---|---|---|
MULE-5496 |
Core: Expressions |
ScriptExpressionEvaluator does not throw Exception |
MULE-5648 |
Core: Bootstrap / Standalone |
An app archive with .zip at the end of it’s name will fail |
MULE-5661 |
Core: Routing / Filters |
message-filter setting onUnaccepted causes the application not to initialise |
MULE-5674 |
Core: Event/Message |
DefaultMuleSession properties are sometimes case insensitive and sometimes case sensitive. |
MULE-5913 |
Core: Routing / Filters |
DefaultRouterResultsHandler incorrectly aggregates null results |
MULE-5925 |
Core: Lifecycle |
processor-chain cannot be used twice from message-filter (onUnaccepted) when it contains a component |
MULE-5883 |
Core: Routing / Filters |
Session Properties being lost inside a collection splitter |
MULE-5820 |
Core: Endpoints |
Invocation-scoped properties are lost after processing a request-response endpoint |
MULE-5852 |
Core: Properties |
request-response router does not preserve session properties |
MULE-5933 |
Core: Transformers |
PropertyEditorValueToTextTransformerTestCase should use PropertyEditorManager to get the boolean editor |
MULE-5988 |
Core: Sessions |
ConcurrentModificationException during serialization of MuleSession with SessionHandler if there is a non-serializable property |
MULE-6011 |
Core: Exception Handling |
Make 3.2.x and 3.x custom exception strategies backward compatible with mule 3.1.x |
MULE-6012 |
Core: Components, Documentation / Website |
simple-text-file-store entryTTL documentation not consistent with InMemoryObjectStore implementation |
MULE-5998 |
Core: Routing / Filters |
As from 3.2 aggregators no longer maintain the order events are received when creating MuleMessageCollection |
MULE-6007 |
Core: Queues (SEDA) / Persistence, Core: Routing / Filters, Core: Transactions |
Application fails to start when using until-successful router with a persistent ObjectStore |
MULE-6022 |
Core: Configuration |
<all> router removes all message properties |
MULE-6023 |
Core: (other), Core: Endpoints |
Flow should be ready to process messages as soon as the message processors are started |
MULE-6025 |
Core: Flow |
Add initialState attribute for flows (as in services) |
MULE-6042 |
Core: Deployment |
MuleApplicationClassLoader Memory Leak after repeated re-deployments |
MULE-6050 |
Core: Lifecycle |
When a Mule object (application, connector, flow, endpoint, etc) is stopped more than once, the second and later stops have no effect |
EE-2560 |
Core: (other) |
Session property lost after enricher |
EE-2562 |
Core: (other) |
Memory leak when using CXF |
EE-2573 |
Core: Routing / Filters |
Session Properties being lost inside a collection splitter |
EE-2603 |
Core: Cluster |
Cluster node balancing creates single point of failure for approximately 25 minutes, than corrects itself |
EE-2642 |
Core: (other) |
MuleApplicationClassLoader Memory Leak after repeated re-deployments |
EE-2630 |
Core: Lifecycle |
Life cycle exception at Service startup |
MULE-5518 |
Modules: CXF |
CDATA XML Data Being Removed from SOAP Request with CXF Proxy Service |
MULE-5775 |
Modules: CXF |
cxf proxy does not return fault to the actual caller |
MULE-6003 |
Modules: CXF |
CXF swallows exceptions in flows, prevents exception strategies from processing exceptions |
MULE-5874 |
Modules: CXF |
cxf service attribute is not working in jaxws endpoint |
MULE-6041 |
Modules: CXF |
CXF client does not support holders with clientClass |
EE-2557 |
Transport: CXF |
cxf service attribute is not working |
EE-2617 |
Transport: CXF |
CXF swallows exceptions in flows, prevents exception strategies from processing exceptions |
EE-2634 |
Transport: CXF |
Mule is not returning results from CXF when using javax.xml.ws.Holder objects to receive the output |
MULE-5859 |
Modules: XML, XSLT, XPath, SXC |
XPath Expression Evaluator does not accept org.w3c.dom.Element input |
MULE-5892 |
Modules: XML, XSLT, XPath, SXC |
ClassCastException when choosing incorrect XPath Parser. |
MULE-5931 |
Modules: XML, XSLT, XPath, SXC, Transport: HTTP(S) / Jetty |
JAXB and http transformers don’t work together |
MULE-6029 |
Modules: XML, XSLT, XPath, SXC |
JaxpXPathExpressionEvaluator cannot be used in configs as xpath2 is not in the list of allowed expression evaluators |
MULE-5997 |
Modules: Expressions |
Inconsistent definition of some expression evaluators |
MULE-5869 |
Modules: Jersey |
Allow context resolvers to be added to jersey components |
EE-2439 |
Modules: XML, XSLT, XPath |
XSLT Transformer leaks memory |
EE-2538 |
Modules: XML, XSLT, XPath, Transport: HTTP/ HTTPS |
Exception when invoking an http endpoint (with a body-to-parameter-map-transformer) if the configuration has defined a JAXB Context |
EE-2564 |
Modules: XML, XSLT, XPath |
ClassCastException when choosing incorrect XPath Parser. |
MULE-4193 |
Transport: HTTP(S) / Jetty |
HttpsPollingConnector is broken |
MULE-5415 |
Transport: HTTP(S) / Jetty |
Http transport doesn’t work for first invocation |
MULE-5880 |
Transport: HTTP(S) / Jetty |
AbstractReceiverServlet not allowing to send multiple headers with the same header name |
MULE-5937 |
Transport: HTTP(S) / Jetty |
HttpTransport ignores Expires in Set-Cookie values |
EE-2612 |
Transport: HTTP/ HTTPS, Transport: JMS |
JMS MEP request-response not working if followed by a dynamic endpoint |
EE-2551 |
Transport: WebsphereMQ |
WMQ Transactions not being committed after an exception, which leads to a Infinite redelivery loop |
EE-2598 |
Transport: JMS |
maxRedelivery -1 not being taken into account by ActiveMQ Connector |
MULE-5838 |
Transport: JMS |
JMSMessageToObject fails to set Correlation-ID when passed as inbound property |
MULE-5943 |
Transport: JMS |
maxRedelivery -1 not being taken into account by ActiveMQ Connector |
MULE-6014 |
Transport: JMS |
JMS MEP request-response not working if followed by a dynamic endpoint |
MULE-6028 |
Transport: JMS |
activemq-xa connector does not reconnect to JMS provider once disconnected |
MULE-6051 |
Transport: JMS |
XA transactions causing an increment in ActiveMQ consumers |
EE-2221 |
Transport: JMS |
activemq-xa connector does not reconnect to JMS provider once disconnected |
MULE-5877 |
Transport: FTP / SFTP |
sftp transport does not honor pollingFrequency |
MULE-5654 |
Transport: File |
Add same functionality of the FileMessageReceiver to the FileMessageRequester regarding the attribute 'workDirectory' and 'workFileNamePattern' of the FileConnector |
MULE-5769 |
Documentation / Website, Modules: CXF |
Error in Proxying Web Services with CXF page and payload mode |
MULE-5884 |
Documentation / Website, Transport: JMS |
ActiveMQ web documentation should explain activemq jar inclusion in lib directory |
MULE-5864 |
Documentation / Website |
Broken links in the "Using Filters" page |
MULE-6009 |
Documentation / Website |
MessagePropertyTransformer scope attribute defaults to outbound but is not documented |
MULE-5836 |
Schema |
Cannot use message-filter, idempotent-message-filter, idempotent-secure-hash-message-filter and combine-collections-transformer as global elements |
MULE-5941 |
Schema |
sub-flow name is not displayed nor required in the schema but you get an error when trying to run an app with a sub-flow without a name |
MULE-5617 |
Build: Distributions, Build: Maven |
Javadoc no longer generated with Maven 3 build |
MULE-5703 |
Build: Distributions, Documentation / Website |
Outdated installer documentation. Installer hangs while executing the last step and Mule isn’t completely installed. |
MULE-6017 |
Build: Distributions |
spring.handlers and spring.schema are not generated correctly within the embedded distribution |
EE-2369 |
Build: Maven |
When the "populate_m2_repo" script finishes installing the dependencies, it doesn’t return control to the console |
EE-2631 |
Build: Distributions |
spring.handlers and spring.schema are not generated correctly within the embedded distribution |
MMC-1106 |
Flows & Services |
Favorite Flows are not showing the flow summary when selected |
MMC-1097 |
Generic (other) UI |
Flow Analyzer is not showing 'Select All' and 'Deselect All' buttons (IE only) |
MMC-1094 |
Generic (other) UI |
Server and Flow status Icon and Flow star white icon are not displayed by default (FF only) |
MMC-1093 |
Flows & Services |
Flow Details Summary displays only the Events Received pane |
MMC-1092 |
Alerts |
On Alerts, Alert Notification, System incorrectly reports that the notification name already exists when working with SNMP destinations |
MMC-1077 |
Clustering |
Clustering, error encountered when attempting to disband a cluster "500 see log for details" |
MMC-1067 |
REST APIs |
On Rest API, when listing servers, status is not displayed correctly. |
MMC-1153 |
Deployments |
Unable to Deploy applications to a Server Group with a Cluster |
MMC-1107 |
Agent, Business Event Analyzer |
On Business Event, queries do not show new generated events while agent is on heavy load (if load is reduced situation goes back to normal). |
MMC-1090 |
Business Event Analyzer |
OpenJpa errors while doing light soak test. |
MMC-1020 |
Deployments |
On Applications tab, when the deployment of an app in a cluster takes a long time to finish, the status of the deployment is shown as falied after some time. |
MMC-924 |
Servers |
Can create a cluster with two nodes offline |
MMC-916 |
REST APIs |
REST API: Wrong server count when retrieving server group info |
MMC-791 |
Deployments, Servers |
It is allowed to unpair a server already used in one or more deploys . |
Migration
For instructions about migrating from 3.1.x, see the migration topic.
Limitations
-
Currently, the Until-Successful router retries an operation until the operation succeeds; however, all retry attempts occur on just one node in the cluster
-
The Mule ESB Enterprise Edition trial software cannot be used as a cluster node if you are also using it to evaluate the management console. MuleSoft recommends that you install the management console in a web container such as Apache Tomcat whenever you wish to manage cluster nodes
Known Issues
The following JIRAs are open against this release of Mule ESB:
Key | Component/s | Summary |
---|---|---|
MULE-5774 |
Transport: JMS |
Active MQ, since 5.3.0 has a bug that do not allow to create more than one MessageConsumer |
MULE-5923 |
Examples / Tutorials |
Memory leak stressing Loan Broker BPM |
MULE-6077 |
Documentation / Website |
Combine-collections-transformer is not a transformer so it should be moved from the Transformer Configuration Reference to the Routing Message Processors page |
MULE-6078 |
Core |
message-filter, idempotent-message-filter, idempotent-secure-hash-message-filter and combine-collections-transformer have confusing names |
MULE-6099 |
Core: Event/Message |
Merged session for an event group is not created in a deterministic way |
EE-2577 |
Core: Bootstrap / Java Service Wrapper |
Mule fails to start on HP-UX |
EE-2652 |
Examples / Tutorials |
Error running mvn in widget example |
EE-2656 |
Transport: WebsphereMQ |
WMQ (JMS?) sends responses to ReplyTo queues even if inbound-endpoint is one-way |