Mule Runtime Engine 4.12.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.

August 2026

What’s New

Runtime Manager agent:

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.

Fixed Issues

Patch release version: 4.12.2

This patch update addresses these Mule issues:

Issue Resolution ID

Lazy initialization no longer fails with a NullPointerException when an application using the VM connector’s publish operation also configures a global error handler.

W-23156632

Idle connections are no longer destroyed and recreated instead of being reused when the number of idle connections reaches the configured maxIdle limit under concurrent load.

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 NullPointerException no longer occurs when the HTTP request client reuses a pooled connection to a forward proxy.

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 Content-Length header are now rejected with a 400 (Bad Request) response.

W-23029480

A batch job no longer fails with a MULE:CANCELLED error during graceful shutdown.

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 java.security file isn’t configured with the required FIPS providers, instead of silently masking the misconfiguration.

W-22794711

The Sec-WebSocket-Protocol header is now forwarded on outbound WebSocket connections, so subprotocol negotiation with the server succeeds.

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 anypoint.platform.resource_cache_enabled system property to false.

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 (.*@) now correctly preserves values when processing data structures containing empty map slots.

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 per_app_java_bean_cache compatibility flag now correctly reports its creation version as 2.9.

W-22417507

For guidance with the patching process, see Apply Patch Updates.

July 2026

What’s New

Runtime Manager agent:

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.

Fixed Issues

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 NullPointerException error during cluster node discovery.

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 forkJoin pool during parallel flow shutdown and bootstrap configuration, preventing thread starvation.

W-22279521

Race conditions in outerFluxCompletionScheduler no longer occur during graceful shutdown.

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 StackOverflowError are now logged instead of being consumed by internal error handling.

W-22496803

Object Store retrieved from the registry in OAuthHandler is now properly initialized and started.

W-22373641

SDK parameter validation errors now raise the MULE:VALIDATION error type instead of MULE:UNKNOWN.

W-22276522

ConcurrentModificationException errors no longer occur when multiple plugins with shared dependencies are deployed simultaneously.

W-21193046

The error type in the EE cache scope is now correctly reported as MULE:RETRY_EXHAUSTED instead of EE:RETRY_EXHAUSTED when until-successful exhausts its retries.

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 mule.forcefulShutdown.dynamicConfig.disableStoppingCheck system property.

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 @Validator that use a CompletionCallback operation.

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 HTTP/1.1 requests that have a missing or duplicate host header, in compliance with RFC 9112.

W-23052713

The maximum size of the dynamic flow-ref cache is now configurable through the mule.flowRef.dynamicCacheMaxSize system property, which defaults to 20.

W-22219018

API Gateway contract persistence can now be disabled by setting the anypoint.platform.contracts_persistence_enabled system property to false, avoiding errors when persisting large numbers of contracts.

W-22568982

Large Anypoint Platform authentication failure responses no longer cause excessive log bloat.

W-21882516

SDK sources that don’t implement Reconnectable are no longer restarted during graceful shutdown.

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 mule.openTelemetry.logging.exporter.resource.container.service.name system property is now available to set the service name that the Mule container reports for OpenTelemetry telemetry.

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

StackOverflowError errors no longer occur when computing or converting type metadata for self-referencing recursive types.

W-21712344

For guidance with the patching process, see Apply Patch Updates.

June 2, 2026

What’s New

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:

General improvements:

DataWeave Features

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:

General Improvements:

Fixed Issues

The release addresses these Mule issues and incorporates all patch updates from the 4.12.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 NullPointerException when handling Expect 100-Continue responses.

W-21513490

Sensitive headers are no longer forwarded when an HTTP request is redirected to a different host. This can be configured with FILTER_SENSITIVE_HEADERS_ON_REDIRECT.

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

OutOfMemory errors no longer occur when establishing SSL connections with HTTP endpoints.

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 private modifier on fun, var, ns, and type declarations to hide them from importers.

W-21148967

internal is no longer a reserved word and can now be used as an identifier in DataWeave scripts.

W-21508044

The compiler now reports an error when overloads of the same function declare different visibility modifiers.

W-21362539

StackOverflowError no longer occurs in the type checker when resolving intersections of unbound type parameters.

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

deferred values passed to the write function now terminate correctly.

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

Bundled Components

  • DataWeave version 2.12.0

  • Runtime Manager Agent plugin version 2.7.15

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

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.