Getting started Community Training Tutorials Documentation APIs, AI & Tools
The Log4j library is upgraded to 2.26.1.
Mule runtime engine (Mule) is a lightweight integration engine that runs Mule applications and supports domains and policies.
This version of Mule provides important enhancements and fixes. Deploy all your new and existing applications to the latest version to benefit from the improvements.
For guidance with the patching process, see Apply Patch Updates.
Runtime Manager agent:
This release of Mule runtime 4.12.4 includes Runtime Manager agent 2.8.5. See Runtime Manager Agent 2.8.5 Release Notes.
Patch release version: 4.12.4
This patch update addresses these Mule issues:
| Issue Resolution | ID |
|---|---|
The Log4j library is upgraded to 2.26.1. |
W-24061648 |
The Jackson library is upgraded to 2.22.3. |
W-24335732 |
The Netty library is upgraded to 4.2.18.Final. |
W-24336011 |
The Apache Neethi library is upgraded to 3.2.4. |
W-24335736 |
The Spring Framework library is upgraded to 7.0.9. |
W-24232049 |
Configuration property placeholder resolution now stops once it exceeds a maximum nesting depth, instead of continuing to recurse through a cyclic or excessively deep reference chain. You can configure the depth limit through the |
W-23650198 |
Reads from the repeatable streaming buffer are now lock-free when data is already available, reducing thread contention. You can control this behavior by using the |
W-24012839 |
Error-mapping preservation during error propagation can now be enabled through the |
W-23955755 |
OpenTelemetry flow-statistics counters now emit one datapoint per flow, labeled with the |
W-23616483 |
You can now configure a full request timeout for the HTTP server by using the |
W-22040113 |
Network information listening ports are now scoped to the Mule process. |
W-24043880 |
OpenTelemetry metrics export now supports delta aggregation temporality. |
W-23448781 |
|
W-24086656 |
Policy logging context is no longer lost when a dynamic Flow Reference resolves to a subflow. |
W-24026465 |
The new |
W-23998256 |
The log level for |
W-24164028 |
The OpenTelemetry exporter TLS property |
W-24009827 |
On CloudHub 2.0 and Runtime Fabric deployments, container logs exported through OpenTelemetry now correctly use the deployed application’s configured service name, instead of the generic |
W-23734353 |
OpenTelemetry flow statistics counters now report total flow counts as well as per-flow totals. |
W-23232729 |
The new on-demand |
W-23716301 |
Client-side read backpressure is now applied to streamed HTTP responses, preventing out-of-memory errors when consuming large response bodies. |
W-24103497 |
HTTP/1-only HTTPS listeners backed by the Netty HTTP service no longer fail to establish TLS connections when an application loads the Bouncy Castle JSSE provider from a shared library outside the runtime’s classloader. |
W-23355657 |
The Netty-based HTTP client now defers DNS resolution of the target host to the proxy when a proxy is configured, regardless of the configured scheme. |
W-24010245 |
A warning is now logged when NTLM authentication is configured but the server doesn’t issue an NTLM challenge. |
W-17651806 |
Unresolved placeholders in Batch AST properties no longer cause a |
W-24088827 |
In a clustered deployment, the DiscoverySPI HTTP client no longer fails to start when PCF or Kubernetes discovery is configured through the |
W-24211100 |
Fallback is now enabled as the default strategy for contracts collection. You can change this behavior by configuring the |
W-24179706 |
When API Gateway authenticates with Anypoint Platform, a transient failure of the |
W-24144244 |
Netty’s Java Flight Recorder (JFR) integration is now disabled by default. |
W-20926401 |
An omitted |
W-24043809 |
There is no DataWeave update for this version.
For guidance with the patching process, see Apply Patch Updates.
Runtime Manager agent:
This release of Mule runtime 4.12.3 includes Runtime Manager agent 2.8.4. See Runtime Manager Agent 2.8.4 Release Notes.
General improvements:
The Mule Troubleshooting plugin now includes additional diagnostic sections in the Diagnostic Information Analysis File (DIAF). See Mule Troubleshooting Plugin for more information.
Health Signals: Evaluates a small set of fast host- and JVM-level health signals and reports those that triggered, including low memory, high CPU steal, and JVM crash logs.
Memory Detail: Provides a JVM memory-pool breakdown and garbage-collector statistics, showing heap and non-heap usage with metrics such as initial, used, committed, and maximum memory values.
Known Issues: Scans the runtime logs and deployed applications for well-known problem signatures, including out-of-memory conditions, abnormal terminations, and MUnit packaging issues.
Patch release version: 4.12.3
This patch update addresses these Mule issues:
| Issue Resolution | ID |
|---|---|
An |
W-23602447 |
An SDK-based reconnectable message source no longer attempts to reconnect while a graceful shutdown is in progress. |
W-23122573 |
Custom error mappings in the Tracing module are no longer lost on error propagation when an operation inside a |
W-21815402 |
A disposed source policy is no longer left in the policy cache when a flow is stopped and restarted while cache population and flow-stop invalidation occur concurrently. |
W-23564125 |
A memory leak no longer occurs when |
W-23829061 |
Artifact descriptor validation failures during deployment now report more specific exceptions. |
W-23047228 |
A malformed authorization URL no longer occurs when the configured OAuth |
W-23064254 |
A worker thread no longer hangs indefinitely, eventually exhausting the runtime’s thread pool, when a client drops the connection while its HTTP request body is being read. |
W-23612974 |
Netty-based HTTP client requests no longer fail when the response contains a header section larger than 8 KB and a larger response header size limit is configured. |
W-23443375 |
DIGEST authentication in the Netty-based HTTP client no longer fails with a 401 Unauthorized response when the server issues an RFC 7616-compliant challenge. |
W-23075291 |
A |
W-23466789 |
Analytics events for requests rejected due to back-pressure are no longer incorrectly reported as HTTP 500 and now correctly report 503 by default. Custom status codes for other error scenarios can also be configured through the |
W-23509148 |
API Gateway no longer fails to read shard checksums from an ETag header that contains commas. |
W-23572494 |
The fix for idle connections being destroyed and recreated instead of reused when the number of idle connections reached the configured |
W-22716456 |
The jsoup library is upgraded to 1.23.1. |
W-23671475 |
The Netty library is upgraded to 4.2.17.Final. |
W-3300013 |
The RAML Parser library is upgraded to 2-1.2.1. |
W-23328350 |
The |
W-23846531 |
DataWeave 2.12.3 is bundled with the Mule 4.12.3 release. This patch release addresses these DataWeave issues:
| Issue Resolution | ID |
|---|---|
You can now configure the size of the DataWeave script parser cache by using the |
W-23138851 |
A thread-safety livelock no longer occurs in the Java module builder and converter caches. |
W-23652160 |
For guidance with the patching process, see Apply Patch Updates.
Runtime Manager agent:
This release of Mule runtime 4.12.2 includes Runtime Manager agent 2.8.3. See Runtime Manager Agent 2.8.3 Release Notes.
General improvements:
The Mule Troubleshooting plugin now includes additional diagnostic sections in the Diagnostic Information Analysis File (DIAF). See Mule Troubleshooting Plugin for more information.
Network Info: Shows host-level network diagnostics, including the hostname, network interfaces with their assigned IP addresses and I/O counters, and active and listening network connections.
Agent Info: Reports the installation and health of the Mule agent that pairs the runtime with Anypoint Platform, including whether the agent is installed, its version, key configuration values, keystore certificate details, and the most recent connection status.
Platform Connectivity: Checks TCP connectivity from the Mule runtime host to the Anypoint Platform endpoints and dumps the TLS certificate chain presented by the platform.
Patch release version: 4.12.2
This patch update addresses these Mule issues:
| Issue Resolution | ID |
|---|---|
Lazy initialization no longer fails with a |
W-23156632 |
Idle connections are no longer destroyed and recreated instead of being reused when the number of idle connections reaches the configured |
W-22716456 |
An HTTP request client connecting through a proxy no longer hangs when the proxy responds with a 407 (Proxy Authentication Required) response during the CONNECT tunnel handshake. |
W-23384719 |
The HTTP request client now sends a correctly formed request line when connecting through a forward proxy. |
W-23384645 |
A |
W-23384744 |
HTTP/3 requests sent to an HTTP/1 server now correctly fail with a 505 (HTTP Version Not Supported) response. |
W-23029577 |
Requests with a non-numeric |
W-23029480 |
A batch job no longer fails with a |
W-23426859 |
Potential errors thrown during runtime shutdown are now handled correctly. |
W-23051939 |
The Batch module now provides a public API to configure a custom queue manager and queue timeout. |
W-23371797 |
When running in FIPS mode on a standalone server, the runtime now logs a warning at startup if the JVM |
W-22794711 |
The |
W-23071781 |
The Diagnostic Information Analysis File (DIAF) now includes network information. |
W-22383655 |
The Diagnostic Information Analysis File (DIAF) now includes Mule agent information. |
W-22383660 |
The Diagnostic Information Analysis File (DIAF) now includes a platform connectivity check. |
W-22383679 |
The API Gateway resource cache is enabled by default. You can now disable it by setting the |
W-23542185 |
The Jackson library is upgraded to 2.22.0. |
W-23165634 |
DataWeave 2.12.2 is bundled with the Mule 4.12.2 release. This patch release addresses these DataWeave issues:
| Issue Resolution | ID |
|---|---|
The repeated attribute selector ( |
W-23457314 |
Type metadata processing now correctly handles sibling references that target the same type, preventing duplicate annotations. |
W-23424037 |
DataWeave now handles Java Platform Module System (JPMS) access restrictions more gracefully when running on Java 17 and later in Mule runtime 4.6.0 and later. |
W-23354139 |
The Jackson library is upgraded to 2.21.5. |
W-23037592 |
The |
W-22417507 |
For guidance with the patching process, see Apply Patch Updates.
Runtime Manager agent:
This release of Mule runtime 4.12.1 includes Runtime Manager agent 2.7.16. See Runtime Manager Agent 2.7.16 Release Notes.
Feature Flagging Mechanism:
Mule 4.12 incorporates new feature flags. See Feature Flagging Mechanism for a detailed description of each feature flag and configuration instructions.
General improvements:
The Mule Troubleshooting plugin now includes additional diagnostic sections in the Diagnostic Information Analysis File (DIAF). See Mule Troubleshooting Plugin for more information.
System Info: Reports host-level diagnostics including OS details, CPU metrics, memory, and disk input and output statistics.
JVM Agents: Lists agents attached at JVM startup via -javaagent, -agentpath, or -agentlib arguments.
Connectors State: Shows connector configuration states, connection pools, errors, and TLS details.
Cluster Info: Reports clustering configuration and distributed lock diagnostics.
Patch release version: 4.12.1
This patch update addresses these Mule issues:
| Issue Resolution | ID |
|---|---|
Clustered applications deployed with two or more replicas no longer fail to start with a |
W-22843942 |
Cluster node IDs are no longer generated with negative values. |
W-22294724 |
Graceful shutdown no longer times out when a global error handler runs for a flow. |
W-22434375 |
Long-running internal tasks no longer use the shared |
W-22279521 |
Race conditions in |
W-22343018 |
Mule no longer hangs during shutdown when a parameter validation exception occurs during flow execution. |
W-22248534 |
Connectivity testing of configurations in clustered deployments no longer uses distributed locks, preventing deadlocks. |
W-22248198 |
Fatal errors such as |
W-22496803 |
Object Store retrieved from the registry in |
W-22373641 |
SDK parameter validation errors now raise the |
W-22276522 |
|
W-21193046 |
The error type in the EE cache scope is now correctly reported as |
W-21525972 |
Test Connection for the HTTP listener now correctly reports a failure when an unresolvable hostname is configured in the host field. |
W-21921687 |
HTTP Server now supports upgrade requests to h2c even when the request contains a non-empty body. |
W-22506085 |
Duplicate XSD elements are no longer generated for connection providers declared at both the extension and configuration levels. |
W-20824537 |
Shutdown validation for dynamic configurations can now be skipped by enabling the |
W-22772644 |
Flows with a scheduler source are no longer left in an invalid state after a flow restart. |
W-22918240 |
Stopping a flow no longer waits unnecessarily when no events are being processed. |
W-22969411 |
Project versions defined with properties are now resolved recursively. |
W-22845430 |
Extension packager validation no longer fails for operations annotated with |
W-22817376 |
Events that are dropped within a processing hook are now properly completed and terminated. |
W-22470584 |
In-memory Object Store partitions are now created correctly when an application is deployed to a cluster with the Object Store plugin enabled. |
W-17714668 |
Deserialization errors no longer occur in the Object Store during a runtime patch upgrade. |
W-20880559 |
Applications deployed with a serialized AST now include all Mule error types in the error type repository. |
W-22399271 |
Applications that use HTTP request attributes no longer fail annotation processing due to default constructor validation. |
W-22385620 |
The Netty HTTP listener now rejects |
W-23052713 |
The maximum size of the dynamic |
W-22219018 |
API Gateway contract persistence can now be disabled by setting the |
W-22568982 |
Large Anypoint Platform authentication failure responses no longer cause excessive log bloat. |
W-21882516 |
SDK sources that don’t implement |
W-21563258 |
OpenTelemetry flow statistics now report metrics correctly for applications with more than one flow. |
W-23051614 |
The artifact type (domain, policy, or application) is now included as an OpenTelemetry resource attribute. |
W-21768636 |
OpenTelemetry metric attribute names now use a consistent notation. |
W-21921584 |
The |
W-22861497 |
Event dumps now include a state for events that are waiting on a non-blocking operation. |
W-22142952 |
The Netty library is upgraded to 4.2.15.Final. |
W-22831076 |
The c3p0 library is upgraded to 0.14.1. |
W-22990155 |
The Bitronix Transaction Manager library is upgraded to 3.0.2. |
W-22405007 |
The Reactor Netty library is upgraded to 1.3.6. |
W-3300013 |
The Jackson Core library is upgraded to 2.21.1. |
W-22839747 |
The Apache Neethi library is upgraded to 3.2.1. |
W-22839752 |
The OpenTelemetry API library is upgraded to 1.62.0. |
W-22849469 |
The Spring Framework is upgraded to 6.2.19. |
W-22939417 |
DataWeave 2.12.1 is bundled with the Mule 4.12.1 release. This patch release addresses these DataWeave issues:
| Issue Resolution | ID |
|---|---|
Scope resolution errors no longer occur when importing Java classes with self-referential array properties. |
W-22914494 |
|
W-21712344 |
For guidance with the patching process, see Apply Patch Updates.
The 4.12.0 version of Mule runtime introduces these enhancements:
OpenTelemetry Direct Telemetry Stream:
Mule 4.12 adds OpenTelemetry metrics support to Direct Telemetry Stream, including message processing, flow inventory, error tracking, runtime alerts, and JVM instrumentation metrics. See OpenTelemetry Support in Mule Runtime for a detailed description of the feature.
Feature Flagging Mechanism:
Mule 4.12 incorporates new feature flags. See Feature Flagging Mechanism for a detailed description of each feature flag and configuration instructions.
Runtime Manager agent:
This release of Mule runtime 4.12.0 includes Runtime Manager agent 2.7.15. See Runtime Manager Agent 2.7.15 Release Notes.
General improvements:
To build applications for Mule runtime engine 4.12.0, use Mule Maven Plugin 4.10.0 or later. See Mule Maven Plugin 4.10.0 Release Notes.
The 2.12.0 version of DataWeave introduces these new features and enhancements:
Scope Visibility:
DataWeave now supports private, internal, and @VisibleTo annotations for controlling directive access. This enables better code encapsulation and visibility management across DataWeave modules. See Scope Visibility in DataWeave.
Component Metadata:
DataWeave introduces dw::meta::Component and related component types for working with component descriptors. This provides enhanced metadata handling capabilities. See Component (dw::meta::Component) and Component Types (dw::meta::Component).
General Improvements:
The UNLIMITED_CONTEXT math variable now has the precision=0 and roundingMode=HALF_UP properties.
The Maven plugin for DataWeave now includes guidance for configuring cryptographic taint analysis during compilation.
The DataWeave extension plugin now provides editor support for scope visibility validation and diagnostics.
DataWeave incorporates new system properties. See DataWeave System Properties.
The release addresses these Mule issues and incorporates all patch updates from the 4.11.0 Mule release through June 2026:
| Issue Resolution | ID |
|---|---|
Upstream HTTP requests are now cancelled when a downstream client disconnects, preventing unnecessary data transfer. |
W-20084343 |
The Netty HTTP client no longer throws |
W-21513490 |
Sensitive headers are no longer forwarded when an HTTP request is redirected to a different host. This can be configured with |
W-21045658 |
The Apache CXF library is upgraded to 3.6.8. |
W-20541600 |
Cluster encryption now uses the configured algorithm correctly instead of defaulting to Blowfish. |
W-21666905 |
Race conditions during policy redeployment that caused Mule to stop processing events permanently no longer occur. |
W-22343705 |
Redelivery policy logging now includes additional context for troubleshooting. |
W-20636028 |
The Tanuki Java Service Wrapper is upgraded to 3.6.4. |
W-17051070 |
The RAML parser is upgraded to 1.1.10. |
W-21768014 |
The OpenTelemetry SDK is upgraded to 1.60.1. |
W-21808539 |
Persistent ObjectStore or Batch data serialized before a patch upgrade now deserializes correctly after upgrading. |
W-22623626 |
|
W-22547971 |
DataWeave 2.12.0 is bundled with the Mule 4.12.0 release. This release addresses these DataWeave issues:
| Issue Resolution | ID |
|---|---|
DataWeave now supports the |
W-21148967 |
|
W-21508044 |
The compiler now reports an error when overloads of the same function declare different visibility modifiers. |
W-21362539 |
|
W-20124753 |
Runtime errors no longer occur when invoking overloaded functions across modules. |
W-21811015 |
Spurious type-check errors no longer occur when an optional key-value pair is assigned to a required one. |
W-21351058 |
|
W-20925604 |
Out-of-memory errors no longer occur when reading large text or CDATA sections with the indexed XML reader. |
W-21006104 |
The Java module bean introspection cache no longer causes memory leaks. |
W-22419118 |
DataWeave version 2.12.0
Runtime Manager Agent plugin version 2.7.15
If you’re upgrading to this version of Mule from an earlier Mule 4.x version, see Mule Upgrades and Patch Updates.
To ensure optimal performance with this version of Mule and avoid unexpected issues, update these modules and extensions to their latest version at the time of this release:
| Module or Extension | Version |
|---|---|
APIkit for Mule 4 |
1.11.17 |
APIkit for OData |
2.4.0 |
APIkit for OData 4 |
1.6.0 |
APIkit for SOAP |
2.1.0 |
APIkit for GraphQL |
1.2.0 |
Spring module |
2.1.2 |
MUnit plugin |
3.7.1 |
When you build a Mule extension, if you update the version of your parent pom.xml file to 1.4.0 or later, ensure that the dependencies in your pom.xml file don’t override dependencies in the parent pom.xml file. Declare only the dependencies you need. If you declare a dependency that’s already in the parent pom.xml file, don’t specify a version, so that it uses the version from the parent pom.xml file.