Contact Us 1-800-596-4880

Mule Runtime Engine 4.11.0 Release Notes

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.

February 4, 2026

What’s New

The 4.11.0 version of Mule runtime introduces these enhancements:

Batch Errors Handling:

  • Mule 4.11 introduces a new way to handle batch errors. Batch processing now captures record-level failures as BatchError objects that provide structured access to error details through DataWeave. To access BatchError fields, your application must use minMuleVersion 4.10 or later, or you must set the com.mulesoft.dw.java.enabled_class_definition_lookup=true system property. See Batch Errors for more information.

OpenTelemetry Direct Telemetry Stream:

  • You can now export OpenTelemetry traces and logs directly from Mule runtime to a customer-managed OpenTelemetry collector by using the Direct Telemetry Stream. This feature enables standards-based observability outside Anypoint Monitoring, supports log and trace correlation, configurable sampling and backpressure strategies, and secure transmission with mTLS. See OpenTelemetry Support in Mule Runtime for more information.

Feature Flagging Mechanism:

  • Mule 4.11 incorporates new feature flags. See Feature Flagging Mechanism for a detailed description of each feature flag and configuration instructions.

Runtime Manager agent:

General improvements:

DataWeave Features

The 2.11.0 version of DataWeave introduces these new features and enhancements:

Streaming and Memory Efficiency:

Lazy Variable Materialization:

  • Variables are now materialized independently and only when needed. This reduces unnecessary memory usage and improves performance, especially in complex transformations with multiple variables.

Enhanced try Function Behavior:

  • The try function now performs eager materialization of its execution scope. This ensures that all expressions inside the try block are executed and that any errors are properly caught during execution.

General improvements:

  • DataWeave libraries are now precompiled during service startup, reducing warm-up time and improving first-execution performance.

  • Memory usage during DataWeave parsing and compilation is now optimized, resulting in a smaller overall memory footprint for applications using DataWeave.

  • DataWeave incorporates new system properties. See DataWeave System Properties.

Fixed Issues

The release addresses these Mule issues and incorporates all patch updates from the 4.11.0 Mule release through January 2026:

Issue Resolution ID

HTTP/2 connections now correctly multiplex when processing concurrent requests, reducing connection creation and latency.

W-19860076

The runtime now leverages the AST file for applications with the until-successful component instead of parsing configuration XML files.

W-20283146

Batch record deserialization no longer fails when a Netty exception occurs.

W-20552358

Inbound HTTP/2 header validation is now improved.

W-19873453

The org.apache.logging.log4j:log4j-core dependency is upgraded to 2.25.3.

W-20679050

DataWeave 2.11.0 is bundled with the Mule 4.11.0 release. This release addresses these DataWeave issues:

Issue Resolution ID

AST scope navigation now works correctly for cross-file references when using the Tooling API.

W-20212809

A specific overload for isEmpty on binaries is now available to prevent implicit coercion to other types.

W-20049958

Materialized Java values are now cached to allow multiple executions using the same value.

W-20091279

Semantic tokens are now supported in the Tooling API.

W-19846990

NullPointerException no longer occurs when handling annotation types.

W-19853000

LogLevel documentation is now included directly in the code.

W-17800393

The commons-beanutils library is upgraded.

W-3300013

Base64 encoding and decoding now support payloads larger than memory.

W-18575719

Eager materialization is now supported on values, enabling caching of all exceptions inside the try function.

W-19717874

Avro enum, map, union, and fixed types are now supported as top-level elements.

W-19596039

WeaveCompiler now allows precompiling mappings and modules without validation or type checking.

W-19667273

Type check errors are now correctly reported when resolving type checking on subgraphs.

W-19564697

Lazy loading of source files is now enabled during binary compilation, avoiding unnecessary memory usage.

W-19594703

Type inference now works correctly when using the -- operator to subtract a key from an object.

W-19595907

Warning and error messages now propagate correctly between compilation phases.

W-19386849

Base types are now used to validate accepted values, preventing premature materialization.

W-18943395

Optional types now propagate correctly through chains of value selectors.

W-19272070

The syntax version is now added to TypeGraph and WeaveTypeResolution.

W-19271992

The classloader resource resolver now resolves paths correctly on Windows systems.

W-19407283

Bundled Components

  • DataWeave version 2.11.0

  • Runtime Manager Agent plugin version 2.7.9

Upgrade

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.10

APIkit for OData

2.3.4

APIkit for OData 4

1.5.4

APIkit for SOAP

1.6.7

APIkit for GraphQL

1.1.1

Spring module

2.1.1

MUnit plugin

3.6.3

Considerations for Mule Extension Developers

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.