Nav

Mule ESB 3.4.1 Release Notes

August 2, 2013

MuleSoft is pleased to announce the release of Mule ESB 3.4.1 which offers fixes for issues and improvements to the core Mule ESB product and the Mule Management Console.

These release notes apply to Mule ESB Enterprise. We have applied all of the core changes in 3.4.1 to the Enterprise runtime.

Access one of the following resources to download Mule ESB 3.4.1 Enterprise runtime and take advantage of an improved and hardened Mule ESB.

Document Revision History

August 2, 2013, v1.0 Initial Publication
September 16, 2013, v1.1 Updated to include last seven items on the list of issues Fixed in this Release for Mule ESB; added item to Noteworthy section regarding the CXF upgrade. 

Current Release Version

Enterprise Edition Community Edition

ESB

Version: 3.4.1
Build: 2c620355

n/a

Management Console

Version: 3.4.1
Build: c46abb4463

n/a

Noteworthy

  • Define unicast clusters – the Management Console supports the ability to define clusters which use unicast (as opposed to multicast) from the MMC Web application. 

  • Deploy via REST API – deploy applications to server groups using the Management Console REST API.

  • Embedded deployments – improved support in the Management Console for embedded Mule deployments.

  • Upgraded CXF to 2.5.9 – updated the version of CXF, the framework Mule uses for Web services.

Hardware and Software System Requirements

For most use cases, Mule ESB 3.4.1 does not change the hardware and software system requirements established by Mule ESB 3.4.0.

Please contact MuleSoft with any questions you may have about system requirements.

Important Notes and Known Issues in this Release

This list covers some of the known issues with Mule ESB 3.4.1. Please read this list before reporting any issues you may have spotted.

Mule Management Console

Adding a cluster to a group

If you place a cluster in a server group, you may experience issues with deployments which target the group instead of the cluster directly. 
Workaround: Use the cluster as one of the direct targets of your deployments. If you experience issues, check the apps directory in your Mule server(s) to confirm functionality.

Adding a server to a group

If you add a server to a group via the server details panel (using the settings tab and editing the server info), deployments targeting the group are not transferred to the newly added server.
Workaround: Use the Add to Group button in the server list grid. 

Error Messages

Some error messages in the MMC main window may contain a "See More" link which, when clicked, displays a new window containing only the text null.
Workaround: There is no applicable workaround, but you can safely ignore this issue. 

Fixed in this Release

Mule ESB

Issue Description

MULE-6743

File, FTP, and Mail message factories, sets outbound properties.

MULE-6864

SFTP: Jsch issue in java 1.7 and Kerberos

MULE-6888

Anchor file is created before application is fully deployed

MULE-6944

Thread leak for asynchronous calls in embedded mode

MULE-6874

Memory leak with dynamic endpoints

MULE-6871

DefaultMuleSession got broken between mule 3.2 and 3.3

MULE-6849

ReplyToDestination is not properly configured in some scenarios

MULE-6831

Applications deleted when deployment fails

MULE-6816

Shutdown timeout is not respected

MULE-6560

Incorrect value in recommended JDK version checking

MULE-6947

flow names with slashes (/) break MPs notification paths

MULE-6947

flow names with slashes (/) break MPs notification paths

MULE-6959

Race condition creating MVELExpressionLanguage instances

MULE-6858

Filename-wildcard filter to fails with SFTP

MULE-6887

Duplicating instanceName in quartz connectors cause weird application failures

MULE-6884

HTTP/HTTPS Connectors: tcpNoDelay

MULE-6882

TCP Outbound Endpoint ignores responseTimeout

MULE-6880

FTP responseTimeout has no effect

MULE-6853

Sftp does not support files with no extension when using tempDir and useTempFileTimestampSuffix

MULE-6833

GZip transformer failing

MULE-6829

cxf_operation is wrong when using proxy-client of a soap 1.1 request

MULE-6791

Jetty inbound endpoint configured with useContinuations="true" sets http.method as outbound rather than inbound

MULE-6790

File transport sets the Directory attribute incorrectly

MULE-6785

HttpDateTestCase fails when run in some time zones

MULE-6783

HTTP inbound keep-alive attribute not overriding the keepAlive attribute of HTTP connector

MULE-6564

Using cxf:configuration element prevents generation of WSDL on JAXWS SOAP component

MULE-6559

Wrong messages on JDK version validation

EE-3314

Bootstrap script doesn’t recognize whether Windows is running in 32 or 64 bits

EE-3232

Misleading class loader exception in mule

MULE-6870

HTTP Patch body is ignored

MULE-5685

Unformatted log line when a property is optional

EE-3317

Running the same mule.bat from two terminals shouldn’t be possible

EE-3316

Bootstrap script doesn’t recognize whether the AIX kernel is running in 32 or 64 bits

EE-3315

Bootstrap script doesn’t recognize Linux running on System z (IBM Mainframe)

EE-3199

Starting Mule Standalone EE on Mac OS 10.6 with i7 processor runs with wrapper-macosx-universal-32 instead of 64

EE-3273

Remove ReplyToParameterProcessor from internalMessageProcessorNames list

MULE-6827

JDBC transport complains about invalid expression template #[payload]

MULE-6954

Merge 3.4.1 changes from ASR from Dynamic Round Robin

MULE-6848

Improve JdbcTransactionFactory to support multi transactions

MULE-6825

Make loggin less verbose in CompositeApplicationClassLoader

MULE-6818

Fix HttpDateTestCase failure when running locally

MULE-6796

Allow MEL expressions in cxf:property of cxf:ws-config

MULE-6794

CXF WS-Security - SecurityContext is not set after successful authentication

MULE-6788

Upgrade CXF to 2.5.9

DataMapper

Issue Description

EE-3347

Data mapper is shutting down when two or more apps are using it and one is undeployed.

EE-3348

Fix width output doesn’t work with Shift-JS encoding

EE-3349

Concurrent mapping might cause an NPE within the MVELExpressionLanguage

STUDIO-3301

Data Mapper JDBC connectiondid not recover on its own

EE-3350

Load Mapping Files From ClassPath 

EE-3351

Avoid Closing resource when is not needed 

EE-3352

JSON Reader does not recover from an exception

Mule Management Console

Issue Description

MMC-1296

Basic configuration with LDAP is firing “An item with the name …​ already exists”. 

MMC-1308

Max nodes in cluster is 8. Allow cluster creation when a single node is registered. Enforce MAX nodes in cluster limit for cluster creation for consistency with adding nodes functionality. 

MMC-1295

Active button in alert definition still firing alerts when set to deactivated

MMC-1302

Add certificate to old agents to avoid issues with MMC 3.4 grouping different Mule versions

N/A

adding filter by cluster name to deployment panel

SE-64

Allow deployment creation using server groups

SE-59

REST APIDeployments: Add a filter by cluster id on LIST ALL operation

SE-34

In a Mule application embedded deployments when clicking on flow in mmc an error occurs

SE-75

Deployment actions are always logged as System in the MMC audit log

MMC-1491

Disallow creating clusters with nodes of different mule versions

MMC-1439

Provide ability to create clusters without multicast support through MMC

MMC-1548

Error in Quartz script for MySQL in latests versions of MySQL, new script can be used from MySql 4.1.

MMC-1403

On Rest API, when a deployment is created using application names, deployment creation is not successful.

Third Party Connectors and other modules

At this time, not all of the third party modules you may have been using with previous versions of Mule ESB have been upgraded to work with Mule ESB 3.4.1. Contact MuleSoft if you have a question about a specific module.

Migrating from Mule ESB 3.4.0 to 3.4.1

The improvements and fixes that Mule ESB 3.4.1 introduces require no specific migration activities for Mule ESB or Mule Management Console. For more details on how to migrate from previous versions of Mule ESB, access the migration guide embedded within the release notes for previous versions of Mule, or the library of legacy Migration Guides.

View the instructions for migrating MMC from version 3.3.1 to 3.4.1

Migrating from MMC v.3.3.1 to v3.4.1

Migrating from 3.3.1 version of MMC to 3.4.1 encompasses a list of steps. In versions 3.3.x and below, the agent MMC uses to interact with the Mule instances is a Mule application, whereas in 3.4.X it is a Mule plugin. If you are managing Mule instances with versions 3.3.1 or below, and you are not willing to upgrade those instances, you will need to upgrade the agent application to the latest version as it is the only one compatible with later versions of MMC.

In Mule:

  1. Remove mmc-agent-mule3-app-3.3.1 folder and -anchor file from your Mule’s apps directory.

  2. Back up .mule/mmc-agent-mule3-app-3.3.1/trustore.jks and .mule/mmc-agent-mule3-app-3.3.1/.instanceId files.

  3. Remove .mule/mmc-agent-mule3-app-3.3.1 folder.

  4. Download and copy the mmc-agent-mule3-app-3.3.3.zip file into the apps folder of your mule.

  5. Create a mmc-agent-mule3-app-3.3.3 folder under .mule directory and copy the previously backed up trustore.jks file.

  6. Start Mule.

For MMC:

  1. Back up the mmc-console-3.3.1/WEB-INF/classes/META-INF folder from your exploded WAR file (to save configuration that you may need to replicate in the new MMC version).

  2. Back up /apps/mmc/webapps/mmc/WEB-INF/classes/mmc-ldap.properties if exists.

  3. Remove mmc-console-3.3.1 from your application server. For example, in tomcat, remove the war and exploded folder from the webapps directory.

  4. Back up (just in case) the mmc-data folder (in tomcat, it’s at straight below the root folder). Do NOT remove this directory.

  5. Copy the new 3.4.1 WAR and start the app server (if it was not started yet).

At this point you should see all your information in the new MMC if you are using all the MMC defaults. Refer to the next sections if you have customized any aspect (externalized persistence, authentication through ldap, etc)

Migrating Persistence Configuration

If you have externalized the persistence of status/environment data or business events (tracking data), you will need to replicate the configuration in the new MMC version.

Migrating Status/Environment Configuration

Copy the configuration from the previously backed up files. Look at this guide to determine the list of changes you need to copy over. Do not override the files with the old ones. Only jackrabbit-repo.xml can be safely overwritten.

You need to modify the following files to include the connection parameters:

mmc.properties
applicationContext.xml
jackrabbit-repo.xml
scheduler.properties

You also need to copy the corresponding driver into the lib folder of the application. Follow the instructions in the documentation page for the appropriate db engine.

You need to restart the application for these changes to take effect.

Migrating Business Events (Tracking) configuration

You need to copy the configuration from the previously backed up files. Look at this guide to determine the list of changes you need to copy over. Do not override the files with the old ones. Only jackrabbit-repo.xml can be safely overwritten.

You need to modify the following files to include the connection parameters:

persistence.xml
applicationContext-tracking.xml

You also need to copy the corresponding driver into the lib folder of the application. Follow the instructions in the documentation page for the appropriate db engine.

You need to restart the application for these changes to take effect

Migrating LDAP configuration

  1. Copy the file /apps/mmc/webapps/mmc/WEB-INF/classes/mmc-ldap.properties you have previously backed up to the same location of the expanded application.
    If such file does not exist, copy the ldap.xml file under the backed up META-INF directory to the same location in the newly exploded war.

  2. Open Web.xml file and locate this section:

    <param-name>spring.profiles.active</param-name><param-value>tracking-h2</param-value>

    modify the second line to:

    <param-value>tracking-h2,ldap</param-value>
  3. Restart the application.