Race conditions no longer occur when running parallel deployments.
Mule Runtime Engine 4.4.0 Release Notes
Mule runtime engine (Mule) is a lightweight integration engine that runs Mule applications and supports domains and policies.
April 2022
Patch release version: 4.4.0-20220321
This patch update addresses the following Mule issues:
Description | Issue |
---|---|
W-10672687/SE-23764 |
|
Custom connector POST requests no longer send the body as NULL when handling empty payloads. |
W-10818822 |
The redirect implementation properly handles the "Preserve Header Case" configuration. |
W-10822777 |
For guidance with the patching process, see Apply Patch Updates.
March 2022
Patch release version: 4.4.0-20220221
This patch update addresses the following Mule issues:
Description | Issue |
---|---|
A direct memory error no longer occurs when the |
SE-24186 |
Set-Cookie is now handled correctly after a redirect request. |
W-10667387 / MULE-19942 |
Properties now resolve correctly for document attributes of the AST metadata. |
W-10673280 / MULE-20090 |
Metadata type is no longer missing from the definition when present in the schema. |
W-10674401 / SDK-48 |
When disposing of an application, Mule no longer throws an |
W-10674436 / W-10674454 / SE-23775 |
After a failed HTTP request, applications no longer stop when reading the error payload in the error handler. |
W-10681464 / MULE-19537 |
The warning |
W-10730677 / EE-7990 |
|
W-10745620 / W-10746222 / MULE-19984 |
Thread-local interference no longer occurs when a task is scheduled for execution on the same thread due to thread-pool exhaustion. One possible symptom was a transaction not being properly cleaned up under heavy load, followed by nested transaction errors. |
W-10619599 / MULE-20072 / SE-24241 |
DataWeave 2.4.0 is bundled with the Mule 4.4.0 release. The March patch release addresses the following DataWeave issues:
Description | Issue |
---|---|
A direct memory error no longer occurs when the |
SE-24186 |
Duplicate declarations for namespace prefixes in XML no longer occur. |
W-10648792 / DW-1081 |
Exceptions are no longer thrown due to use of the |
W-10648825 / SE-23812 |
Avro unions with enums are now supported. |
W-10706991 |
For guidance with the patching process, see Apply Patch Updates.
February 2022
Patch release version: 4.4.0-20220124
This patch update addresses the following Mule issues:
Description | Issue |
---|---|
Anypoint Connector for Box (Box Connector) no longer fails to recreate the input stream after an access token refresh, preventing a stream closed issue. |
MULE-20001/SE-23666 |
A concurrent connection limitation in Anypoint Connector for NetSuite (NetSuite Connector) no longer occurs. |
MULE-19937/SE-22359 |
The readiness check performed when deploying on Runtime Fabric is now processed correctly. |
AGENT-466/SE-22948/SE-22585 |
Running multiple MUnit cases together no longer causes a |
MULE-20012/SE-23407 |
Anypoint Connector for Google Calendar (Google Calendar Connector) no longer overwrites the access_token, which prevents generating incorrect results. |
MULE-20019/SE-23584 |
You can now use static values in a flow reference processor. |
MULE-19987/SE-23634 |
Mule no longer performs a thread switch in a transactional context that uses multithread and the same |
EE-8216/SE-23816 |
Using a custom connector that includes |
MULE-19976/SE-24012 |
Mule no longer returns an incorrect |
MULE-19895/SE-24091 |
Deploying a Mule application with unpaired |
MULE-20035/SE-24099 |
Global property values of a module are now accessible within a private operation that is invoked within a flow control component. |
MULE-19962/MULE-19035/SE-22282 |
DataWeave 2.4.0 is bundled with the Mule 4.4.0 release. The February patch release addresses the following DataWeave issues:
Description | Issue |
---|---|
An endless loop issue no longer occurs when writing a CSV file with |
DW-1074 |
Creating sample files using the |
DW-390 |
Corrected the documentation of the`Periods::between` function. |
DW-1070 |
Upgraded some dependencies, including avro and jackson, and removed unused AWS dependencies (#1673). |
DW-1080 |
Upgraded the |
CONN-9598 |
Performing transformations from avro to other formats no longer causes an exception when the |
SE-23802 |
For guidance with the patching process, see Apply Patch Updates.
January 2022
Patch release version: 4.4.0-20211227
This patch update addresses the following Mule issues:
Description | Issue |
---|---|
MUnit tests no longer fail after migration from Mule 4.2.1 to Mule 4.3.0 or higher versions. |
MULE-19866/SE-21030 |
This release adds a feature flag to disable |
MULE-19879/SE-23207 |
MUnit no longer hangs as references to Spring schemas in the Mule XSD schema are removed. |
MULE-19904/SE-23247 |
Applications that implement a VM Listener no longer raise |
SE-22172 |
Application deployment no longer fails with |
SE-22851 |
A null pointer exception error on |
MULE-19886 |
|
MULE-19869 |
Mule no longer raises exception errors for a custom connector developed with Mule SDK for Java. |
MULE-19936/SE-23408 |
If the redelivery policy is exhausted in a source configured with transactions, Mule no longer raises an error that runs in a loop. |
MULE-19915 |
Processors in subflows now get the processing strategy of the root flow. |
MULE-19924 |
Autogenerated Mule connectors no longer fail with |
MULE-19871/SE-21463 |
You can now redeploy applications that were in a stopped state when they were deleted. |
MULE-19890/SE-22261 |
DataWeave now escapes the |
MULE-19900/SE-22346 |
The batch processing On Complete phase no longer fails if it encounters an error stream. |
EE-8020/SE-22386 |
Logs no longer show reconnection successful messages when reconnection attempts to the FTP server are exhausted because the server is unavailable. |
SE-22434 |
Transactions opened by the JMS Listener are no longer rolled back. |
MULE-19919/SE-23039 |
You can now perform parallel deployments of apps that are linked to a domain and share a configuration. |
MULE-19912/SE-23123 |
Mule now recognizes Eclipse Temurin by Adoptium (formerly Adopt OpenJDK project) as a recommended JDK Vendor and no longer raises an INFO-level log message. |
MULE-19917/SE-23354 |
Apache Commons Compress upgraded to version 1.21. |
EE-8088 |
GSON upgraded to version 2.8.9. |
EE-8154 |
Kryo updated to version 4.0.2. |
EE-8153 |
Apache Velocity updated. |
EE-8010 |
The JMS Connector no longer leaks connections and now honors connection pools in XA mode with Solace JMS. |
MULE-19848/SE-2228 |
MUnit no longer fails with a |
SE-22728 |
Scheduler runs using cron expressions are no longer rejected if other scheduler components are under back pressure. |
SE-22941 |
This releases fixes an issue that caused a |
MULE-19896/SE-23142 |
An issue that caused a |
MULE-19896/SE-23142 |
The JMS Connector no longer leaks connections and now honors connection pools in XA mode with Solace JMS. |
MULE-19848/SE-22284 |
HTTP requests with |
MULE-19884/SE-22637 |
DataWeave 2.4.0 is bundled with the Mule 4.4.0 release. The January patch release addresses the following DataWeave issues:
Description | Issue |
---|---|
Flow retyping inside dynamic functions now works as expected. |
DW-677 |
DataWeave no longer incorrectly sets autostreaming. |
DW-918 |
The |
DW-932 |
JSON streaming now works correctly. |
DW-940 |
The |
SE-23494 |
Removing objects by property name now works as expected. |
SE-23444 |
When using arrays, the XML writer properly keeps namespaces. |
SE-23299 |
DataWeave now correctly parses large strings in JSON transformations. |
SE-23291 |
A Scatter Gather issue that caused DataWeave to throw the |
SE-22431 |
Comparison operators for |
SE-22025 |
Local variable resolution now works as expected. |
SE-21847 |
Avoid closing resources prematurely when using the |
SE-23483 |
Fix |
SE-23759 |
For guidance with the patching process, see Apply Patch Updates.
November 2021
November patch update 4.4.0-20211104 addresses a regression in the previous November patch update, 4.4.0-20211026, and includes the fixes in that patch.
For detailed information about the regression, potential actions to take, and alternative solutions, see HTTP Redirect Known Issues in Mule 4.3 and 4.4 runtime engines - November 2021 changes. |
Patch 4.4.0-20211104
Patch release version: 4.4.0-20211104
This November update addresses a regression introduced in the previous November patch, 4.4.0-20211026:
Description | Issue |
---|---|
|
MULE-19811 |
Addressed a regression in the initial November patch update. |
SE-23349 |
Patch 4.4.0-20211026
Patch release version: 4.4.0-20211026
Skip this patch, and install a later patch. Fixes in this patch are included in later patches. |
This November update addresses the following Mule issues:
Description | Issue |
---|---|
Fixed |
MULE-19811 |
Added missing |
EE-8112 |
The |
MULE-19678 |
An issue with nesting referenced Flow Reference components no longer occurs. |
MULE-19831/SE-22539 |
Fixed a memory leak in |
MULE-19846/SE-22780 |
Applications now start correctly after the September patch update is applied. |
MULE-19815/SE-22845 |
Fixed an issue with adding Anypoint Connector for Snowflake (Snowflake Connector) to Studio. |
SE-23107 |
Fixed a scheduling mechanism issue in Anypoint MQ that appeared when the |
MULE-19843/SE-23031 |
Fixed an |
MULE-19858/SE-23113 |
Fixed a memory leak in |
SE-22773 |
Fixed intermittent |
MULE-19533/SE-21576/SE-20958 |
Mule now handles concurrent requests correctly when a Mule application makes an HTTP request that returns a 301 redirect. |
SE-22922/SE-19944 |
DataWeave 2.4.0 is bundled with the Mule 4.4.0 release. The November patch release addresses the following DataWeave issues:
Description | Issue |
---|---|
Fixed a |
SE-21869 |
Comments within YAML files processed in Mule applications are no longer erased. |
DW-706 |
You can now disable the removal of self-referencing implicit variables. |
DW-893 |
DataWeave now allows mixed content structures (text and nodes) when reading and writing XML content. |
SE-21464 |
Functions in the |
DW-894 |
Improved the performance of splitting functionality. |
DW-776 |
Improved the performance of the JSON module. |
DW-706 |
For guidance with the patching process, see Apply Patch Updates.
What’s New
Mule 4.4.0 includes important enhancements and fixes.
Enhancements
-
Correlation ID Management
Mule 4.4 enables you to modify the correlation ID associated with a Mule event. You can also change the algorithm Mule uses to generate each correlation ID.
See Correlation ID for additional information and configuration instructions.
-
Improved Logging Capabilities
Mule 4.4 incorporates the Mule Tracing module, which you can use to add, remove, and clear variables from the logging context for a given Mule event.
See MDC Logging for additional information and configuration instructions.
-
Feature Flagging Mechanism
Mule 4.4 incorporates a feature flagging mechanism, which enables you to disable certain features that change core functionality in Mule to avoid backward compatibility issues.
The following are the feature flags introduced in this release and its corresponding fixed issue ID:
Feature Flag Issue ID HONOUR_RESERVED_PROPERTIES_PROPERTY
MULE-17659
HANDLE_SPLITTER_EXCEPTION_PROPERTY
DW-383
BATCH_FIXED_AGGREGATOR_TRANSACTION_RECORD_BUFFER_PROPERTY
MULE-19218
COMPUTE_CONNECTION_ERRORS_IN_STATS_PROPERTY
MULE-19020
TO_STRING_TRANSFORMER_TRANSFORM_ITERATOR_ELEMENTS_PROPERTY
MULE-19323
ENABLE_POLICY_ISOLATION_PROPERTY
MULE-19226
ENTITY_RESOLVER_FAIL_ON_FIRST_ERROR_PROPERTY
EE-7827
ENABLE_PROFILING_SERVICE_PROPERTY
MULE-19588
SET_VARIABLE_WITH_NULL_VALUE_PROPERTY
MULE-19443
See Feature Flagging for a detailed description of each feature flag and configuration instructions.
Fixed Issues
Mule Runtime Issue | ID |
---|---|
The tooling service in Anypoint Studio now properly propagates metadata for DataWeave Intersection types. |
SE-22333 |
Mule runtime engine uses the correct version of the disruptor. |
SE-19387 |
Fixed a metaspace memory leak in Anypoint Connector for Database (Database Connector). |
SE-15818 |
HTTP requests with OAuth now use a valid token. |
SE-15667 |
Console logs do not produce repeated log messages for the completion of a single batch job. |
SE-11533 |
Fixed the |
SE-13349 |
After a connection is re-established, SFTP files are now picked up properly. |
MULE-18294/SE-13897 |
In Azure Service Bus Connector, when a flow is stopped, the message listener now stops polling. |
SE-17389 |
API Manager now properly handles connection pool exhaustion and no longer shows APIs in |
SE-15351 |
Anypoint Connector for NetSuite (NetSuite Connector) no longer makes excessive |
SE-15200 |
An application no longer fails to deploy if it uses the same custom name space as an applied custom policy. |
SE-15056 |
Applications using Anypoint Connector for Database (Database Connector) under heavy load no longer show |
SE-14663 |
Mule no longer produces an exception related to class loading when the class exists as a dependency and is configured as a shared library. |
SE-14245 |
When an encoded slash is sent as the value of a URI parameter, the associated listener is now found. |
SE-14046 |
Mule 4 no longer fails to stream the complete payload to the client. |
SE-14012 |
The |
SE-13673 |
Proxies no longer experience outages during redeployment in Anypoint Runtime Fabric configured with two replicas and rolling update. |
SE-13596 |
DataWeave Issue | ID |
---|---|
Added the |
DW-16 |
Added the |
DW-162 |
Added a new |
DW-406 |
Added the constant folding functionality so that DataWeave replaces operations involving constant values with the actual result. For example, |
DW-427 |
Added flow retyping to the type system, which enables better accuracy within flow-control structures featuring checks that involve typing. |
DW-438 |
Added code inspectors so that quick fixes are suggested with best practices, such as replacing |
DW-33/DW-632 |
Added an inspection to replace |
DW-771 |
Improved error messages when creating Java objects. |
DW-565 |
Improved performance on floating point number parsing by identifying in advance if the number has a floating point or not. |
SE-20614 |
Extended the common subexpression elimination process to work with index selectors. |
SE-19934 |
Added functions that work with |
DW-425 |
Improved JSON performance by copying bytes from input to output directly during JSON-to-JSON data transformations. |
DW-230 |
Improved YAML support of scalar types, string quotations, custom tags, and comment retention. |
DW-687 |
Added the |
DW-160 |
Added validations for index tokens in CSV format. |
DW-577 |
Added support for the Java classes |
DW-628 |
Added support for |
DW-195 |
Added warning when using the design-time only format |
DW-873 |
Added experimental |
DW-170 |
Added the concept of optional function parameters in the type system. |
DW-874 |
Improved CSV streaming to avoid unnecessary processing. |
DW-876 |
Improved the |
DW-535 |
Improved the |
DW-509 |
Improved code validation. Now an error returns when a variable is using the same name as an input. |
DW-522 |
Improved the precision of math operations and added a property to retain the previous behavior: |
SE-16452 |
Improved handling of big XML files to fix potential I/O exceptions. |
DW-250 |
Fixed error locations when scripts feature dynamic string selectors. |
DW-875 |
Fixed a false negative error message when using multiple union types. |
DW-297 |
The |
DW-298 |
The |
DW-306 |
Processing of XML documents with comments and |
DW-307 |
DataWeave no longer fails to parse a single key-value pair with a conditional and parentheses. |
DW-309 |
The type system now validates overloaded functions as parameters. |
DW-316 |
Parallel processing on |
DW-325 |
Fixed a materialization and streaming failure. |
DW-368 |
Fixed the behavior of the |
DW-409/DW-410 |
Fixed the ability to import namespaces from external modules. |
DW-414 |
DataWeave now produces the error |
DW-415 |
DataWeave now properly validates that |
DW-416 |
Running |
DW-691 |
The |
DW-216 |
Improved handling of binary data to prevent running out of memory when calculating sizes of processed data. |
SE-16559 |
The |
SE-15487 |
Using nested binary functions no longer produces a |
SE-16092 |
DataWeave no longer returns |
DW-294 |
Fixed a potential |
DW-159 |
Added support for dumping Flat File and Avro schemas when |
DW-137 |
Improved code compilation. Implicit inputs are not added if a variable with the same name is explicitly defined. |
DW-630 |
Known Issues
Issue | ID |
---|---|
Mule AS2 Connector 5.x is not compatible with Mule 4.4. For any applications that use this version of the connector, upgrade the connector to the latest version available in Exchange. |
EE-8071 |
WSDL Proxies on version 1.1.1 and 1.1.2 are not compatible with Mule 4.4. Before you upgrade to 4.4, upgrade the WSDL Proxies to a newer version. |
EE-8070 |
Mule SAP Connector 5.3.4 is not compatible with Mule 4.4. For any applications that use this version of the connector, upgrade the connector to the latest version available in Exchange. |
EE-8061 |
Upgrade
If you are upgrading to Mule 4.4 from an earlier Mule 4.x version, see Upgrading Mule Runtime Engine (Versions 4.x to 4.n) for upgrade instructions.
To ensure optimal performance with Mule 4.4 and avoid unexpected issues, update the following modules and extensions to their latest version at the time of this release:
Module or Extension | Version |
---|---|
APIkit for Mule 4 |
1.5.5 |
APIkit for SOAP |
1.2.9 |
Spring module |
1.3.6 |
MUnit plugin |
2.3.6 |
Module Testing Framework (mtf-tools) |
1.1.1 |
Considerations for Mule Extensions Developers
If you update the version of your parent pom.xml
file to 1.4.0 or later when you build a Mule extension, ensure that the dependencies in your pom.xml
file do not override dependencies defined in the parent pom.xml
file and declare only the dependencies you need. If you need to declare a dependency that is already declared in the parent pom.xml
file, do not specify a version so it uses the version from the parent pom.xml
file.