Mule Runtime 4.1.6 Release Notes

Initial Release: August 29, 2019

Mule Runtime 4.1.6 includes fixes, known issues, and patch releases.

Changes

Not applicable.

Upgrade Requirements

Not applicable.

Install Monthly Patch Releases

MuleSoft releases cumulative Mule patches on a regular basis, typically once per month. The patch version specifies a Mule version and a patch identifier. Unlike the Mule upgrade process, which is for upgrades to a new minor version of Mule (version n.x to n.y) or to a new patch version (n.x.y to n.x.z), the cumulative patching process applies the latest bug fixes and security enhancements to a specific patch version of Mule. Installing a patch to the wrong Mule version can lead to instabilities and result in issues that are difficult to debug.

Note

Before applying the patch in a production environment, run your MUnit tests on new versions of Mule to validate the application’s behavior with that version.

The following procedure is for updating a patch version of an existing Mule instance:

  1. Stop your Mule instance.

  2. Extract the content of the ZIP file that contains the cumulative patch.

  3. Before proceeding with the installation, review the extracted README file to understand any version-specific steps for installing the patch.

  4. Back up the original content of the MULE_HOME/lib/patches and MULE_HOME/services directories.

  5. Remove any previous patch files from MULE_HOME/lib/patches.

    Important: Do not remove the patches within the MULE_HOME/lib/patches/mule-artifact-patches directory.

  6. Copy the new mule-ee-distribution-standalone-X.Y.Z-YYYYMMDD-patch.jar into MULE_HOME/lib/patches.

    Retain the following in the MULE_HOME/lib/patches directory:

    • mule-ee-distribution-standalone-4.1.6-patch.jar

    • MULE_HOME/lib/patches/mule-artifact-patches

  7. Starting at step 2 in the README file, complete the version-specific service patching instructions.

  8. Restart the Mule instance to pick up the patch.

For more guidance with the patching process, see the support article, How to apply patches to Mule 4.x.

CloudHub and Anypoint Runtime Fabric follow different patching processes.

May 2021

Patch release version: 4.1.6-20210419

For guidance with the patching process, see Install Monthly Patch Releases.

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 3.9.5, 4.1.6, and 4.2.2 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.

The May update addresses the following issues:

Issue Description

DW-377

DataWeave: Support for XML DTD validation is disabled by default. To enable XML DTD validation, use the com.mulesoft.dw.xml.supportDTD system property or the supportDtd XML reader property.

April 2021

There is no patch release for version 4.1.6 in April.

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.

March 2021

Patch release version: 4.1.6-20210304

For guidance with the patching process, see Install Monthly Patch Releases.

The March update addresses the following issues:

Issue Description

MULE-16668/SE-15200

Fixed an issue that caused Anypoint Connector for NetSuite (NetSuite Connector) to make excessive getServerTime calls.

SE-19157

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

SE-19588

DataWeave: Fixed an issue that caused a Scala error when using the keySet function.

SE-12726

DataWeave: Fixed an issue in which accessing vars in a batch step stopped the instance or job from processing.

SE-12923

DataWeave: Fixed a memory issue that occurred when processing large payloads.

SE-14754

DataWeave: Added support for UTF-8 characters in multipart headers to fix an issue that occurred when sending attachments with international characters.

SE-15159

DataWeave: The DataWeave XML module includes a new property to handle XML DTDs.

SE-15960

DataWeave: Upgraded the log4j dependency in the Flat File module.

February 2021

Patch release version: 4.1.6-20210118

For guidance with the patching process, see Install Monthly Patch Releases.

The February update addresses the following issues:

Issue Description

MULE-18584/SE-16130

Resolved memory leak while working with a polling use case using the Workday connector.

MULE-19140/DW-371

DataWeave: Fixed an issue with property handling.

SE-12393

DataWeave: Improved performance of data format lookup and the include property to avoid verbose error messages.

SE-12917

DataWeave: Made string calculation of UnsupportedTypeCoercionException lazy.

SE-13423

DataWeave: Added feature where FlatFile writer can handle dw keys as values.

January 2021

Patch release version: 4.1.6-20201130

For guidance with the patching process, see Install Monthly Patch Releases.

The January update addresses the following issues:

Issue Description

SE-11410

Fixed the logic for handling control variables that are nested in structures for the FlatFile module.

SE-11650

Fixed the ControlVal property in the Cobol Copybook schema, which was ignored by the FlatFile module.

November 2020

Patch release version: 4.1.6-20201019

For guidance with the patching process, see Install Monthly Patch Releases.

The November update addresses the following issues:

Issue Description

SE-13715, MULE-18812

Fixed an issue that occurred after Mule runtime engine restarted. The issue caused Mule application deployment failures while parsing resources that were shared through a domain.

MULE-18922

Fixed incompatibility when migrating to use jdk8u265-b01.

October 2020

Patch release version: 4.1.6-20200921

For guidance with the patching process, see Install Monthly Patch Releases.

The October update addresses the following issues:

Issue Description

SE-16282

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

September 2020

Patch release version: 4.1.6-20200824

For guidance with the patching process, see Install Monthly Patch Releases.

The September update addresses the following issues:

Issue Description

MULE-18390

Fixed an OutOfMemoryError: Metaspace issue that occurred when running MUnit tests.

MULE-18312/SE-13775

Resolved an issue in which running the MUnit test for an application using APIkit failed to upgrade from 4.1.4 to a later version.

MULE-17647/SE-12720

Fixed an issue in which a domain redeployment didn’t honor the application status and incorrectly restarted apps that were stopped before the redeployment.

SE-13404

Fixed an issue with event processing that occurred when executing MUnit tests on apps using Mule server notifications.

SE-13429

Resolved an issue in which MUnit tests didn’t execute when using a Java class.

MULE-17096/SE-12340

Fixed a NullPointerException error that occurred when using a lazy initialization subflow with an Async scope.

July 2020

Patch release version: 4.1.6-20200622

For guidance with the patching process, see Install Monthly Patch Releases.

The July update addresses the following issues:

Issue Description

MULE-18506, SE-16470

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

SE-15689

Fixed an issue that caused an Unexpected end-of-input at payload error while appending the payload to a file in /tmp.

June 2020

Patch release version: 4.1.6-20200518

For guidance with the patching process, see Install Monthly Patch Releases.

This patch release consolidates fixes to Mule 4.1.6 since the initial release on August 29, 2019. The fixes extend through June 2020.

Issue Description

SE-15592

Fixed an incorrect value when accessing variables' content in complex transformations with loops.

SE-13691

Fixed issues in which the Scheduler incorrectly ran twice or didn’t honor the configured cron or fixed-frequency setting on restart.

AGW-3949

Reduced log levels for API Gateway recoverable errors.

MULE-17706

Added support for HTTP header injection in Anypoint Connector for HTTP.

SE- 13729

Fixed an issue where the monitoring feature didn’t work on workers with a static IP address.

SE- 13657

Fixed an issue with persistent queues in the Europe control plane

SE- 13613

Fixed a backward-compatibility issue with TLS support.

SE- 13124

Fixed the KryoException (Could not deserialize object) error.

SE- 13095

Inbound metrics did not appear for some apps.

SE- 13004

Fixed an issue where the CloudHub worker was unresponsive and unable to start on its own.

SE- 12896

Fixed an issue with excessive logging filling /tmp and partition 100%.

SE- 13388

Fixed an issue where the HTS service was not deleting file descriptors.

SE- 13118

Fixed inconsistent property loading.

SE- 12626

SFTP connector was not reconnecting after JSchException error.

SE- 13047

Mule app encounters deadlock when submitting parallel requests in CloudHub.

SE- 12906

Fixed memory leak on PolicyStateHandler for error scenarios.

Initial 4.1.6 Release

Release date: August 29, 2019

The initial release of Mule 4.1.6 includes known limitations and fixes.

Known Limitations and Workarounds

Issue Description

AGW-3105

Requester policy hangs when headers in requester expression are null

AGW-3162

Stacktrace logged after redeploying offline policy with multiple api pointcuts

AGW-2720

Expression with vars causes policy failure in operation

MULE-17312

Race condition in commons-pool2 causes classloader leak that manifest on certain scenarios after redeploy an app

Fixed Issues

Version 4.1.6 fixes policy violation generation issues when using automated policies.

Issue Description

MULE-17048

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

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

Database bulk parameters missing on artifact declaration generated from mule-config

MULE-16964

TryScope with no tx fails within subFlow+async

MULE-16897

No primary node notification listener set on extension sources with cluster support

MULE-16896

Bound connections not released on TransactionException

MULE-16894

IllegalStateException in Polling Source when cluste node is shutting down

MULE-16891

flowTrace OoM when using foreach with large collections

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

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

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

Lightweight class loader model builder cannot resolve a pom as it doesn’t have the remote repositories from mule application where it was declared the dependency

MULE-16672

org.mule.runtime.api.util.ResourceLocator is caching resources and it nos working with SNAPSHOT dependencies

MULE-16657

Metaspace leak when generating dynamic configurations

MULE-16636

CursorProvider is retained too long when cursors are opened but not consumed

MULE-16634

Source completion callback not called on failure

MULE-16621

JMS with XA transaction stops consuming message on TX timeout

MULE-16614

Some core classes do not generate any logs

MULE-16600

Lazy Init: websockets:config is unable to find http:listener-config

MULE-16581

Runtime does not shutdown after OptionalLong[15000] milliseconds

MULE-16580

Spring Bean 3.1 XSD definition being downloaded instead of taken from the classpath

MULE-16577

Parse Template not parsing correctly when expression manager returns value with # char

MULE-16571

Externalize log4j2.xml file in Mule 4 domain descriptor cannot be cast to application descriptor

MULE-16545

Exception ignored in Operators#nullSafeMap

MULE-16540

AuthorizationCodeState not updated on certain circumstances

MULE-16524

Before method is not called for interception API when having RequiredParameterValueResolvers with failing expression

MULE-16519

Avoid propagating InterruptedException in processingStragy dispose

MULE-16514

Persistent Partiion Store should delete partiition directory on dispose

MULE-16503

Found modules names not being logged by DefaultModuleRepository

MULE-16500

Janitor must be closed so that taken byte arrays are freed when ghostbuster applied

MULE-16483

Mule Domain is not disposing its RegionClassLoader

MULE-16480

Incorrect behavior of Logger component when handling backslashes

MULE-16455

Name attribute on flow-ref is missing after deserializing from XML

MULE-16449

NoSuchElementException on policies with SDK routers

MULE-16437

Improve ExtensionClient performance

MULE-16435

Extension operations logging in domain instead of app

MULE-16422

MuleArtifactClassLoader does not find resources with spaces when using resource

syntax.

MULE-16396

OnErrorPropagate should only rollback owned transactions

MULE-16330

Logging consumes too much CPU

MULE-16320

Remove overhead in event/message creation handling in policies

MULE-16319

Container classloader in embedded mode must have the embedded container classloader as parent

MULE-16314

NPE if object store is expired without maxEntries limit

MULE-16310

Backpressure strategy for scheduler sources must be FAIL

MULE-16308

Local authentication doesn’t prevail when there’re multiple "WWW-Authenticate" headers

MULE-16307

Reconnection Strategy model doesn’t communicate the "Blocking" parameter

MULE-16298

Redeployment fails due to file descriptor leaks when loading class model loader

MULE-16294

Paged Operations doesn’t apply Connection Lifecycle correctly

MULE-16283

Add JDK cryptography extension explanation for Secure Properties Tool doc

MULE-16282

ProcessingStrategies not working when scheduler raises REE

MULE-16275

Fix performance degradation introduced by MULE-16040

MULE-16260

Gatekeeper policy causes memory leak on policy engine

MULE-16259

LazyMuleArtifactContext leaves schedulers not stopped when using sub-flows

MULE-16248

on prem removal of .anchor file doesn’t delete application from /apps folder on Windows

MULE-16230

VersionFormatArtifactDescriptorValidator fails due to MavenBundleDescriptorLoader is not considering the effective pom model to read the version property

MULE-16221

HTTP:CONNECTIVITY error thrown from WSC hangs execution in CompositeProcessorChainRouter

MULE-16219

idempotent-message-validator does not generate a unique ID per component

MULE-16218

Interception API: Smart connectors inside subflow are not skipped properly

MULE-16208

Find resources is not taking into account lookup of files by directory

MULE-16205

IdempotentRedeliveryPolicy blocks CPU_LITE thread

MULE-16198

Deployment for app with HTTP fails when no internet connection

MULE-16185

Lazy Init: NPE when initializing subflow twice with until-successful

MULE-16172

Invalid extension model/xsd generated for enum

MULE-16159

ProcessingStrategy internal bufferSize is always 256 for flow-ref

MULE-16140

Source On Error callback is not called when an error occurs on the OnError Flow Handlers

MULE-16103

Wrong key name is generated by the icons service in Windows

MULE-15994

Executions inside Async scope uses Ring Buffer Threads

MULE-15991

No transformers for Iterator to byte[] or String cause error

MULE-15976

Backpressure: WAIT strategy does not work with WorkQueueProcessor

MULE-15932

System dependent line separators should be used for building Mule exception summary message

MULE-15861

Artifact declaration looses Mule "object" elements

MULE-15860

Extension model for Mule core does not contain 'object' construct

MULE-15599

Serializing an artifact model constructed from serializing a JSON loses data

MULE-15574

Mule Runtime fails to run batch jobs after stopping app while debugging

MULE-15460

Shared dependencies' dependencies are not shared

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

Avoid casts to String in JdbcMapStore

EE-6680

Escape table names in DefaultDatabaseStoreQueryBuilderStrategy

EE-6670

Setting Batch History property throws org.springframework.beans.NotWritablePropertyException: Invalid property 'annotations'

EE-6664

Shutting down cluster node(s) causes data corruption in JdbcMapStore

EE-6579

Event states leaked in DefualtPolicyStateHandler

EE-6565

NoSuchElementException on mule-http-caching-policy

EE-6558

Mule 4 AMQP Listener scenario stops working after a few seconds

EE-6377

Batch Aggregator does not support JSON Payload

AGW-3213

Fix UriBuilder causing class not found

AGW-3142

Upgrading policy version is not using new policy jar

AGW-3074

Differentiate between ldap’s server wrong password and invalid credentials

AGW-3010

Change Max Cache Size for Federation Policies

AGW-2927

Change policyId sent to analytics from an Integer to a String

AGW-2852

Add local contract database reset in case of corruption.

AGW-2848

When GateKeeper enabled, and a POST / PUT is sent, payload is echoed

AGW-2826

NullPointerException when disposing runtime in secondary node

AGW-2810

Content-Length header is not used in Analytics payload size

AGW-2794

IP not being sent to analytics with latest HTTP Connector

AGW-2707

NullPointerException when shutting down secondary node

AGW-2485

Reflection used in Analytics is hurting performance

DataWeave

  • Fix (PR #423): Optional should be supported in expected data type and Java bridge.

  • Add a property for escaping carriage return (CR) in the XML writer.

  • Fix (SE-11717): char carriage return (CR) should not be escaped in XML.

  • Fix (SE-11664): Bug in indexed XML reader parsing root elements with only text.

  • Fix (SE-11527): Support for dynamic namespace.

  • Fix (SE-9379): Issue that causes the deletion of file. Error was dw-buffer-output*.tmp FileNotFoundException.

  • Fix (SE-11246): Avoid file leak.

  • Fix (PR #401): Propagate multipart schema properties.

  • Fix (SE-10844): Always use UTF-8 when loading weave files.

  • Fix (SE-10706, PR #391): Dataweave expression in logger failing under high load.

  • Fix: Replace mutable.HashMap with ConcurrentHashMap in JavaBeanHelper.

  • Fix: Avoid memory leaks on logger and Mule typed values.

  • Fix: Avoid file leaks.

  • Fix (SE-10548): Improve distinctyBy memory usage: (1) Make it lazy. (2) Don’t materialize in advance the entire input.

  • Fix: Boolean support for header names.

  • Fix (PR #381): Excel reader issue when reading Boolean values.

  • Fix (SE-9664): Type inference problem was throwing empty.reduceLeft exception.

  • Fix (PR #358): Related to PROJECTX-4033. Error when setting literals to root arrays. `

Scheduler Service

  • NPE when a customScheduler is shutting down itself. (MULE-16760)

  • WARN logged when fixed rate task overlap in a single thread Scheduler. (MULE-16759)

  • Race condition in ThreadGroup destroying for customScheduler threadGrou. (MULE-16516)

  • Setting low heap memory in multicore machine causes Mule to fail to start. (MULE-16829)

  • Race condition in prestartCoreThreads for a Scheduler. (MULE-16858)

Oauth Service

  • Reuse http clients for OAuth token request (MULE-17006)

  • AuthorizationCodeState not updated on certain circumstances (MULE-16540)

MULE-16990

Improve troubleshooting logging for XA transaction

MULE-16954

Improve logging infrastructure performance

MULE-16881

migrate app deployment file to 4.1

MULE-16851

Implement CompositeConverter#toString to aid in transformers troubleshooting

MULE-16755

ObjectStore expire: account for inconsistencies that may occur in cluster

MULE-16569

TestConnectivity should be less verbose

MULE-16529

Performance improvements in flowstack

MULE-16445

XML SDL: Support camelized names in operations

MULE-16212

Avoid copying the whole event when just setting internal variables

MULE-14161

Add logging on the smart connector’s code

MULE-16713

Support application/java payloads in redelivery-policy

MULE-16395

Remove MetaspaceSize property from wrapper.conf to let JVM manage Metaspace GC

EE-6760

Make Bitronix XA connection pool configurable

MULE-17046

Update Raml Parser 2 to 1.0.37

MULE-17021

Upgrade Jackson to 2.9.9

MULE-16833

Optimize resolution of payload and attributes default parameters

MULE-16811

Update dom4j version to 2.1.1

MULE-16808

Update Apache Ant to 1.9.14

MULE-16673

Upgrade JRuby to 9.2.6.0

MULE-16582

Upgrade commons-io to 2.6

MULE-16278

Upgrade c3p0 to 0.9.5.4

MULE-15795

Upgrade Tanuki wrapper to 3.5.37

EE-6736

Update hazelcast to 3.12

EE-6317

Update kryo-serializers to 0.45

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

Was this article helpful?

💙 Thanks for your feedback!