Contact Us 1-800-596-4880

Mule Runtime 4.1.5 Release Notes

Initial Release: Dec 12, 2018

Mule Runtime 4.1.5 includes enhancements, fixes, and patch releases.

New Features and Enhancements

For API Gateway, this patch version improves outage management when only Contract Service is down and also add small performance improvements, by not resolving unused Spring schemas from Internet.

Changes

Not applicable.

Known Limitations and Workarounds

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

March 2021

Patch release version: 4.1.5-20210222

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

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

February 2021

Patch release version: 4.1.5-20210118

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

The February update addresses the following issues:

Issue Description

MULE-16897/SE-11776

Fixed issue where Mule 4 AMQP connector was not switching connections when one of the nodes in cluster went down.

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

DataWeave: Fixed an issue where using UTF-8 to load core modules as Crypto::hashWith was not working on Windows.

SE-11527

DataWeave: Added support for dynamic namespaces.

SE-12035

DataWeave: Added support for java.util.Optional as an expected DataType for the expression language.

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

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

The January update addresses the following issues:

Issue Description

MULE-18922

Fixed an incompatibility that occurred when migrating to jdk8u265-b01.

MULE-16982, SE-18610

Fixed an issue that raised an ArrayOutOfBoundException exception during the creation of a custom scheduler.

SE-11246

Fixed improperly closed streams to avoid file leaks in DataWeave.

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 in the FlatFile module.

November 2020

Patch release version: 4.1.5-20201019

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

The November update addresses the following issues:

Issue Description

SE-13782/MULE-17469

Resolved an issue with high memory consumption caused by excessive references to the org.mule.runtime.config.internal.model.ApplicationModel class.

SE-12121/MULE-16994

Fixed an infinite recursion issue that occurred with high throughput, which caused high CPU consumption.

SE-10518/MULE-16314

Removed repeated and unneeded WARN message that referenced the org.mule.runtime.core.internal.util.store.MonitoredObjectStoreWrapper class.

SE-10694/MULE-16435

Resolved a problem with logging configuration in which the logger wrote to the wrong file.

SE-13838/EE-7164

Fixed the Can’t create new contexts after factory is closed error message that occurred after restarting an application.

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.

EE-7268

Fixed a memory leak that occurred when restarting batch applications.

October 2020

Patch release version: 4.1.5-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.

EE-7097/SE-11533

Fixed a problem in which a console log message displayed two lines for the same completed batch job.

SE-17812

Fixed a problem that caused the following error:

No qualifying bean of type org.mule.runtime.module.extension.internal.runtime.client.strategy.ExtensionsClientProcessorsStrategyFactory.

September 2020

Patch release version: 4.1.5-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-17863/SE-13533

Resolved an issue in which MUnit tests did not run reliably in a Windows environment when started from the command line or Jenkins due to improper file cleanup.

SE-12095

Fixed a problem in which MUnit didn’t invoke the Mock When processor within a Choice flow (the REST service was invoked instead).

SE-12167

Resolved an issue invoking MUnit mocks when using with-attributes with a custom REST connector.

SE-11241

Fixed MUnit test execution failures that occurred when using validation:all, which were caused by an internal NullPointerException.

MULE-16230/SE-10165

Resolved an issue with Maven 3.5.0 and later placeholders (${revision}, ${sha1}, and ${changelist}) when used with the MUnit Maven plugin.

MULE-16483/SE-10782

Fixed an issue with deleting the HTTP config dependency file when undeploying domains on Windows systems.

EE-7358/SE-12434

Fixed an issue with undeployment when deleting the application <app-name>-anchor.txt file on Windows systems.

EE-6830/SE-12284

Fixed an issue that marked tracking processors (tracking:custom-event and tracking:transaction) as KNOWN instead of OPERATION, which caused MUnit not to intercept them.

SE-9559

Fixed an issue in which redeployment failed when using the Mule Secure Configuration Properties Extension module on Windows systems.

July 2020

Patch release version: 4.1.5-20200622

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

The July update addresses the following issues:

Issue Description

AGW-4199

Fixed an error when trying to access Gatekeeper and Analytics policy templates in CloudHub Mule 4.x runtimes.

MULE-18506, SE-16470

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

SE-14114

Fixed an issue in which the DataWeave stream failed to serialize.

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

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

This patch release consolidates fixes to Mule 4.1.5 since the initial release on Dec 12, 2018. 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.

SE-12023

Fix custom policies reusing class loader between versions.

SE-11887

Fix class loading isolation issues when initializing apps.

SE-14946

Fixed the error Failed to read geo directoryjava.nio.file.NoSuchFileException that appeared after deploying an application.

AGW-3949

Reduced log levels for API Gateway recoverable errors.

MULE-17706

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

SE-13580

Fixed a NullPointerException that occurred with patch SE-12807-4.2.1-1.0 applied.

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

Fixed an issue in which overriding encrypted properties failed when referenced from within a properties file in datasource definition

SE-13124

Fixed the KryoException (Could not deserialize object) error

SE-11445

HTTP Request Connector was not honoring the queryParameter order.

SE-12626

SFTP Connector was not reconnecting after JSchException error.

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 100% CPU usage issue due to HTS service.

SE-13118

Fixed inconsistent property loading.

SE-12776

FTPS connector is not reusing connection from the pool.

SE-12279

A nonexistent file path causes SFTP "Connection pool is exhausted" error.

SE-13047

Deadlock when submitting parallel requests.

SE-13095

Inbound metrics do not appear for app.

SE-12906

Fix memory leak on PolicyStateHandler for error scenarios

SE-12832

Inbound Metrics are missing for app in Anypoint Monitoring.

SE-12772

Try scope with transactions forces all components to execute on CPU_LITE threads.

SE-12807

Cannot open a new cursor on a closed stream inside a for-each scope.

SE-12451

IllegalStateException on batch job with concurrency.

SE-11664

Fixed inconsistent DataWeave transformations called via a SOAP router when executed across Linux and Windows operating systems.

SE-12345

Strings with special characters are not being logged correctly.

SE-10506

Out of Memory in Metaspace when redeploying application.

SE-12495

Extensions configuration being leaked over time.

SE-11308

Update OSv2 plugin to version 4.0.22 using POST method instead of PUT for store requests.

SE-12028

OAuth Module for HTTP Requester is leaking threads.

SE-12397

Unlabelled endpoint is shown within the Monitoring dashboard.

SE-11261

IBM MQ listener receiving REPLY_TO queue header message unable to reconnect after the queue manager restarts.

SE-11599

NullPointerException when running Mule applications with batches and persistent queues enabled in CloudHub.

SE-9826

Batch job corrupted when debugging app

SE-12023

Fix custom policies reusing class loader between versions.

SE-11887

Fix class loading isolation issues when initializing apps.

SE-8085

Sporadic NullPointerException in Grizzly ClientHttpResponseImpl.getProcessingState()

SE-11666

Accept-Expression in Batch job not evaluated correctly

SE-11450

JMS consumer stops consuming messages after the stop/start flow operation

SE-10302

HTTP Listener discloses full URL in error response.

SE-11483

Fix NullPointerException reported in the logs by some connectors when the Monitoring feature is enabled.

SE-11390

Unclosed stream causes memory leak in foreach loop

SE-10687

Degraded performance when using a Custom Transport Configuration in Web Service Consumer

SE-9379

Fixed an issue that resulted in a FileNotFoundException error while executing a DataWeave expression in large-batch scenarios, which was caused by prematurely closing the content stream.

SE-10706

Fixed an issue in which a DataWeave expression used to display information via the Logger component failed on high load scenarios.

SE-10583

Batch fails in CloudHub with persistent queues enabled.

SE-10940

Incorrect handling of backslashes in logger component.

SE-10038

NullPointerException when MUnit tries to dispose of object after test.

SE-10867

Context does not contain key error shown in the logs.

SE-10742

Address incomplete fix of performance degradation caused by high volume of logging.

SE-10742

ThreadLocal configuration causes performance degradation.

SE-10343

Salesforce Marketing connector throws token expired exception.

SE-10641

Gatekeeper policy causes memory leak on policy engine.

SE-10548

DataWeave distinct operation runs out of memory with a large collection.

SE-10638

High CPU usage on DataWeave transformation causes the worker to stop processing.

SE-10212

Source error callback is not called when an error is caught in error handler.

SE-10226

ProcessingStrategy internal bufferSize is always 256 for flow-ref.

SE-10306

IdempotentRedeliveryPolicy blocks CPU_LITE thread.

Initial 4.1.5 Release

Release date: Dec 12, 2018

The initial release of Mule 4.1.5 includes the following fixes:

Issue Description

MULE-16186

ToolingApplicationDescriptorFactory is not setting the class loader model descriptor to the builder

MULE-16165

FlowListener#onComplete() should await for root completion

MULE-16130

transaction-manager not being lazy initialized

MULE-16110

Use the UUID api instead of the library directly in test

MULE-16109

Tooling Applications should delete the applicationDataFolder when disposed

MULE-16040

Backpressure is not triggered by saturated CPU_INTENSIVE threadPool

MULE-16037

JreExplorer no properly determines JRE libs in Java 11

MULE-16034

Http uriParams are represented as MultiMap instead of HashMap

MULE-16033

ArtifactCopyNativeLibraryFinder fails when copyNativeLibrary is executed if the artifactTempFolder contains a space

MULE-16025

App directory is deleted in undeployment

MULE-15981

MEL fails to evaluate eventless expressions

MULE-15944

Remove log message when classloader doesn’t find AWS class

MULE-15942

500 returned for scheduler busy in policy

MULE-15940

Interception: Processing a chain in 'before' causes null parameters

MULE-15933

File connector fails to recreate the input stream to a file when reconnection occurs in following components

MULE-15908

Persistent ObjectStore doesn’t regenerate the partition descriptor file after a clear

MULE-15886

Mule 4.x Shell Script doens’t pass environment variables to /sbin/runuser call

MULE-15864

Terminated Event instances are kept in memory

MULE-15854

Error mappings should be auto created when lazy context is used

MULE-15848

MetadataComponent is OUTPUT_ATTRIBUTES when failing in OutputTypeResolver

MULE-15846

ArtifactClassLoaderRunner - Keep latest version of services only when more than one version for a service is discovered by transitive dependencies

MULE-15835

Invalid XML generated for artifact declaration

MULE-15822

Resource is not found when declaring extension in domain project

MULE-15804

Can’t neither un-deploy nor redeploy app that depends on a custom lib on Windows

MULE-15791

Wrong location is resolved for redelivery-policy when nested to http listener

MULE-15777

Relative log config file path should be resolved consistently regardless of the OS

MULE-15775

When using a logger to log a value, its result is evaluated again

MULE-15755

Temporal buffer files contain ${} pattern

MULE-15735

Error resolving value provider from studio when there is a dependency with provided scope

MULE-15731

Policy can not contain duplicated plugin with greater version than the app’s one

MULE-15728

Resource is not found when declaring extension in domain project.

MULE-15705

Configuration#defaultResponseTimeout not being initialized with lazyInit

MULE-15694

Variables and Payload values set inside UntilSuccessful are not propagated outside of it in case of retry exhausted

MULE-15689

Cannot deserialize with a null classloader

MULE-15655

MVELExpressionLanguage breaks if a value of any binding context typed value is null

MULE-15629

All XML elements on Mule configuration files should support annotations

MULE-15616

Failed to get method by reflection in DefaultResourceReleaser

MULE-15582

Error logs when starting and stopping mule

MULE-15496

Default Trust Manager Algorithm is equal to the Default Keystore Algorithm

MULE-15471

Test infrastructure assumes only one service per artifact

MULE-10246

TransformerWeighting violates transitivity requirement for Comparable

MULE-15924

Miscellaneous performance improvements for proxy scenario

EE-6455

race condition on batch jobs with consumable variables

EE-6435

bti:transaction-manager not being lazy initialized

EE-6421

On step commit cursor providers are incorrectly closed

EE-6395

Batch process deadlock on nested batch jobs

EE-6372

Mule.bat in windows set the WRAPPER_WORKING_DIR incorrectly

EE-6371

Streams eagearly closed in batch:aggregator

EE-6329

Bug in DataWeave access of XML payloads

EE-6318

SynchronizedCollectionsSerializer doesn’t synchronize iteration

AGW-2715

Restarting runtime with contracts is deleting them till next polling cycle

AGW-2592

When sending analytics events, client IP in some cases is sent as hostname instead of valid IP address.

AGW-2591

Unused spring schemas are being resolved from Internet

AGW-2571

Requester in a sub-flow is not processing operation policies

AGW-2457

Cannot deserialize with a null classloader

DataWeave

  • Avoid duplicating namespace when using default namespace

  • Fixes issue with using write function with different charset than the host machine

  • Fix multivalue selector over array was not correctly inferred

  • Fix groupBy signature on objects

  • Improve how memory on string representation as data source on read function

  • Fix order of parameter where inverted for hmac function. Fix the signature to keep compatibility

  • NullPointerException reading Excel file

  • Make flatten stream friendly

  • Allow java module loader to invoke empty constructors

  • Exception while trying to write value as XML

  • AST nodes should retain info about being bracket or dot selectors

  • Fix importing mapping scripts should add implicit inputs

MULE-16038

Allow MavenTestUtils to pass system properties to a maven build

MULE-15764

Enhance RequestMatcherRegistry

MULE-15760

Allow SDK sources to implement Initialisable and Disposable

MULE-15741

Cache results of frequently calculated values

MULE-15701

Add a timestamp to the flowstacks containing its creation date

MULE-15575

ArtifactDeclaration has no type information for simple parameter values

Compatibility Testing Notes

Mule was tested on the following software:

Software Version

JDK

JDK 1.8.0 (Recommended JDK 1.8.0_151/52)

OS

MacOS 10.11.x, HP-UX 11i V3, AIX 7.2, Windows 2016 Server, Windows 10, Solaris 11.3, RHEL 7, Ubuntu Server 16.04

Databases

Oracle 11g, Oracle 12c, MySQL 5.5+, DB2 10, PostgreSQL 9, Derby 10, Microsoft SQL Server 2014

The unified Mule Runtime 4.1.5 and API Gateway is compatible with APIkit 1.1.8.

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