Contact Us 1-800-596-4880

Mule Runtime 4.3.0 Release Notes

Initial Release: April 30, 2020

Mule 4.3.0 includes enhancements, changes, fixes, and patch update releases. This release is also focused on implementing several performance upgrades.

April 2024

Patch release version: 4.3.0-20240408

This patch update addresses the following issues:

Description Issue

Spring is upgraded to 5.3.33.

W-15260752

Explicit socket connection timeout for socket creation with the management plane no longer occurs.

W-14555248

Template parser validation is now improved.

W-15141905

There is no DataWeave update for this version.

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

November 2023

Patch release version: 4.3.0-20231026

This patch update addresses the following issues:

Description Issue

The org.apache.santuario:xmlsec library is upgraded to 2.3.4.

W-14358602

Multiple redeployments of applications linked to a domain project sharing IBM MQ Connector now works as expected.

W-12388528

OutOfMemoryError no longer occurs after multiple redeployments of applications with Scripting module and Groovy.

W-13038823

There is no DataWeave update for this version.

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

July 2023

Patch release version: 4.3.0-20230616

This patch update addresses the following issues:

Description Issue

Kryo is upgraded to version 4.0.3.

W-13499198

The java.lang.NullPointerException error no longer appears while refreshing an OAuth token.

W-12975498

There is no DataWeave update for this version.

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

May 2023

Patch release version: 4.3.0-20230417

This patch update addresses the following issues:

Description Issue

Added a new method for CoreServiceClient.

W-12659177

This release displays the policy definition version.

W-12733032

There is no DataWeave update for this version.

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

April 2023

Patch release version: 4.3.0-20230320

This patch update addresses the following issues:

Description Issue

Added Groovy to the default allowed scripting languages for logging.

W-12708905

Second Scatter Gather router does not execute when it has a Try scope for each component that raises an error handler within.

W-10619784

Parallel For Each gets stuck with global Error Handler operation.

W-12556497

Transactions in nested Try scope with global Error Handling.

W-12671732

Combinations of First Successful router and Raise Error component no longer causes executions to hang.

W-10619792 / MULE-19874

There is no DataWeave update for this version.

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

March 2023

Patch release version: 4.3.0-20230217

This patch update addresses the following issues:

Description Issue

DB Connector’s prepareArray and preparaStruct functions now work as expected when using them inside of a Scatter-Gather.

W-11932094

Requests no longer fail with NullPointerException: value with applications referencing a global Error Handler.

W-12535932

Log4j scripting now supports Nashorn languages by default.

W-12549148

This release updates snakeyaml to version 1.33.

W-12429030

This release updates org.json:json to version 20220924.

W-12450128

There is no DataWeave update for this version.

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

February 2023

Patch release version: 4.3.0-20230123

This patch update addresses the following issues:

Description Issue

Applications with an XML SDK connector now deploy correctly.

W-12362157

The Error Handler now contains the Event Id and Processor when handling issues from an HTTP Requester.

W-12245765

WSC connector with an HTTP Requester configuration no longer fails when using a domain project.

W-12407839

This release upgrades the log4j dependency to version 2.19.

W-12353442

This release upgrades the org.apache.cxf:cxf-core library to version 3.5.5.

W-12354020

This release upgrades the`com.hazelcast:hazelcast` dependency to version 3.12.13.

W-12354026

CloudHub applications no longer fail when using Global Error Handlers with a default configuration.

W-12218381

The insecure connection configuration in the TLS Configuration truststore now works as expected.

W-10822938

You can now start Mule in FIPS mode using any security provider.

W-12060316

There is no DataWeave update for this version.

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

January 2023

Patch release version: 4.3.0-20221212

This patch update addresses the following issues:

Description Issue

Distributed locks are now released properly when a policy is disabled.

W-11929632

The error Can’t perform operation on 'Object_store'. ObjectStore not initialized no longer occurs when a redelivery policy that points to an object store is declared as a top level element.

W-11985583

Setting a variable with a null value inside a Batch Aggregator component no longer fails with a NullPointerException.

W-11825409

The use of HTTP Insecure mode in a connector no longer fails with a NullPointerException.

W-12049036

The Idempotent Validation filter now cascades object store exceptions. Using the filter on Mule version 4.4 or earlier requires the property mule.rethrowExceptionsInIdempotentMessageValidator=true.

W-11529823

The XML SDK’s implicit configuration creation is disabled by default.

W-12113550

The Tanuki wrapper is upgraded to 3.5.51.

W-12068528

DataWeave 2.3.0 is bundled with the Mule 4.3.0 release. This patch release addresses the following DataWeave issues:

Description Issue

The FlatFile module now provides a reader property, retainEmptyStringFieldsOnParsing, for handling fields that lack values. When set to true, this property makes the reader retain these fields and set their values to an empty string. The default behavior of the reader is to remove those fields.

W-12036336

Data payloads without line breaks no longer work when using lenient as the recordParsing property. The other options to recordParsing support records that lack line breaks. noTerminator is preferred for fixed-length records that lack a line break.

W-12472890

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

November 2022

November patch update 4.4.0-20221111 addresses a regression in the previous November patch update, 4.4.0-20221026, and includes the fixes in that patch.

Patch 4.3.0-20221111

Patch release version: 4.3.0-20221111

This patch update addresses the following Mule issues:

Issue Resolution ID

Using the insecure="true" attribute of the trust-store no longer throws NullPointerException.

W-12049036

There is no DataWeave update for this version.

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

Patch 4.3.0-20221024

Patch release version: 4.3.0-20221024

This patch update addresses the following issues:

Issue Resolution ID

Applications that depend on a domain to load resources no longer fail with a "Couldn’t find resource: neither on classpath or in file system" error.

W-11625237

The insecure="true" attribute of the trust-store config is now honored when additional properties are defined. Use the system property mule.honour.insecure.tls.configuration=true to apply this behavior in Mule 4.4 or earlier.

W-10822938

Error mapping is no longer executed when an error occurs inside of an operation policy.

W-11861168

To avoid XML SDK implicit configuration creation, this release adds the system property mule.disableXmlSdkImplicitConfigurationCreation=true.

W-10634129

Transactions now honor the Transaction Timeout configured in the Try scope.

W-11741912

In API Gateway, SLA deletion no longer generates an inconsistent contract status.

W-11898295

DataWeave 2.3.0 is bundled with the Mule 4.3.0 release. This release includes only non-user-impacting changes.

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

October 2022

Patch release version: 4.3.0-20220922

This patch update addresses the following issues:

Description Issue

Improved memory consumption when using global error handler.

W-11503016

HTTP connections no longer have a leak that prevents new connections from opening.

W-11622837

TransactionTimeout is now set correctly on XA Transactions, preventing stale connections.

W-11741912

Improved the compatibility of SQLServer when using XA Transactions with Bitronix.

W-11228596

DataWeave 2.3.0 is bundled with the Mule 4.3.0 release. This patch release addresses the following DataWeave issues:

Description Issue

The Could not read from file store caused by Negative seek offset error no longer occurs when transforming big XML files.

W-11620006

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

September 2022

Patch release version: 4.3.0-20220824

This patch update addresses the following issues:

Description Issue

Tanuki wrapper upgraded from 3.5.45 to 3.5.50 to support M1 (ARM) architecture.

W-11242363

Applications no longer fail to start with a Prefix URI must be not blank error.

W-11627710

XML SDK modules now support implicit configurations.

W-10634129

Log levels for successful source reconnections are now set to INFO.

W-11437305

Expired access tokens now refresh on connectors using OAuth2.

W-11535924

There is no DataWeave update for this version this month.

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

August 2022

Patch release version: 4.3.0-20220725

This patch update addresses the following issues:

Description Issue

Global Error Handler configurations no longer roll back transactions that should not roll back.

W-11324530

CXF is upgraded to version 3.5.1.

W-11267666

Mule no longer duplicates lifecycle phases for global Error Handler configurations.

W-11117613

Mule runtime no longer produces the following warning: An expression value was given for parameter 'variableName' but it doesn’t support expressions".

W-10998630

Caching issues no longer cause a policy to use data from the wrong operation and produce Element and Element DSL mismatches with the flow stack.

W-11403067

A memory leak no longer occurs when using JMS Connector with ActiveMQ.

W-10583584

Error mapping now works while deploying a custom Header Injection policy.

W-11147961

There is no DataWeave update for this version this month.

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

July 2022

Patch release version: 4.3.0-20220622

This patch update addresses the following issues:

Description Issue

Spring upgraded from 5.3.18 to 5.3.21.

W-11300535

Jackson upgraded to 2.13.3.

W-11139348

DataWeave 2.3.0 is bundled with the Mule 4.3.0 release. The July patch release addresses the following DataWeave issues:

Description Issue

This releases fixes Avro property handling.

W-11324418

The DataWeave Avro module now correctly converts logical types.

W-10981989/SE-16167

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

June 2022

Patch release version: 4.3.0-20220523

This patch update addresses the following issues:

Description Issue

File attributes are no longer removed when using Parallel For Each.

W-10848628

FIPS enabled Mule Clusters no longer throw a java.nio.BufferUnderflowException warning when using the RetrieveAll operation on an Object Store.

W-10884325

The AS400 connector now properly receives a JSON response instead of org.mule.runtime.core.internal.util.message.stream.UnclosableCursorStream.

W-11093225

Added logging to AbstractQueueStoreDelegate to describe why a record was not successfully queued.

W-11086587

Updated the error message shown when a Batch component cannot queue records.

W-11086577

Mule now raises an ExceptionNotification error when ExtensionMessageSource fails to start.

W-10619908

Mule applications no longer crash due to an unhandled IllegalStateException error when processing a batch block.

W-10742153

Mule now fails as expected if the event source configuration for the application is incorrect.

W-10619908

Upgraded Spring dependency from 5.1.20 to 5.3.18.

W-10989650

Mule application deployment properties are no longer lost after domain redeployment.

W-10984029

A memory leak no longer occurs after redeploying multiple times an application that uses the IBM MQ connector.

W-10672197

DataWeave 2.3.0 is bundled with the Mule 4.3.0 release. The June patch release addresses the following DataWeave issues:

Description Issue

The FlatFile module now includes the allowLenientWithBinaryNotEndElement property to support existing behavior.

W-10935528

DataWeave no longer throws exceptions when using the default operator with fromBase64.

W-10648825

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

April 2022

Patch release version: 4.3.0-20220321

This patch update addresses the following issues:

Description Issue

Race conditions no longer occur when running parallel deployments.

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

This patch update addresses the following issues:

Description Issue

Set-Cookie is now handled correctly after a redirect request.

W-10667146 / MULE-19942

When disposing of an application, Mule no longer throws an IOException error indicating that the underlying JAR file is in use.

W-10674462 / SE-23775

After a failed HTTP request, applications no longer stop when reading the error payload in the error handler.

W-10681471 / MULE-19537

LifecycleObjectSorter and dependency resolvers implemented in this release reduce application deployment time.

W-10745606 / W-10746226 / 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

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

February 2022

Patch release version: 4.3.0-20220124

This patch update addresses the following 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.

SE-22948/SE-22585

Running multiple MUnit cases together no longer causes a No bean named '_muleDefaultObjectSerializer' available error.

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

Mule no longer returns an incorrect CONNECTIVITY error type when a ConnectionException is thrown when using the Java SDK.

MULE-19895/SE-24091

Mule no longer performs a thread switch in a transactional context that uses multithread and the same cache-key.

EE-8216/SE-23816

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.3.0 is bundled with the Mule 4.3.0 release. The February patch release addresses the following DataWeave issues:

Description Issue

Corrected the documentation for the Periods::between function.

DW-1070

Upgraded the edi-parser with SLF4J.

CONN-9598

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

January 2022

Patch release version: 4.3.0-20211222

This patch update addresses the following issues:

Description Issue

The FlowProcessMediator no longer leaks the payload of the first request.

MULE-19869

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

MUnit tests now initialize object stores inside redelivery policies.

MULE-19928/SE-20765

Autogenerated Mule connectors no longer fail with NumberFormatException errors.

MULE-19871/SE-21463

Applications that implement a VM Listener source no longer raise java.lang.IllegalStateException: No connection has been bound errors and quit.

SE-22172

This releases fixes performance issues with the Web Service Consumer connector when deployed in CloudHub.

SE-22245

You can now redeploy applications that were in a stopped state when they were deleted.

MULE-19890/SE-22261

DataWeave now escapes the \ symbol when used in combination with the " symbol.

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

When a source is configured to use transactions, and the message ID for the redelivery policy is blank or null, the source no longer fails to find the redelivery attempts counter.

MULE-19921

You can now use the inline string array parameter on operations defined with the Mule XML SDK.

MULE-19853

Kryo updated to version 4.0.2.

EE-8153

Apache Velocity updated.

EE-8010

MUnit no longer fails with a RejectedExecutionException error.

SE-22728

Scheduler runs using cron expressions are no longer rejected if other scheduler components are under back pressure.

SE-22941

An issue that caused a No qualifying bean of type 'org.mule.extensions.java.internal.cache.JavaModuleLoadingCache' available error no longer occurs.

MULE-19896/SE-23142

A performance degradation related to processing parallel requests for applications deployed to the latest Mule runtime version in Runtime Fabric no longer occurs.

EE-8150/SE-23510

The JMS Connector no longer leaks connections and now honors connection pools in XA mode with Solace JMS.

MULE-19848/SE-22284

DataWeave 2.3.0 is bundled with the Mule 4.3.0 release. The January patch release addresses the following DataWeave issues:

Description Issue

DataWeave now shows the root cause of an error when an exception occurs while reading an input.

SE-22939

This release resolves an OutOfMemory error when using the writeLinesWith function, which affected the ndjson module.

SE-23759

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

November 2021

November patch update 4.3.0-20211104 addresses a regression in the previous November patch update, 4.3.0-20211026, and includes the fixes in that patch.

  • If you installed the previous November patch, 4.3.0-20211026, install patch 4.3.0-20211104 to address the regression.

  • If you did not install the previous November patch, 4.3.0-20211026, skip that patch, and install the new patch, 4.3.0-20211104.

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

Patch release version: 4.3.0-20211104

This November update addresses a regression introduced in the previous November patch, 4.3.0-20211026:

Description Issue

QueryParams are no longer lost when HTTP redirects take place.

MULE-19811

Addressed a regression in the initial November patch update.

SE-23349

Patch 4.3.0-20211026

Patch release version: 4.3.0-20211026

Skip this patch, and install a later patch. Fixes in this patch are included in later patches.

This November patch update addresses the following issues:

Description Issue

The CachedConnectionProvider no longer returns the same connection to a source if sourceCallback.onConnectionException(e) is called.

MULE-19678/SE-21176

Fixed NullPointerException handling when serializing or transforming Mule errors from the Until Successful component.

MULE-19811/SE-20502

Fixed a ClassCastException that occurred in the Avro module by correcting its generated MIME type.

SE-21869

An issue with nesting referenced Flow Reference components no longer occurs.

MULE-19831/SE-22539

Fixed a memory leak in org.mule.runtime.core.internal.rx.FluxSinkRecorder.

MULE-19846/SE-22780

Applications now start correctly after the September patch update is applied.

MULE-19815/SE-22845

Caffeine cache now correctly processes large payloads with a VM queue.

MULE-19869/SE-22773

The Scheduler component no longer causes intermittent deployment failures.

MULE-19774/SE-22851

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.3.0 is bundled with the Mule 4.3.0 release. The November patch release addresses the following DataWeave issues:

Description Issue

Fixed a ClassCastException that occurred in the Avro module by correcting its generated MIME type.

SE-21869

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

October 2021

Patch release version: 4.3.0-20210915

To include updated patching instructions, the patch update for the standalone version of Mule was republished as mule-ee-patch-4.3.0-20210915-HF1-OCTOBER.zip in your customer portal.

The October patch update addresses the following issues:

Description Issue

Metadata now resolves correctly for components with multi-level keys.

MULE-19740/SE-22356

When using the #[flow.name] value in a Set Variable component, Mule now correctly recognizes flow.name.

MULE-19732/SE-20384

Applications now continue correctly when a dynamic flow reference resolves to non-existent flow.

MULE-19742/SE-20838

Mule runtime engine no longer stops accepting requests after a No listener error occurs.

MULE-19533/SE-20958/SE-21576

Applications that include the Dynamic Evaluate component in a sub-flow now deploy correctly.

EE-8018/SE-21777

Introduced a new mechanism for collecting API gateway usage statistics, which defaults to enabled.

To opt out, include anypoint.platform.metrics_enabled=false in wrapper.conf or as a parameter when starting Mule.

AGW-4823

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

September 2021

Patch release version: 4.3.0-20210823

The September patch update adddresses the following issues:

Issue Description

MULE-19707/SE-22200

Fixed an issue that caused some applications and connectors to become unresponsive due to a NullPointerException error.

MULE-19620/SE-21555

Applications now properly release resources allocated by the IBM MQ connector when the application stops.

MULE-19699/SE-21576

Fixed a race condition occuring during parallel deployments that caused deployments to fail.

MULE-19684/SE-22043

Fixed a default error handling issue in the error handler.

MULE-19680/SE-22129

Mule now masks sensitive data and secure properties (e.g. master password) in logs and UI.

MULE-19498

SDK: The @Export annotation now works with the Enum type.

MULE-19624/SE-21593

Restarting an on-premises Mule application with flows with initialState=stopped no longer leaks memory.

SE-21685/EE-7995

Fixed error conditions and messages for MUnit tests.

MULE-19562 /SE-21626

Fixed NullPointerException errors on nested VM Transactions.

MULE-19691/SE-21658

Closing the connection now works correctly if a timeout occurs when an empty payload is sent.

MULE-19622/SE-19944

When handling redirect responses, Mule no longer becomes unresponsive.

SE-21417

DataWeave Flatfile: Added the reader and writer property useMissCharAsDefaultForFill for the flat file format. When this property is set to true, DataWeave uses the fill character configured in the missingValues property to trim or pad elements. If useMissCharAsDefaultForFill is set to false, DataWeave uses the space character.

SE-22171

DataWeave: The distinctBy function now works as expected when used with mapObject or filter.

SE-21050

DataWeave: Fixed an issue that showed an internal exception instead of the expected InvalidUrlEncodingException error message.

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

August 2021

Patch release version: 4.3.0-20210719

The August patch update adddresses the following issues:

Issue Description

MULE-19586/SE-21826

Introduces a mule.setVariable.WithNullValue=true property for the Set Variable component, which enables you to create a Mule variable with a null value. In Mule 4.4, this behavior will be the default.

MULE-19485/SE-21019

Incorrect status codes and error descriptions no longer occur when using policies.

EE-7907/SE-20588

Improves the handling of XA transactions when using Anypoint Connector for IBM MQ by fixing the error bitronix.tm.internal.BitronixSystemException - cannot delist an XAResourceHolderState.

EE-7890/SE-20153

Errors from a Batch Aggregator scope are now available within the Batch Step that handles errors.

SE-21198

DataWeave: Introduces a reader property (defaultContentType) and a system property (com.mulesoft.dw.multipart.defaultContentType) to change the default Content-Type for multipart parts.

SE-21632

DataWeave: Temporary files created during the Excel streaming process are now deleted.

SE-21585

DataWeave: Addresses the presence of big objects that are pending finalization.

SE-21873

DataWeave FlatFile: Fixes end-of-input data detection when Copybook structures have multiple segments with repeated composite and element components.

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

July 2021

Patch release version: 4.3.0-20210622

The July patch update adddresses the following issues:

Issue Description

MULE-19226/SE-16379

When deploying policies that use extensions (such as connectors) that are also used in the target application, NoSuchBeanDefinitionException errors are no longer thrown.

MULE-19512/SE-20259

The Anypoint Studio 7.8 debugger no longer stops working unexpectedly when an error occurs in the flow execution.

MULE-19471/SE-20711

The Propagating completion default log level changed from WARN to DEBUG.

MULE-19431

If they are in the same scope or in a nested scope, you can now properly chain transaction interceptors that have different transactionalAction values.

MULE-19290

The initialization policy for pooling profiles now honors the selected option, and no longer initializes to none in all cases.

MULE-19430/SE-20576

Two or more nested XA (Extended Architecture) transactions no longer fail with NullPointerException errors.

MULE-19443/SE-20938

The Set Variable component now creates a variable when the value is null.

SE-20940

The contracts database for API Gateway now self-recovers after experiencing a Wrong index checksum or other errors.

MULE-19418/SE-20254

When the Anypoint Connector for AMQP (AMQP Connector) experiences connectivity errors, transactions are now rolled back, as expected.

SE-19983

DataWeave has improved error reporting for recursive imports.

SE-21133

DataWeave 0x025(LF) byte conversion for IBM037 encoding now works as expected.

SE-20880

DataWeave flat files now contain the property notTruncateDependingOnSubjectNotPresent to avoid truncating the group-item when the subject is not present or the length of the subject of an OCCURS clause is zero. Earlier versions contained this property.

SE-20878

DataWeave no longer raises Negative Index Exception errors when processing JSON files over 10 GB.

MULE-19442

Input stream parameters on a Parameter Group with showInDsl=true now resets after refreshing an expired OAuth token.

MULE-19426/SE-20477

Anypoint MQ connectors are now available in flows after non-transactional MQ publish operations to preserve backwards compatible behavior with Mule 4.2.

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

June 2021

The following notification applies to each patch release in June.

The default for the DataWeave XML reader property supportDtd changes to false in this release. The new default is described in fixed issue DW-377.

This change affects Mule versions 4.3.0 for on-premises Mule, CloudHub, and other hosted or embedded runtimes, including Anypoint Runtime Fabric and Anypoint Studio. Future patches to these releases and future minor releases of Mule will also incorporate the new default.

To address this change, see Change of Behavior with DataWeave Functionality on May 4, 2021. (Version 4.3.0 changed behavior in June. Versions 3.9.5, 4.1.6, and 4.2.2 changed in May.)

The June update 4.3.0-20210609 addresses the following issues:

Issue Description

SE-20497

DataWeave: A StackOverflow error no longer occurs when concatenating arrays.

SE-20846

DataWeave: Applications that use multiple ++ operators no longer fail to deploy.

The June update 4.3.0-20210601 addresses the following issues:

Issue Description

MULE-19282/SE-17938

Deployments now take into account Maven profiles defined in the pom.xml file, preventing errors due to dependencies not loaded correctly, such as Cannot load class oracle.jdbc.driver.OracleDriver.

MULE-19328/SE-19407

EVENTS_ACCUMULATED error no longer occur after an application restart that caused app’s schedulers to stop working.

MULE-19319

A For Each scope that points to a Flow Reference component using max-concurrency no longer gets stuckt.

MULE-19315/SE-19762

The connector Reconnection Strategy is now correctly honored when running in debugging mode.

MULE-19220/SE-19580

Logging context entries are now propagated correctly to asynchronous SDK operations.

MULE-19297/SE-19166

Streams are no longer closed when consumed inside of a scope.

MULE-19279/SE-15347

Binary payloads are no longer corrupted when using VM queues.

MULE-19289

Logging now includes the original exception when managing reconnection scenarios.

MULE-19291/SE-20299

The timestamp reported by XA Bitronix Transaction is now output correctly.

MULE-19406

The system property name mule..enableStreamingStatistics was corrected to mule.enableStreamingStatistics.

MULE-19342/SE-20247

Scheduler jobs no longer get stuck due to a race condition.

SE-20356

Connection pool now behaves as expected when using a reconnection strategy or using #[] expressions in the connector config element.

MULE-19356/SE-20465

Mule runtime engine no longer shuts down with a NullPointerException error when encountering flows without sources.

MULE-19390/SE-20448

Using a @ParameterGroup annotation with an @ExclusiveOptionals annotation that references another parameter with the same name outside the group no longer causes the deployment to fail with the error the following parameters cannot be set at the same time.

MULE-19408/SE-20491

Error propagation with certain error types when using Mule runtime cluster now works correctly.

MULE-19409

The logs now include JAR files added to the class loader to facilitate troubleshooting server-plugin class loader creation.

MULE-19371/MULE-19370/SE-20386

TieredCompilation no longer prevents apps from working on 0.1 vCore when deployed on a worker with a higher vCore, such as 0.2 vCore.

MULE-19387/SE-20319

Using the Java Module in a policy no longer prevents the policy from deploying successfully.

MULE-19240/SE-20745

Deploying a custom policy on Windows no longer fails if the log file name contains : characters.

MULE-18580

Setting a Date with Time and TimeZone precision from a String value now works correctly without requiring a DataWeave expression. In addition, setting time-based parameters following the ISO-8601 standard is now supported.

MULE-19347/SE-19450

Anypoint Connector for JMS (Java Message Service) using XA Transactions with Bitronix now honors the reconnection strategy.

MULE-19010

Using the Scatter-Gather component with the Flow Reference component no longer causes MULE:UNKNOWN errors.

SE-20417

The logs now include only one Back Pressure error per exception.

SE-20952

Corrected information in the mule-ee-patch-4.3.0-20210427-MAY-2021.zip README.TXT file.

EE-6454

The Transform Message component now loads resources using the correct encoding.

EE-7739/SE-19692

Undeploying applications in a cluster with FIPS enabled no longer causes the process to hang.

EE-7524

The Cache Scope component no longer creates incompatible cache values during Mule runtime engine upgrades.

EE-7284

Clusters configured to use encrypted communication now work as expected.

AGW-4731

Closed sockets are now recovered correctly when an unexpected platform connection error occurs.

AGW-4747/SE-19546

The client secret of client credentials can now be hashed when storing the credentials in memory and when parsing incoming credentials from a request.

This functionality is disabled by default.

AGW-4797

Removed unused Jersey dependencies.

DW-377

DataWeave: Support for XML DTD validation is now disabled by default.

To enable XML DTD validation, use the com.mulesoft.dw.xml.supportDTD system property or the supportDtd XML reader property.

SE-19933

Schedule-based flows no longer stall after the first batch is processed when the value of maxConcurrency is 1.

SE-20129

DataWeave: The character reader property now correctly handles null as an empty value.

SE-20300

DataWeave: An OutOfMemory error no longer occurs when using MultiPart format.

SE-20372

DataWeave: A StackOverflow error no longer occurs when using StreamCapable check-recursive functions.

SE-16906

Event variables that are visible in a Try scope are now visible inside error handlers.

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

April 2021

Patch release version: 4.3.0-20210322

For an upcoming release in May, the behavior of the DataWeave XML reader functionality will change.

This change will affect Mule versions 3.9.5, 4.1.6, 4.2.2, and 4.3.0 for on-premises Mule, CloudHub, and other hosted or embedded runtimes, including Anypoint Runtime Fabric and Anypoint Studio.

The April patch update adddresses the following issues:

Issue Description

SE-20108

Fixed a known issue that could cause a com.esotericsoftware.kryo.KryoException: Buffer underflow error to occur in CloudHub when using Object Store v2 after updating to the March 2021 release.

MULE-19272/SE-18122

Fixed the error Couldn’t find resource: script.dwl neither on classpath or in file system, which occurred when using the Transform Message component (ee:transform) in a subflow called from Parallel For Each (parallel-foreach), Scatter-Gather (scatter-gather), or Cache ee:cache components.

MULE-19262

Fixed an issue that occurred when retrying an operation after refreshing an OAuth token. Consumable values (such as streams) of parameters in the operation were already consumed and not reset upon retrying the operation.

MULE-19252

Improved the performance of persistent object stores.

MULE-19249/SE-19746

Fixed an issue that caused errors when referencing files on a network share path in a Windows environment.

MULE-19076

Fixed the log message for org.mule.runtime.core.internal.processor.simple.RemoveFlowVariableProcessor.

EE-7703/SE-16631/SE-17432

Fixed an issue that occurred when using XA transactions in the Anypoint Connector for Database (Database Connector).

The application did not resolve metadata correctly and failed when testing with MUnit.

MULE-19242/SE-18799

Fixed a file leak on Windows that prevented Mule from deleting the application’s folder when redeploying, which caused a failure.

SE-19846

DataWeave: To fix an OutOfMemory error that occurred when mapping many database records, DataWeave now releases resources on stream close.

SE-19257

DataWeave: Fixed flat file handling of records with values of variable length.

SE-20005

DataWeave: Increased the number of namespaces that can be handled by the XML module to avoid NoSuchElementException errors.

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

March 2021

Patch release version: 4.3.0-20210304

Known Issues:

Issue Description

SE-20108

The Cache scope can fail when using a persistent Mule object store or Object Store v2 after upgrading to the March 2021 patch release for 4.3.0 from an older version.

The March patch update adddresses the following issues:

Issue Description

MULE-19127

Added the ability to redeploy a flow without starting it to enable the server to restart without starting the applications.

AGW-4551

Enhanced org.mule.runtime.api.healthcheck.ReadyStatus to provide more information.

AGW-4650

Fixed a problem in which removing a policy with contracts before the contracts were downloaded caused the gatekeeper to remain locked.

AGW-4619

Gatekeeper now waits for contracts to download.

DW-375

DataWeave: Prevented an overflow exception by getting a binary token offset.

SE-11046

Resolved an issue in which MUnit couldn’t run from behind an authenticated a Nexus repository.

SE-16673/EE-7664

Resolved a problem using Bitronix TM that caused the application to fail when the database was not reachable.

SE-19030/EE-7653

Fixed a problem that prevented XA MQ connections from committing if the flow used a cache element.

SE-18881/EE-7654

Fixed a validation issue that prevented setting preparedStatementCacheSize to 0.

SE-19090

DataWeave: Changed local imported modules to be cached to avoid CompilationResult class leaks.

SE-19157

DataWeave: Fixed an issue in which the splitter generated the wrong exception and caused Scala serialization issues.

SE-19266

DataWeave: Updated to use encoding when converting a string to a byte array.

SE-19442

DataWeave: Fixed an issue in which the pattern matcher didn’t work with comments, causing the script to fail.

MULE-19139

Fixed an issue in which mapped errors threw a MULE:UNKNOWN error, instead of the correct error name.

MULE-18663

When annotating parameters from OAuth-based connection providers with @OAuthParameter and requestAlias, the value of the parameter is now correctly sent when performing the OAuth dance.

MULE-19020

Fixed an issue in which connection errors were not computed in application error-count statistics.

MULE-19143

Fixed an issue that caused a NullPointerException error while using Parallel For Each combined with a For Each under high concurrency.

MULE-19160

Resolved a problem in which retrying policies for operations did not correctly override connection-provider policies.

MULE-19209/SE-19515

Fixed an issue in which a cache held a reference to a thread and a stream, which might cause high memory consumption.

MULE-19219

Fixed an issue in which MediaType did not correctly escape characters.

SE-16747

Resolved an issue that occurred when using the validation:all scope and a validation:is-not-null operation was triggered, the other items in the For Each weren’t processed.

SE-19213

Fixed a NullPointerException error that occurred while processing, under high concurrency, a Parallel For Each with either max-concurrency set to a value other than 1 or not set.

SE-19136

Resolved a problem in which the Add List operation in Anypoint Connector for NetSuite (NetSuite Connector) limited concurrent connections in the Batch Aggregator component.

SE-19515/MULE-19209

Fixed an issue that caused a memory leak when using a try block.

SE-19294

Resolved an issue in which the application received a rejected from Scheduler exception for HTTP request configurations when processing concurrent requests.

SE-19327

Fixed a SerializationException error that occurred when using the quote reader property (quote="\"") with a batch component.

SE-19557/MULE-19218

Resolved an issue that prevented opening a new cursor on a closed stream.

SE-19606

Fixed a problem in which database connections weren’t returned to the pool or were returned with a delay.

SE-19080/MULE-19157

Fixed an issue in which a connector with an operation that has a parameter group with exclusive optionals (one required) and one of the optional parameters is a POJO with dynamic fields caused the application deployment to fail. Affected connectors are the Cryptography module and Anypoint Connector for SAP (SAP Connector).

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

February 2021

Patch release version: 4.3.0-20210119

The February patch update adddresses the following issues:

Issue Description

MULE-19076

Added warning when the remove variable component tries to remove a non existing variable.

MULE-19038/SE-17832

Fixed a property {app.name} conflict when the application is deployed to CloudHub.

SE-18778

MUnit is unable to dynamic lookup flow references.

MULE-19122/SE-19029

Fixed an issue where different instances of a dynamic configuration containing an OAuth setup with Client Credentials could share the same token causing various errors (such as login fail or unauthorised access).

MULE-19129/SE-19069

Resolved a problem in which the CloudHub scheduler got stuck intermittently.

MULE-19118/SE-18583

Fixed an issue affecting the error handling of applications making use of the Try scope in subflows. This affected error propagation from subflows to their parent related flows.

MULE-18873

Resolved an issue in which routes dropped events during Flow Reference processing in applications that combined Scatter-Gather and Flow Reference components.

MULE-19113/SE-19102

Added logger to BackPressureStrategySelector for better debugging and tracing.

SE-18335

Fixed NullPointerException when using the HTTP Connector inside of a Connector built with XML SDK.

MULE-19097/SE-19126

Fixed issue that cuased CorrelationID to no be consistent throught the Event execution due to unwanted change in the used ClassLoader.

MULE-18159/SE-15096

Fixed an issue where plugins declared in domain could not load classes at application level.

MULE-19088/SE-18749

Fixed an issue that caused a Java.lang.NullPointerException error when trying to run MUnit tests on 4.3.0.

SE-17625

Fixed problem where the error handler component was called multiple times by Until Successful scope incorrectly.

MULE-19068/SE-18382

Fixed an issue that caused intermittent Cannot open a new cursor on a closed stream errors.

MULE-19049/SE-18521

Resolved incorrect behavior of the First Successful scope that occurred when the scope was within an Error Handler component.

MULE-18679

Fixed a ConcurrentModificationError on adding an startup listener while deploying an app.

EE-7624

Upgrade Tanuki wrapper to 3.5.45.

SE-18407

Fixed unexpected error The mapper returned a null value. within a Cache scope.

EE-7610/SE-18524

Fixed an issue that caused failures to deserialize file store based stream payload in batch.

AGW-4533

Fixed API reporting for requests with 0 size incoming requests (like GET requests).

DW-325

DataWeave: NDJson was not working when being executed in parallel.

MULE-19140/DW-371

DataWeave: Fixed an issue with property handling.

SE-13423

DataWeave: Fixed an issue where FlatFile cannot write dw keys as values.

SE-14799

Fixed problem where the onErrorContinue cannot catch a mapped error thrown from a sub flow.

SE-17677

DataWeave: Added feature where the BinaryValue read buffer is now configurable with the property com.mulesoft.dw.buffersize.

SE-18882

DataWeave: Fixed the behavior of the substringBefore() and substringBeforeLast() functions which produced incorrect outputs.

SE-19000

DataWeave: Added a new reader property called tableLimit to control the boundaries of where to read data. Options are: HeaderSize, Unbounded, or the name of the column.

SE-19086

DataWeave: Fixed an issue where stream batching did not work in deferred mode.

SE-19094

DataWeave: Fixed an issue where using for each with batchsize caused the stream to close (StreamClose).

SE-19040

DataWeave: Fixed an issue that caused a NullPointerException when the message of the exception was null.

SE-16997/MULE-18675

Fixed an issue in which using dynamic configurations for paged or streaming operations caused a disconnection error when trying to consume the pages or the stream.

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

January 2021

Patch release version: 4.3.0-20210105

The January patch update adddresses the following issues:

Issue Description

MULE-19014

Upgraded Bouncy Castle to version 1.67.

MULE-19026

Fixed incorrect reconnection behavior in sources, such as the Anypoint Connector for SFTP (SFTP Connector), which caused the sources to work incorrectly.

MULE-18599

Fixed an issue that produced an incorrect value for the partial fetching key resolution when a Parameter Group that is the MetadataKey used the setting showInDsl=true.

MULE-19016

Fixed an issue that could cause a "NullPointerError" when using the Post Message operation of Anypoint Connector for Slack (Slack Connector).

MULE-19006, SE-18378

Fixed an issue that produced a can’t get statistics before initialise() is invoked error when using a dynamic expiration configuration in a clustered environment.

MULE-19002, SE-17479

Fixed an issue in the XML SDK that ignored complex parameters defined as string arrays and with the behavior role.

MULE-18537

Mule now logs reconnection attempts when using the Standard Reconnection Strategy for any connector.

MULE-18929, SE-18107

Fixed an issue in which ActivePolicies set in DefaultPolicyManager retained multiple (weak) references to policies when expired policies renewed. The references were not collected. To avoid consuming more memory than necessary, the fix ensures that only one weak reference is retained per policy.

EE-7443, SE-16276

Fixed an issue in running Batch jobs that caused the jobs to get stuck and never finish.

SE-16965, AGW-4497

Fixed a metaspace classloader leak that occurred during the redeployment of an application.

SE-16372

Fixed an issue that prevented DataWeave from properly retrieving values when reading CSV files with Byte Order Mark (BOM) and Streaming enabled (streaming=true).

SE-18393

Fixed a DataWeave issue that resulted in a null value when using variables (vars) that were not resolved correctly.

SE-18136

Fixed a DataWeave issue that occurred when reading Excel files with empty columns, which caused rows to shift incorrectly to that empty space to fill in the empty column.

SE-18580

Fixed an issue that caused the Set Variable operation to fail with a MULE:EXPRESSION error when using a DataWeave expression that contained a function definition.

DW-289

Fixed an issue in which upserting an object with update duplicated key-value pairs in some cases.

DW-306

Fixed an issue that prevented the update operator from selecting attributes.

DW-307

Fixed an issue that prevented processing of XML documents when streaming mode was enabled.

MULE-18990

Added an optional warning with information about when an event is dropped.

MULE-19015

Fixed a Cannot open a new cursor on a closed stream error that occurred when using a nested foreach with a batch size larger than 1.

MULE-18949

Fixed a regression caused by a prior fix (MULE-18805) that made DataSense scenarios with error handling work improperly. With this fix, every scenario works properly, including the ones from MULE-18805.

SE-14750, MULE-19019

Fixed an issue that added a 'Content-length: 0' header for HTTP methods with undefined body semantics (GET, HEAD, and DELETE).

EE-7582

Fixed an HTTP service regression in which an unexpected error was thrown on a SoapFault.

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

November 2020

Patch release version: 4.3.0-20201021

The November patch update adddresses the following issues:

Issue Description

Improved application network metric tracking.

SE-17806/MULE-18883

Fixed a CloudHub issue in which the Scheduler stopped but reported its status as Running.

SE-17445/MULE-18885

Fixed an issue in which the queue manager leaked queue configuration instances when using Anypoint Connector for Virtual Machine (VM Connector) in cluster deployment setups.

SE-16989/MULE-18805

Fixed an issue in which MUnit did not successfully execute due to improper functioning (caused by lazy loading logic) when using an On-Error component.

SE-17092/MULE-18777

Resolved a problem with Anypoint Connector for AMQP (AMQP Connector) that caused the channel count to increase incorrectly after force-closing connections.

SE-16853/MULE-18889

Resolved an execution problem that occurred when an application used Groovy with Scripting module version 2.0.0.

MULE-18884

Resolved a memory leak that caused Mule runtime engine to crash after multiple redeployments of an app.

SE-15000/MULE-18794

Fixed an issue in which DataSense was unable to find the WSDL file for APIkit for SOAP Project.

SE-16933/MULE-18698

Fixed a regression in which dynamic configurations were not properly disposed, which caused out of memory errors.

SE-17756/MULE-18803

Fixed an error that could cause a flow to stop when combining the Scatter-Gather component or Parallel For Each scope with the Choice or Round Robin routers.

SE-16596/DW-240

Fixed an issue in the DataWeave flat file component in which some null values were not transformed to zeroes in hexadecimal.

SE-17773

Added a new system property com.mulesoft.dw.valueSelector.selectsAlwaysFirst to avoid caching selected indexes in DataWeave.

SE-17873

Fixed the following DataWeave error that occurred while converting Instant to LocalDateTime with MIN and MAX:

An exception occurred while trying to access field function java.time.Instant.MIN. Caused by: java.time.DateTimeException: Invalid value for Year

FV-833

Fixed an issue in which joinBy failed to validate against signatures in DataWeave. //correct issue number?

SE-9907

Fixed an issue with DataWeave in which java.util.Timezone provided a ZoneInfo Java class, rather than the time zone ID, such as "America/Los Angeles".

SE-14220

Fixed a NullPointerException error that occurred when using the Flat File format in DataWeave.

SE-15970

Resolved an issue with the DataWeave diff function, which inverted the values of the expected and actual keys.

SE-16350

Fixed a DataWeave issue in which using header=false with bodyStartLineNumber, the CSV reader skipped lines.

SE-16883

Fixed an issue with the DataWeave Mule::causedBy function, which didn’t have the correct type defined for Error.

SE-17149

Resolved an issue in DataWeave conversion from Excel to CSV format, which did not print cells when the cell value was empty, resulting in an inconsistent output.

SE-17212

Resolved a problem in which defining a Client ID Enforcement policy failed with encrypted client credentials.

SE-17392

Fixed an issue in which DataWeave didn’t correctly handle an internal UnsupportedTypeCoercionException error while processing a batch of records.

SE-17446

Resolved an issue in DataWeave in which conversion from Excel to DataWeave didn’t correctly ignore empty lines in Excel.

SE-17520

Fixed a problem in which DataWeave didn’t correctly process keys that use a literal $ string value.

SE-17562

Fixed a problem in which a migrated MUnit test from a previous Mule version executed a mocked connector.

SE-17570

Resolved a DataWeave issue that caused a StackOverflow error when using some and every functions with large arrays.

SE-13715/MULE-18812

Fixed an issue that occurred after Mule runtime engine restarted, which caused Mule application deployment failures while parsing domain shared resources.

SE-12712/MULE-17880

Fixed multiple WARN log entries that occurred when using a caching strategy.

SE-15592/MULE-18573

Fixed an issue that occurred when an app transformed data using variables.

MULE-18872

Fixed an issue with the runtime logging that could cause out of memory issues.

SE-16439/MULE-18696

Resolved a problem that occurred when processing a large batch of records within a Parallel For Each scope, causing an exception and an unresponsive application.

SE-16823/MULE-18712

Resolved a problem in which it was not possible to mock scripting:execute processors when running MUnit tests.

SE-17554/MULE-18739

Fixed the default value resolution for the Scheduler component’s disallowConcurrentExecution attribute so that you don’t need to define it explicitly.

MULE-18742

Fixed a race condition that produced a ConcurrentModificationException error in Log4jContextFactory when canceling a registered callback while disposing an application.

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

September 2020

Patch release version: 4.3.0-20200824

The September patch update adddresses the following issues:

Issue Description

MULE-18694/SE-16719

Resolved an issue that caused applications to fail due to memory consumption when referencing nested subflows (using <flow-ref>).

MULE-18666

Fixed an issue that caused a StackOverflowException error when using the following DataWeave script:

#[output application/json --- message]

MULE-18689/SE-16734

Corrected a memory leak referencing the following class in the runtime logs:

org.mule.runtime.core.privileged.exception.
TemplateOnErrorHandler$
OnErrorHandlerFluxObjectFactorytransactional

MULE-18682

Fixed a problem that caused a ClassNotFoundException after a policy upgrade affecting proxy applications.

MULE-18657/SE-14959

Fixed a problem that prevented primary node initialization in Anypoint Connector for Salesforce (Salesforce Connector).

MULE-18665/SE-16278

Fixed the RegistryLifecycleCallback logger so that it no longer prints the customer’s security key.

MULE-18542/SE-15818

Resolved a thread leak when redeploying an application that uses Anypoint Connector for Database (Database Connector) and references the Oracle JDBC driver.

MULE-18628/SE-16435

Resolved a problem in which applications were unable to retrieve objects from the cache due to serialization issues.

MULE-18623/SE-16933

Corrected a memory leak that occurred when using dynamic configurations.

SE-15453

DataWeave’s XML module now includes a new property to handle escaping > characters.

SE-15249

Fixed DataWeave attribute selector not dispatching to the correct implementation.

SE-15362

Fixed NullPointerException in DataWeave’s XML module.

DW-184/SE-15834

Fixed DataWeave inferred types when the output is undefined storage to recalculate output.

SE-15894

JSON binary values are now encoded into strings consistently across DataWeave versions.

SE-16462

DataWeave now parses single key-value pairs correctly when mixed with conditionals.

SE-16539

Fixed an error that occurred in DataWeave when parsing JSON with whitespace between array elements.

SE-16167

The DataWeave Avro module now correctly converts logical types.

AGW-4287/SE-16981

Fixed an issue that caused object-store deserialization errors when upgrading the internal version of Rate Limiting policy.

SE-17193

Fix a deployment issue that occurred for apps with multiple nested function calls, such as ++, in DataWeave.

SE-17270

Fixed an issue in which the primary node in a cluster remained primary after stopping the runtime, causing applications with a pooling processor on the primary node to stop working.

MULE-18604/SE-12900

Fixed an issue in which NTLM authentication-dancing failed when performing multiple parallel requests requiring renegotiation.

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

August 2020

Patch release version: 4.3.0-20200727

The August patch update adddresses the following issues:

Issue Description

MULE-18535, SE-16524

Fixed incorrect behavior in which accessing message.message.exceptionPayload.info.Element returned null instead of an error.

MULE-18528

SDK OAuth authorization code-flow references do not have a stereotype making it fail when executed from MUnit.

MULE-18579

Resolved an issue in which when an object store expired, it loaded all deserialized entries into memory, doubling memory consumption.

MULE-18564

Fixed an issue in which using inline proxy configuration in the OAuth module failed to create the requestConfig configuration.

MULE-18569, SE-16282

Resolved an issue in which the Anypoint Connector for Kafka returned the java.nio.file.InvalidPathException: Illegal char <:> exception when accessing filesystem configuration files.

MULE-18548, SE-14272

Fixed an issue in which the Cache scope in a cluster configuration did not effectively monitor the cache in the secondary node.

MULE-18545

Resolved an IndexOutOfBoundsException error that occurred when handling a backpressure error in a source policy.

MULE-16688

Fixed a problem that occurred when using a property placeholder on an import tag with deploymentProperties that caused the placeholders to not be replaced.

MULE-18513

Fixed an issue in which a connector configuration using OAuth caused metadata-resolution problems.

MULE-18504

Resolved an SDK regression in which the component reference in an operation chain was wrongly calculated.

EE-7381

Fixed an issue in which creating a scheduledThreadPool with a coreSize value of 0 could cause high CPU utilization.

SE-16468

Fixed an issue in which DataWeave skipNullOn did not behave properly because the value null was ignored in maps.

SE-16915

Removed unnecessary log messages that appeared when using dynamic objects in DataWeave.

MULE-18196, SE-16894

The fix for the SE-15056 issue causes applications that use custom policies to fail when sharing the ErrorType repository if the app and policy bundle didn’t include all dependencies.

+ You can revert the behavior by setting the mule.share.errorTypeRepository system property to true.

SE-13603

Fixed an issue in which an application using more than one salesforce:replay-channel operation failed with status code 429.

SE-13603, SE-10677, SE-16728

Upgraded the Object Store v2 plugin to version 4.0.27.

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

July 2020

Patch release version: 4.3.0-20200622

The July patch update adddresses the following issues:

Issue Description

AGW-4211, SE-16370

Fixed an issue in which applications using APIkit and policies with the autodiscovery component incorrectly returned 500 instead of 404.

MULE-18454

Resolved a problem generating XML when creating an artifact declaration that contains a platform-managed OAuth connection provider.

MULE-18475, SE-16232

Fixed a NullPointerException issue on the XML SDK framework when a parameter that has both CONTENT and OPTIONAL values is empty.

MULE-18491, SE-16370

Errors without location values no longer cause policy error handling to behave like a back-pressure error.

MULE-18506, SE-16470

Reverted MULE-18370 because it caused a key collision in the ManagedCursorProvider cache management.

SE-13383

Fixed an issue that occurred while moving corrupted domain object store files to the Garbage folder.

SE-15067

DataWeave now properly handles the #[ sequence inside a String value in Mule operations, such as Logger.

MULE-18375, SE-15704

Fixed a problem in which a custom policy that applied an outbound request changed the behavior of an API by clearing attributes.

SE-15918

Added support for escaped Char sequences on DataWeave settings.

MULE-18458, SE-15925

Fixed a problem that occurred when resolving DataWeave errors and processing the flow stack.

MULE-18439, SE-15995

Fixed an application deployment failure with the loops not allowed error.

SE-16006

Fixed an issue that prevented debugging an application in Studio 7.5 and Mule runtime engine 4.3.

MULE-18462, SE-16038

Resolved an issue in which combining Cache and For Each scopes caused a java.lang.ArrayIndexOutOfBoundsException: 0 error during execution.

MULE-18501, MULE-18500, SE-16088

Fixed a regression with MUnit spy assertions (before-call and after-call) that was introduced in Mule 4.3.0.

MULE-18498, MULE-18480, SE-16095

Fixed an OutOfMemoryError: Metaspace error on applications with multiple concurrent deployments and some redeployments.

MULE-18453, SE-16119

Fixed an issue with backslash-character processing when running Studio on Windows, which caused Test Connection in Anypoint Connector for File to fail when the Configuration property was present.

MULE-18488, SE-16133

Fixed a NullPointerException error that occurred when using Anypoint Connector for Database in a Try scope and running it more than once.

MULE-18489, SE-16281

Resolved the ClassCastException: java.lang.Integer cannot be cast to java.lang.Long error when using Anypoint Connector for Kafka.

SE-16292

Fixed a JSON payload with spaces after an array value failed in DataWeave’s in-memory parser.

MULE-18490, SE-16317

Resolved a problem accessing flow.name in DataWeave transformations.

MULE-18492, SE-16365

Fixed a serialization problem with policies using the 'Rate limit SLA' policy.

SE-16379

Fixed an application start-up error NoSuchBeanDefinitionException: No qualifying bean of type 'org.mule.extensions.java.internal.cache.JavaModuleLoadingCache' available.

SE-16381

Resolved a problem processing DataWeave date expressions when calculating year differences.

SE-16389

Fixed an issue in which DataWeave nested dynamic objects skipped elements.

SE-16431

Cached DataWeave compiled expressions based on string script to avoid an out-of-memory issue on deployment.

MDM-106, SE-16066

Fixed metadata that was not generated correctly when a <ROW> tag was duplicated.

MULE-18431

Corrected problems in which threads hung when using Anypoint Connector for Virtual Machine under load.

MULE-18294

Resolved an issue in which polling source Scheduler components incorrectly restarted on reconnection.

MULE-18440

Fixed a race condition that occurred when a thread looked for policies and invalidated the cache simultaneously.

MULE-18442

Mule no longer creates a default policy manager for each applied policy.

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

June 2020

Patch release version: 4.3.0-20200521

This patch release consolidates fixes to Mule 4.3.0 since the initial release on April 30, 2020. The fixes extend through June 2020.

Issue Description

AGW-4199

Fixed an error that occurred when accessing Gatekeeper and Analytics policy templates.

SE-15935

Mule application threw the wrong HTTP response status code when api-gateway:autodiscovery was enabled.

MULE-18421

When using a logger to log a value, a result containing ##[ is no longer incorrectly reevaluated.

MULE-18416

Resolved ClassCastException when running an API using the Interception API.

MULE-18397

Fixed an error that occurred when an expression accessed a target-operation payload attribute.

MULE-18390

Fixed an OutOfMemory error that mentioned running out of Metaspace when running MUnit tests.

MULE-18378

When an HTTP Listener is source of the flow, trying to reference a flow variable from the flow’s error response builder, the variable could not be found if a source policy was applied to the Listener.

MULE-18371

Fixed a NullPointerException error that occurred when processing a request and all in-flight cursors were inappropriately closed.

MULE-18370

Fixed an issue that might rarely cause a key collision with the ManagedCursorProvider cache.

MULE-18369

MULE:OVERLOAD exception is thrown when first policy contains a Cache scope and second policy contains a Try scope error-handler.

MULE-18364

Fixed a problem that prevented an application from starting after stopping using Runtime Manager.

MULE-18312

A custom global error handler is no longer ignored when located after a failing flow.

MULE-18306

Fixed a race condition that occurred while disposing flows using a until-successful construct.

MULE-18284

Fixed an issue where a policy deployment failed under certain circumstances because the errorType could not be found when deploying a policy.

MULE-18264

Resolved open JAR file-leak when reading resources, such as keystore, when configuring TLS.

MULE-18255

OCSClient now supports configuring the API version of the service via system property.

MULE-18244

Fixed a classloading issue when connectors that use third-party libraries are not able to load classes if they rely on loadClass(s,b) from CompositeClassLoader.

MULE-18208

When resolving dependencies, a mule-service no longer includes the Test scope dependencies, which caused unnecessary service registrations.

MULE-18196

An application no longer fails to deploy if it has the same custom namespace as that of an applied custom policy.

MULE-18179

Resolved a possible stack overflow on RejectionCallbackExecutorServiceDecorator while trying to generate an XML response.

MULE-18102

Resolved concurrent subflow instantiation problem where the inner processors location was being corrupted.

MULE-16668

Optimized connection-pool validations to avoid excessive and costly checks.

EE-7097

Batch job summary is no longer incorrectly logged twice.

MULE-18310

Optimized application deployments, resulting in performance improvements.

MULE-18205

Optimized FlowProcessMediator#policySuccessError to now create a single router for all exceptions rather than one for each exception or error.

MULE-18172

Fixed ObjectStoreToMapAdapter thrown exceptions when used or accessed concurrently.

MULE-18202

Upgraded groovy dependency to version 3.0.2.

SE-15904

Fixed an issue in which DataWeave’s common subexpression elimination incorrectly reduced two expressions, ignoring middle nodes.

SE-13691

Fixed an issue in which the Scheduler incorrectly ran twice.

MULE-18369

Fixed an overload error that occurred when an API had a combination of two policies using caching and error-handler components.

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

April 30, 2020

The initial 4.3.0 release includes new features, fixes, and some known limitations.

New Features and Enhancements

Mule 4.3.0 introduces several features and enhancements.

API Gateway

API Gateway now includes a disable Policies annotation. Setting it to true enables you to block the application of policies to the requestor.

In addition, the release introduces several enhancements to resiliency, including a better backoff mechanism and improvements of the policy deployer mechanism.

DataWeave

DataWeave introduces the following:

  • update operator:
    Creating modified versions of objects and arrays is now easier. The update operator enables you to select specific fields to change without changing others.

  • Streaming features and enhancements:

    • The XML reader now supports streaming.

    • The JSON reader now supports streaming for more than arrays.

  • Literal types:
    String, Boolean, and Number values can now be handled as literal types, which enables the definition of enumerations (Enums) and makes function overloading more dynamic.

  • Period and DateTime consistency:
    This feature adds an easy way to operate with periods, transform the result into different units, and decompose the period into its different parts.

    Period changes its behavior for dates in version 2.3.0. To restore the 2.2.0 behavior, set the -M-Dcom.mulesoft.dw.date_minus_back_compatibility=true. See Add and Subtract Time for additional details.

  • DataWeave modules:

    • The new Types module enables type introspection at runtime.

    • DataWeave also introduces a number of new functions in existing modules.

    • Deprecated functions and replacements:
      The entrySet, keySet, nameSet, valueSet functions in the Objects module are deprecated in this release and replaced with the functions entriesOf, keysOf, namesOf, valuesOf in the Core module.

    • withMaxSize function:
      The Strings module has a new function that enables you to specify a maximum size for a given value. A value that exceeds the size limit will be truncated. If the size is no greater than the limit, the value remains the same.

    • takeWhile function:
      The Objects module has a new function that iterates over the items in an array items while a condition is true.

    • dropWhile function:
      The Objects module has a new function that iterates over and ignores the items in an array until the specified condition is true.

    • Reader and Writer properties:
      DataWeave introduces a number of new and enhanced reader and writer properties for supported DataWeave formats.

  • Custom MIME types:
    This feature adds a way to define the output MIME type separately from the output data format. It also provides a simpler way of defining output and input formats.

  • Intersection type:
    DataWeave introduces the Intersection type. The intersection type appends Object types. The type takes the form TypeA & TypeB & …​.

  • Performance:
    DataWeave performance is improved for memory usage, functions (like groupBy), and the internal execution engine. Improvements include:

    • Common Subexp Elimination
      To optimize scripts, DataWeave now eliminates common subexpressions by internally using implicit variables for them, meaning the subexpressions are only executed once regardless of how many times they are repeated.

    • Memory Service:
      Memory management is now centralized. Several memory management strategies are included, such as pooling direct memory or using heap memory exclusively.

  • Improvements to parsing error messages:
    Parsing errors now reflect more accurately missing tokens, incomplete definitions, and other common issues. Tips and examples of how to solve the issues are also included.

For more detailed information about these changes, see What’s New in Mule 4.3.

Core Components

The following Core components have new features in this release.

  • Until Successful component:
    Max Retries (maxRetries) and Milliseconds Between Retries (millisBetweenRetries) now support a number or an expression that resolves to a number.

  • Batch Aggregator component:
    This component adds the preserveMimeTypes attribute to makes it easier to handle records from a payload that is in a structured text format, such as JSON or XML.

For more detailed information about these changes, see What’s New in Mule 4.3.

Changes

  • Threading Model

    • The three main thread pools have been combined into one unique thread pool.

    • You can select between the UBER pool strategy (default) or the DEDICATED pools strategy (legacy).

    • You can still customize the thread pools' configuration if necessary.

    • If you are upgrading from earlier Mule 4.x versions, see Upgrading from Mule 4.2/4.1

For more detailed information about this change, see What’s New in Mule 4.3.

  • Performance updates

    Mule 4.3.0 includes several updates to improve performance. Some processes are pre-calculated to reduce latency and increase throughput. However, these modifications cause a slight increase in memory consumption for Mule components.

    The increase is particularly important when using subflows because the content of a subflow replaces each Flow Reference component that references the subflow, causing several instances of the event processors inside a subflow to exist in the application at runtime. See Using Subflows for additional details about subflow behavior.

For more detailed information about optimizing application performance, see Performance Tuning Guide.

Upgrade Requirements

Issue Description

MULE-16681

Updated cipher suites for FIPS140-2 mode (check tls-fips140-2.conf file)

MULE-15596

Added support to Error Handler for "when" filtering for a certain "type". Before 4.3.0 Setting "when" and "type" simple ignores "when" expression

MULE-17800

ParseTemplateProcessor Type Inconsistencies when setting target and target variable

MULE-17472

Use of backslash before Properties escapes the evaluation of them. To have the same behavior as before (backslash being a simple character) add the system property mule.properties.correct.backslash.use=false

Known Limitations and Workarounds

Issue Description

MULE-18369

API fails when it applies the Caching Policy before the Message Logging Policy or Header Injection Policy.

Fixed Issues

Issue Description

MULE-18305

XmlSdkConfigurationInstance does not delegate methods

MULE-18304

NPE in operations within dynamically invoked sub-flow

MULE-18299

Unexpected run/debug behavior - Flow was terminated abnormally

MULE-18295

Performance overhead in SdkInternalContext#locationSpecificContext

MULE-18286

Error mappings not honored while running application on LazyInit

MULE-18281

ArtifactAstDependencyGraph is not taking configRef parameters into account

MULE-18276

IllegalStateException cannot be cast to EventProcessingException

MULE-18269

XML SDK variables are sent as null with 4.3.0-RC2

MULE-18261

Processed wrapped in a Mono should always recognize itself with a child context

MULE-18259

Smart connector fails if http protocol is not defined for a config that contains another http config

MULE-18248

Illegal type name exception in AIX OS using JDK8

MULE-18240

Scatter Gather resulting in Exception reached PS subscriber for flow

MULE-18238

XmlSdkConfigurationProvider does not propagate Lifecycle methods

MULE-18236

Getting IndexOutOfBoundsException error for a mapping that works in 4.2.2

MULE-18234

App returns correct results, but "Test Connection" FAILS

MULE-18227

NPE with scatter-gather within parallel-foreach

MULE-18200

4.3.0: readUrl getting blocked when file resource is not present

MULE-18197

MUnit test fails when executing XML SDK module

MULE-18189

Interception API: Context Id are swapped for processors in scatter-gather

MULE-18183

Race condition on ProcessingStrategy#dispose

MULE-18178

Max Concurrency not honored in flow-ref

MULE-18177

Add current location to thread names

MULE-18164

Async scope not deploying in a policy

MULE-18161

Simple async operation not working

MULE-18157

Event modifications lost when setting a securityContext

MULE-18155

Dynamic flow-ref must explicitly expect a String on the expressionLanguage

MULE-18148

Memory leak on transactional try with error handlers

MULE-18145

Operation policies are not applied to requester when it is inside XML Connector

MULE-18140

PlatformManaged connection providers do not inject the config name to its delegate

MULE-18138

Every time a connection is created/autowired, its class is looked up in the app classloader

MULE-18129

Extensions-client times out operations after 5 seconds

MULE-18124

When an Exception is raised from a non-blocking SDK operation, an unexpected error is thrown

MULE-18123

Source not being intercepted when exception in smart connector

MULE-18115

Lazy init: Object store already defined with inline IdempotentRedeliveryPolicy

MULE-18094

Pooled Platform Managed Connection Providers fail to be created

MULE-18093

Add process id to the start up splash

MULE-18090

Flow stuck on JMS publish when connector trows an error

MULE-18089

Flow source stopped event if it was not started because of a ComponentInitialStateManager

MULE-18087

Processing strategy not propagated to chains of scopes in policies

MULE-18081

Remove scheduler warning

MULE-18078

DefaultExecutionContext constructor has too much performance overhead

MULE-18077

Performance issues with functional idioms

MULE-18076

Processing strategy not propagated to sub-flow

MULE-18073

Value is not being stored in queue

MULE-18064

Subscription context not propagated to error handlers

MULE-18059

Flow in initial state stopped is started when app is stopped and started

MULE-18040

Scatter-Gather router does not honor route order in aggregated response hashmap when there are 12 or more routes defined

MULE-18036

Error raised with incorrect type

MULE-18030

HttpPolicyPointcutParameters, only use the headers if a pointcut actually needs them

MULE-18025

OutOfMemoryError on multiple policy redeploys

MULE-18020

Fix reconnection for Paged Operations that fail after the first page.

MULE-18010

Spike: Use generated bytecode instead of reflection to invoke operations

MULE-18004

Make constants in AbstractComponent final

MULE-17994

Allow policy dispose to finish inflight events

MULE-17993

Response callback not called when source policy fails with Source policy already disposed

MULE-17992

MTF test timeout when two flow-ref are used

MULE-17987

Error when logging error for component with special characters in password

MULE-17975

Paging Provider is closed twice when it returns an empty page on the first call to getPage.

MULE-17970

Reduce verbosity of SpringRegistry

MULE-17952

Race condition when cloning a DefaultFlowCallStack

MULE-17950

For multi level metadata, same values are retrieved even when changing key parts on SOAP connectors

MULE-17942

Connection is not closed during Connection Exceptions on Paged Operations.

MULE-17939

Operation considers applied policies regarding thread switches

MULE-17933

PersistentXaTransactionContext#poll not honoring timeout

MULE-17929

Thread stucks when undeploying a failing operation policy

MULE-17917

Missing LegacyConnector class in the compatibility module.

MULE-17916

Error on returning a CoreEvent from Soapkit executor

MULE-17911

Application logging "FlowStack : <empty> " when LoggerContext.updateLoggers() is called

MULE-17908

Missing element in xsd for compatibility plugin

MULE-17906

Missing configuration for ConfigOverride parameter with implicit configuration

MULE-17905

OAuth token is not refreshed when a paged operation throws the exception when obtaining the second page.

MULE-17904

Policy execute-next throws error when inside transactional try

MULE-17903

CursorProvider not resolved for Object type parameters

MULE-17902

Version is not compliant with Semver 2.0

MULE-17901

AbstractCursorStreamProviderFactory class cast Exception

MULE-17888

ChoiceRouterObjectFactory is not aware of MuleContexts without validations

MULE-17885

DataWeave EL should not be lazy when not in tooling mode

MULE-17883

ParameterResolvers initialize a new AttributeEvaluator on each execution

MULE-17882

NoSuchBeanDefinitionException: No qualifying bean of type 'org.mule.runtime.extension.api.client.ExtensionsClient' when deploying a domain with a configuration for WSC

MULE-17874

SDK Should not reject dynamic metadata resolution when an optional key is null

MULE-17863

Avoid file leak in TlsConfiguration

MULE-17862

Avoid file leak in ParseTemplateProcessor

MULE-17856

Large overhead at ExecutionMediator

MULE-17849

Flow’s error response builder being executed twice

MULE-17845

NPE on MuleArtifactContext#resolveErrorType while resolving empty raise-error element

MULE-17843

When smart connector in a policy has a parameter with an invalid DW, it hangs

MULE-17833

Contention when instantiating a FileStoreInputStreamBuffer

MULE-17832

Flow’s error response builder being executed when a policy fails

MULE-17819

ComponentLocationVisitor creates wrong Locations for Connections

MULE-17814

Infinite Loop when setting -Dmule.classloading.verbose=true

MULE-17813

SourcePolicyContext is created and added even if no policies apply

MULE-17812

Refresh Dance not executed after TokenExpiredException

MULE-17800

ParseTemplateProcessor Type Inconsistencies when setting target and target variable

MULE-17791

Unneficient copying of variables and internal params in EventBuilder

MULE-1778]

Add a compile() method on the ExpressionLanguage

MULE-17770

Allow UTF-8 in disposition content headers for http request

MULE-17766

Race condition on recursive check in flowRef with scatterGather

MULE-17765

Validation module does not map MULE:EXPRESSION errors to custom application errors and error logging differs when error is raised in sub-flow

MULE-17763

Excesive contention on CursorManager#manage()

MULE-17762

MuleContext.getSecurityManager() accesses the registry on every invocation

MULE-17754

NoSuchElementException when using TransformationService with global errorHandler

MULE-17750

High contention on streaming ByteBuffer pool

MULE-17747

Event context termination callbacks not called on some situations

MULE-17741

FirstSuccessful implementation is blocking

MULE-17730

Fix lazyinit for email config in a domain

MULE-17726

LazyMuleArtifactContext is not disposing correctly components

MULE-17725

DomainClassLoaderFactory doesn’t remove cached class loaders on dispose

MULE-17698

OAuth 2 Client Credentials not resolving dynamic metadata

MULE-17696

Optional ParameterGroups are required to be exported

MULE-17692

TypedValue throws NPE when calling .toString() on null value.

MULE-17689

DefaultMetadataCacheManager is not reusing the ObjectStore partition

MULE-17686

NPE when stream is remanaged after previous managing decorator is collected

MULE-17671

NPE in Policy is producing mule to hang

MULE-17668

AST: Ref parameters with null values are marked as missing dependencies

MULE-17661

NPE when trying to retrieve metadata using JMS connector

MULE-17659

Custom Configuration Properties' parameters cannot depend on Deployment Properties

MULE-17588

Lazy init: <notifications ..> component not being initialized

MULE-17560

DefaultPersistentMetadataCacheManager is created per application context therefore the shared OS partitioned fails with concurrency

MULE-17541

Lazy init: <object class="…​" '/> not lazy initialized

MULE-17530

Remove flatMap from CompositeOperationPolicy#applyNextOperation

MULE-17529

Remove String.format from PolicyEventMapper

MULE-17524

Set instead of List generating inconsistencies resolving dependencies

MULE-17522

Fix case for domains in LazyInit on AST

MULE-17521

Avoid using an AutoCloseInputStream for streams

MULE-17518

Don’t generate schemas in test runner

MULE-17517

Source onTerminate callback should run on its own scheduler

MULE-17515

Create corrupted files directory before attempting to move files

MULE-17510

MetadataOutputDelegate always setting isDynamic to false for MetadataAttributes

MULE-17507

Remove unused legacy processing strategies

MULE-17505

Runtime is not starting ConnectionProviders during metadata resolution phase

MULE-17486

System.gc() called multiple times when disposing ClassLoaders

MULE-17480

Http requester can’t handle large headers in Mule 4

MULE-17472

Configuration property output not correct when prefix is escaped

MULE-17466

Maps should not be required to have getters

MULE-17451

Top level object stores should be started sooner

MULE-17449

ManagedCursors allow access to unmanaged provider

MULE-17431

ExtensionMessageSource requires FlowConstruct to be root element

MULE-17429

Workaround for MMP-499 in runtime

MULE-17426

Stacktrace is logged when undeploying a policy

MULE-17421

RoundRobin implementation is blocking

MULE-17416

ComponentModel equals/hashCode ignoring location

MULE-17415

Polling Sources fail to pick the same item multiple times (Regression)

MULE-17409

MetadataCacheIdGenerator for configuration elements is not taking into account parameters and only using DslTagId hash

MULE-17401

Scheduler source should route emitted message through FlowProcessMediator

MULE-17398

Operations that return a PagingProvider do not populate the type catalog properly

MULE-17390

MessageProcessPhase and MessageProcessTemplate are no longer used

MULE-17386

CommonSourcePolicy callback invoked twice when event is failed

MULE-17384

Extensions maven plugin not honoring extensions dependencies

MULE-17383

High CPU usage by VM Listeners with Persistent queues

MULE-17373

Final "catch-all" check for error handlers does not account for ANY matcher

MULE-17362

Top-level pojos from extensions do not have annotations

MULE-17359

CPU Light thread pool exhausted due to a testConnectivity when DynamicConfiguration is created

MULE-17346

Move ParameterDslDeclarationEnricher to extensions-api

MULE-17341

Referenced subflows are not being started after stop-start the application

MULE-17333

Missing hashCode method in TypedValueTypeAnnotation

MULE-17331

ParameterGroup with showInDsl property set and isOneRequired fails to instantiate operation

MULE-17330

Race condition when the same CursorProvider is managed twice

MULE-17322

ComponentResultJsonSerializer uses TCCL to load by SPI type annotations contributed by extensions-api

MULE-17313

Transaction began using TryScope are not switching to IO

MULE-17311

Services started by an app plugin retain app classloader after reploy/undeploy

MULE-17307

MetadataTypes from the extension model have different instances representing the same type

MULE-17300

DefaultArchiveDeployer#deployPackagedArtifact doesn’t redeploy when receives an URI

MULE-17298

Splash screen does not list odd named patches

MULE-17296

CursorProvider wrongly marked as a consumable class

MULE-17293

Stereotypes enrichment is done before all types are determined

MULE-17288

CacheId for fetching metadata keys should be broader

MULE-17277

Websockets dropped after 30 seconds idle

MULE-17267

Race condition on source shutdown and restart on connection exception

MULE-17264

Reintroduce the event buffering when dispatching to a flow

MULE-17250

POC on Remove flatMap in ModuleFlowProcessingPhase$FlowProcessor

MULE-17240

MultiMap is losing the order when converting to ImmutableMultiMap

MULE-17225

Loader constraint violation when trying to deploy application.

MULE-17223

MuleApp with Salesforce Connector leaking MuleApplicationClassLoader after undeploy or hotdeploy

MULE-17218

Mule SDK is leaking extensions configurations over the time

MULE-17210

Too many ephemeral events are created just to set a variable

MULE-17182

CursorProvider set in variables are not managed

MULE-17168

Remove softreferences for app classloaders to avoid OOM on redeploy

MULE-17166

Wrong group id for HTTP Connector in BundlePluginDependenciesResolver

MULE-17112

Internal libraries of a plugin are overridden by a sharedLib fron an app

MULE-17110

NTLM authentication with dynamic credentials is successful despite credentials changes

MULE-17105

Typo in 'secutiry' package

MULE-17096

NullPointerException when lazy initializing subflow with async scope

MULE-17091

Object streams not automatically closed if <non-repeatable-iterable> option is selected

MULE-17082

Race condition on test connectivity while deploying applications

MULE-17081

PipelineMessageNotificationListener returns a PipelineMessageNotification with null event when an exception is raised in the Mule flow.

MULE-17077

PersistentQueueTransactionContext#poll not honoring timeout

MULE-17065

Scatter gather and Parallel Foreach are not working inside error handler

MULE-17061

Optimization to avoid thread switch in PS is broken

MULE-17055

@OutputJsonType doesn’t work correctly with array operations

MULE-17051

Default Error Handler should be looked up after initialization

MULE-17050

SDK Non Blocking operation and policy is not returning a response under load

MULE-17048

Race condition when stopping a flow with an inflight event in an async block

MULE-17045

Connections are not closed when streaming operation fails

MULE-17025

ErrorHandler raising error not working

MULE-17023

Nested Try is rolling back tx created by outer try

MULE-17022

Transformation resolver failing to found transformer between byte array and inputStream

MULE-17019

Unauthorize operation does not reset ConnectionProviders

MULE-17007

@OutputJsonType does not set metadata type id

MULE-16995

Shared runtime deps in app mess up classloading

MULE-16994

Use of cache instead of WeakHashMap to avoid infinite loop in DefaultLifecycleInterceptor

MULE-16991

Race condition when invalidating cached connections

MULE-16987

Interception API: Parameters of smart connector not intercepted

MULE-16986

XA Transactions fail to rollback on ConnectionException

MULE-16983

Reconnection should not retry when resource has joined active transaction

MULE-16982

ArrayOutOfBoundException when creating custom scheduler

MULE-16979

Review choice

MULE-16974

FTP reconnection strategy repeat the "start delay" wait time

MULE-16965

MuleRuntimeException when creating namespace for custom error

MULE-16964

TryScope with no tx fails within subFlow+async

MULE-16952

Publisher returned by applyWithChildContext not completed when source is completed

MULE-16936

Mule 4 JMS Bridge (ActiveMQ) scenario stops working after a certain time

MULE-16920

"Cannot process event as 'flow' is stopped" when disposing and reinitializing source

MULE-16899

ClassCast exception when registry lookup finds no match

MULE-16896

Bound connections not released on TransactionException

MULE-16894

IllegalStateException in Polling Source when cluste node is shutting down

MULE-16892

Error handler being executed twice when flow ref is involved

MULE-16891

flowTrace OoM when using foreach with large collections

MULE-16890

AdoptJdk shown as un unsupported vendor

MULE-16889

DefaultDomainManager#getDomain should retrieve a compatible version of the required domain

MULE-16878

StringToEnum Transformer should have different names for each extensionModel

MULE-16872

Async in a transaction executes in the same thread as the transaction

MULE-16856

Starting a flow should fail when a task is rejected from scheduler.

MULE-16853

ConfigurationProperties does not honor properties hierarchy when having prop resolved with placeholder

MULE-16847

MessageProcessors.processWithChildContext must complete the EventContext

MULE-16841

Password mask regex does not consider dw and non-literal expressions.

MULE-16837

[Policy][OAuth] - Timeout and low TPS

MULE-16836

Cannot find snapshot artifact via resource loader when trying to scaffold an API

MULE-16831

Fix XA transactions with bitronix

MULE-16830

Global Properties are taking precedence over Application Properties

MULE-16824

LazyInit should initialize the Mule configuration at part of the component initializations phase

MULE-16817

Pooled connections are not removed from the pool when they should evict.

MULE-16790

Global ErrorHandler does not resolve transaction

MULE-16786

Dynamic configurations eviction should consider sources as in-flight operations

MULE-16784

MuleClassLoaderLookupPolicy wrongly assumming javax.xml.bind.attachment as system package in Java 11

MULE-16775

OnErrorPropagate in global error handler is not rollbacking tx

MULE-16758

Multithreaded sources are concurrently reconnected more than once

MULE-16753

A transaction is not available error related to execution on a cpuLight thread

MULE-16744

spring.schemas exported from runtime conflict with spring dependencies used in an app

MULE-16730

Interception API: Validation all throws NullPointerException

MULE-16725

Fix race condition in flow lifecycle handling

MULE-16633

Cool Mulesoft logo in splash screen looking bad in windows

MULE-16551

When Policy is present, Event is not serializable

MULE-16527

Remove flatMap in UntilSuccesful

MULE-16463

Remove flatMap in static <flow-ref>

MULE-16462

Remove flatMap in ModuleFlowProcessingPhase$FlowProcessor

MULE-16461

Remove concatMap in XML SDK chain execution

MULE-16285

Interception API: Smart connectors inside scopes are not skipped properly

MULE-16141

SDK is not validating input POJOs to have a default constructor

MULE-16129

Cannot deactivate streaming in operations that return lists/maps of streams.

MULE-15752

InjectParamsFromContextServiceMethodInvoker makes excessive registry lookups

MULE-15599

Serializing an artifact model constructed from serializing a JSON loses data

MULE-10702

Remove double check locking: StaticBulkQueryResolver

MULE-10347

Generics are not resolved for Map implementations

EE-7290

[IBMMQ][Bridge][Daily] TPS Degradation for all IBMMQ_Bridge apps

EE-7289

[JMS Bridge] jms_bridge_transactional app TPS lower than 1

EE-7283

OCS add system property for setting platfotm authentication url suffix

EE-7277

MuleLicenseInterrupter creates a thread named pool-n-thread-m

EE-7276

Regression on http connector

EE-7272

Cache scope storing unneeded data in the store

EE-7268

Possible memory leak when restarting batch applications

EE-7244

Getting "Cannot open a new cursor on a closed stream" error when 0 records are being processed

EE-7243

Batch Aggregator Out of Memory issue

EE-7239

Ambiguous PID when /mule start is Used

EE-7164

Batch Engine is no reinitialized in case app is restarted

EE-7135

TransactionalWrapper is not setting XAResources that are not DirectXASessions as resources to TransactionalManagerWrapper

EE-7100

BTI wrapper not returning XAConnection

EE-7061

Lingering Streaming aggregator input queue transactions while reading

EE-6927

EE version is loading mule-service-weave and mule-service-weave-ee

EE-6889

JdbcMapStore#loadAll(keys) should only load keys passed as parameter

EE-6866

When thread waiting in Hz is interrupted, InterruptedException is not thrown immediately

EE-6860

Escape table names in Microsoft SQL database store query builder strategy

EE-6857

File leak when getting dw file for transformation

EE-6852

Unlock hazelcast lock in the same thread where it was locked

EE-6834

Http Policy Module has no Extension Model

EE-6830

Tracking processors are marked as UNKNOWN instead of OPERATION

EE-6823

Automatically undeployed tooling apps are kept on memory for around an hour

EE-6804

Bitronix Proxy hides connectivity exceptions

EE-6797

Bitronix exception when redeploying an app using XA transactions

EE-6796

Dirty Bitronix transaction log

EE-6780

Corrupt patches not applied but logged as applied

EE-6779

BitronixTransactionManager built before QueueManager initialize causes NPE

EE-6774

Memory leak on com.mulesoft.mule.runtime.bti.internal.xa.QueueManagerXaResourceProducer

EE-6769

Possible race condition when registering ConnectionFactory in Bitronix

EE-6710

Batch RecordFilteringStrategy is not filtering correctly

EE-6682

Table name transforms in cluster object store are only working for postgresql

EE-6574

Organization credentials and encryption key are displayed in plain text in Cluster splash screen.

EE-6377

Batch Aggregator does not support JSON Payload

EE-6374

Sending large bodies causes OOM error in HTTP requester

EE-6338

A project using Netsuite fails with OOM after a few redeploys

EE-6108

Mule 4 Performance degradation on HTTP Proxy Scenarios

MULE-18288

Prevent memory leaks from plugins that use scala

MULE-18262

Allow to customize the default scheduler fixed frequency through a System Property

MULE-18141

Add warnings about not found classes for verbose classloading

MULE-18127

Provide a mechanism to disable log separation

MULE-18050

Improve performance of binding context

MULE-18049

Improve performance of policies lookup when no policies are applied

MULE-18047

Add the component that generated a cursor provider

MULE-18023

Remove spring repo declaration in poms

MULE-18021

Upgrade log4j to 2.13.1

MULE-18017

Improve performance of LifecycleFilterProxy

MULE-17988

Do not use Optional in Either

MULE-17985

Support policy application depending on request headers

MULE-17935

Support Platform Managed OAuth tokens in the SDK

MULE-17910

Remove distinct from child context processing

MULE-17909

Replace calls to flux.mergeWith

MULE-17889

Support repeatable streaming buffering from an existing file

MULE-17844

Remove append-string-transformer

MULE-17829

MessageProcessorNotification listeners not registered by default

MULE-17825

Group error handling internal parameters into unified pojos

MULE-17805

Remove child context used in try

MULE-17804

Remove child contexts uses in policies infrastructure

MULE-17801

Improve performance of MetadataType#hashCode

MULE-17780

Avoid creating an extra intercepting chain when there are no interceptors

MULE-17757

Migrate uses of MessagingExceptionResolver#resolve(MessagingException, MuleContext)

MULE-17743

Remove the use of the eventContext ResponsePublisher

MULE-17703

Validate preexisting config-ref parameter on ConfigRefDeclarationEnricher

MULE-17672

Make DefaultTypedComponentIdentifier#hashCode consistent across runs

MULE-17667

Automatically determine if a parameter is the ComponentId

MULE-17647

Allow domains to be redeployed without restarting its stopped applications

MULE-17536

FunctionalReadWriteLock: Provide withReadLock methods

MULE-17535

Performance improvements for MultiMap immutability

MULE-17525

Allow dynamic configuration for the proxy on the HTTP requester

MULE-17498

XML SDK: avoid container componentModel modification in config macroexpansion

MULE-17497

XML SDK: avoid container componentModel modification in operation macroexpansion

MULE-17487

Use OptionalInt instead of Optional<Integer> for building locations

MULE-17420

XML SDK: link with the inner models on the xml sdk component definition

MULE-17417

Add a method in DeploymentService interface to redeploy applications using a new URI

MULE-17334

Add missing exported/imported types in test extensions

MULE-17281

SDK needs to allow operations to obtain the effective retry policy

MULE-17257

Add more detail to FlowBackpressureException

MULE-17256

Add missing stereotypes to tls:context

MULE-17203

Properly add doc: attributes as component metadata

MULE-17185

Flowref flatmap removal leads to a notorious throughput decrease in the static-flow-ref-subflow case

MULE-17161

Allow SDK to specify that certain configs should never be used in an implicit way

MULE-17114

Add the notImported information from MULE-17112 into the plugins packager

MULE-17111

Create API to propagate a whole custom event when an error occurs in a Processor

MULE-17079

Remove flatMap from ProactorStreamProcessingStrategy#proactor

MULE-17078

Remove dependency of transactions infrastructure on the MuleContext

MULE-17066

ExecutableComponent api should provide a way to mutate the child event that is going to be created

MULE-17060

Use the default ProcessingStrategy for policies instead of a custom one

MULE-17001

Avoid unneeded message creation in source callback

MULE-16990

Improve troubleshooting logging for XA transaction

MULE-16980

Allow maven dependency resolution to always update snapshot dependencies

MULE-16954

Improve logging infrastructure performance

MULE-16937

SDK should no longer that at least one Content parameter to be primary

MULE-16928

Review and improve the change for MULE-16919

MULE-16909

Support custom parameters in OAuth Dance

MULE-16908

Support Client Credentials grant type in the SDK

MULE-16881

migrate app deployment file to 4.1

MULE-16871

Test performance improvement of backpressure check before policy execution

MULE-16861

Normalize namespace usage in ComponentIdentifier between runtime and DataSense

MULE-16860

Decouple DataSense from ComponentModel

MULE-16851

Implement CompositeConverter#toString to aid in transformers troubleshooting

MULE-16843

Move backpressure check before policy application

MULE-16838

until-successful attributes should support expressions

MULE-16755

ObjectStore expire: account for inconsistencies that may occur in cluster

MULE-16684

Make default processing strategy the same as the one for flows

MULE-16513

Perform flow backpressure check before source policies are applied

MULE-16491

pattern matching for error types in error handlers' type attribute

MULE-16215

Make infrastructure parameters to appear as not require for metadata

MULE-15645

Enable flowStack by default. This change can result in more detailed information when an error occurs in a Mule application.

MULE-15596

Error Handler: Add support for "when" filtering for a certain "type"

MULE-982

Logged error should suggest how to enable flowstack

EE-6898

Add a way to configure the hazelcast property MERGE_FIRST_RUN_DELAY_SECONDS

EE-6873

Replace slashes with underscores in TableNameNormalizer

EE-6867

HazelcastLockProvider should call MapNameNormalizer method to normalize map names

EE-6864

Escape table names in PostgresSQL database store query builder strategy

EE-6760

Make Bitronix XA connection pool configurable

AGW-3996

Operation policies are not applied to requester when it is inside XML Connector

AGW-3921

Failing to track an api might cause incomplete initialization.

AGW-3908

When an unhandled exception is thrown while deploying a policy, the deployer dies.

AGW-3816

Fix Mule OAuth authentication failure when Using Client-ID/Client-Secret of Child BG

AGW-3739

API is not getting unblocked by Gatekeeper when stopping and starting it from Runtime Manager.

AGW-3506

Analytics only being notified for one app.

AGW-3375

MapDB is corrupting and stops loading / storing contracts.

AGW-3181

Log indicating client id or secret are not provided is never shown.

AGW-3162

Stacktrace logged after redeploying offline policy with multiple api pointcuts.

AGW-3143

Fix Class Loader Issues generated by getLoggingClassLoader.

AGW-3142

Upgrading policy version is not using new policy jar.

AGW-3105

Requester policy hangs when headers in requester expression are null.

AGW-3004

Policy which does not need IdentityManagement still has it in config Data.

AGW-2215

In a policy, when using requester with url instead of request-config, it explodes.

AGW-4022

Remove runtime version from templates of default policies.

AGW-4008

Update jackson library to latest 2.10.x version

AGW-3990

Must upgrade handlebars library version to 4.5.3

AGW-3952

Added ability to ignore API’s base path when matching resource level policies.

AGW-3877

Improve performance in policies

AGW-3840

Add flow name and application name fields, when sending Analytics info to third party systems.

AGW-3749

Analytics engine improvements, data recollection.

AGW-3711

Enhance User-Agent sent by Gateway to Anypoint

AGW-3670

Enable blocking policies being applied to the requester by using "disablePolicies" annotation.

AGW-3550

Change Analytics Returning mechanism when no response is set.

AGW-2090

Add 400, 412 and 502 to the backoff status codes

DataWeave

  • Fix (SE-15642): Index based descendant selector should work as indexing from descendant selector.

  • Fix: Make error dumper include variables.

  • Fix (DW-133): Reuse instance of java when lazy value expressions.

  • Fix (DW-108): MappingCodeGenerator disregards order of arrow mappings when generating script.

  • Fix (SE-8056): Module is not correctly generated when there are recursive types.

  • Fix (SE-15159): Adding a property for security.

  • Fix (DW-126): Wrong type checking between close object and object with fields.

  • Fix: Wrong type checking when calling mapObject with null.

  • Fix (DW-104): Avoid indexWhere fo boxing and unboxing of char and booleans.

  • Fix (SE-14421): Avoid file leaks on indexed files.

  • Fix (SE-14606): Make fromBase64 and toBase64 not to propagate schema for Backwards compatibility.

  • Fix (DW-102): Substring after and Substring After Last should take into account the length of the text.

  • Fix (SE-14623): Fixing Enum Types in Avro.

  • Fix (DW-98): Selecting same part content of different types multiple times should return same content that is in the multipart.

  • Fix (SE-14561): Add support for union type of any kind in Avro.

  • Fix (SE-12726): Do not call to the get() function of a future.

  • Fix deferred mode leaving streams unclosed.

  • Fix (MDF-359): Make stack growable instead of fixed size to avoid unnecessary memory allocation.

  • Fix (MDF-358): Parsing error with single key value pair object.

  • Fix (MDF-357): Adding support for builder static methods for non interfaces.

  • Fix (SE-14264): If not content type is set then binary should be used.

  • Fix (SE-13571): Equal operator for object was affected by the change empty uri and none namespace should be the same.

  • Fix (SE-13571): Empty namespaces should be taken into account as they may be overriding default namespaces.

  • Fix (MDF-355): Avoid creating java writer settings when it is not necessary.

  • Fix: Improve string append performance.

  • Fix: Type parameters where not correctly instantiated when used inside a lambda.

  • Fix: Type resolution on dynamic return type should take into account a specified type.

  • Fix (MDF-352): Split function should take into account writer properties configuration and inferred mimeType properties.

  • Fix: Reduce object allocation in JSON String escaping also fix key length.

  • Fix: Add support for period coercion to number.

  • Fix: GC overhead issue with SeekableStream and EvaluationContext.

  • Fix (SE-13600): Avoid logging the amount of read bytes on range selector over binary.

  • Fix (SE-13440): Avoid registering InMemory DataSources as Closeables as it is not required.

  • Fix: GroupBy now keeps order and performance improvement on groupBy.

  • Fix: Improve performance of reduce array of objects into a single object.

  • Fix (SE-13334): Lower needs to say that works with Comparable types.

  • Fix (SE-13495): Output writer properties should be taken into account when expected data type is used.

  • Fix (SE-12381): Execute simple script on startup to warmup classloader.

  • Fix (SE-12381): Load DataFormats on startup and also load other modules too.

  • Fix (MDF-338): Add com.mulesoft.dw.directbuffer.disable to disable direct buffer.

  • Fix: Capture groups may return null on conditional groups.

  • Fix: Avoid memory leak when automatic coercion of operations.

  • Fix (SE-12381): Make Core to be loaded at statup time.

  • Fix (SE-13334): Fix documentation of max function.

  • Fix (SE-13172): CSV parser for files bigger than 2G.

  • Fix (SE-13071): DataWeaveTypeEmitter should escape literal strings.

This version of Mule runtime is bundled with the Runtime Manager Agent plugin version 2.4.5.