Welcome to the xMatters community!

We created this site for our customers and partners and we encourage you to explore, engage, and learn. To ensure that this community is fun and helpful, professional and respectful participation is expected... and troll-like behavior won't be tolerated.

Changes to patch contents

Previous patches introduced some changes to the installation procedures and addressed a known issue. If you are upgrading from a version prior to 5.1 patch 007, it is highly recommended that you review the patch notes for that release before proceeding.

Updates and Features

In addition to all of the updates available in the previous release (version 5.2.1), this release of the Integration Agent includes the following:

A fix for a long-standing issue that was causing some Integration Agents to fail when a specific component ran out of resources. (INTA-61794)

A security patch to address a case where it was possible to see passwords in plain text when running the Integration Agent heartbeat utility in DEBUG mode. (INTA-5174)

The following instructions explain how to apply this update as a patch to an existing deployment.

Configuration file changes

The following files have been modified in this or other recent releases of the Integration Agent, and older versions of these files are incompatible with the current release:

File

Incompatible Versions

IAConfig.xml

5.1.2 and older

deduplicator-filter.xml

5.1.2 and older

mule-config.xml

5.1.6 and older

spring-config.xml

5.1.6 and older

wrapper.conf

5.1.2 and older

If you are upgrading from an older Integration Agent and have customized or modified these files, your changes must be manually migrated into the new files.

Files included with this release:

integrationagent-5.2.2-<platform>.[zip | tgz]

Because the xMatters Integration Agent does not include an installer, patching an existing Integration Agent installation requires only that you extract the latest version of the Integration Agent archive onto your server, and then migrate selected files from your existing deployment. This ensures that you will have a working Integration Agent to fall back on if you encounter complications while configuring the new version.

NOTE: This release of the Integration Agent includes changes to the mule.sh file. If you have modified this file, you will need to merge your changes with the file included in the patch.

To patch the Integration Agent:

Extract the new Integration Agent folder from the archive to the root of your xMatters installation.

The result will be a new folder (typically c:\xmatters\integrationagent-5.2.2 or /opt/xmatters/integrationsagent-5.2.2, referred to in these release notes as <IAHOME>).

We will refer to the base folder of your old integration as <Old-IA>.

Navigate to the new <IAHOME>/conf directory, and backup the following files:

Copy IAConfig.xml to IAConfig.xml.orig.

Copy deduplicator-filter.xml to deduplicator-filter.xml.orig.

Open the above-named files with a text editor, and then copy any custom settings from the files in <IA-Old>/conf.

If you have customized any other files in your old integration agent's conf folder, merge the customizations over in the same way.

If you are not using the sample communication plan or sample integrated properties, comment out the references in the IAConfig.xml file (the paths including sample-relevance-engine.xml and sample-integrated-properties.xml).

Copy .wspasswd from <Old-IA>/conf.

Navigate to <IAHOME>/integrationservices and copy your integrations from <Old-IA>/integrationservices.

If you have made any changes to the default files in the /integrationservices folder (for example, <IAHOME>/integrationservices/applications/ping-plan/ping-plan.js), back up the new files before merging your modifications to them.

Stop any running Integration Agent processes or services.

Navigate to <IAHOME>/bin and start the Integration Agent (start_console.bat or ./start_console.sh).

Integration Agent utilities

The Integration Agent Utilities bundle (IAUtils) is a collection of scripts and binary code that provides required functionality for many integrations. The bundle is distributed separately from the main Integration Agent installer, but must be installed at the same time. If the IAUtils package is not present when the Integration Agent is started, the start up may fail.

Note: If you are using an integration that requires a specific version of the IAUtils, follow the instructions in the integration guide for that integration.

To install the IAUtils, extract the integrationagent-utils.zip archive file to <IAHOME>, and allow the extracted lib and integrationservices folders to merge with the ones created by the Integration Agent installer.

On Windows systems, the dynamic compilation feature of the Integration Agent will fail if the path contains spaces. If you use or are planning to use this feature, ensure that the integration agent is installed in a path that contains no spaces.

After a single integration service is reloaded by running the iadmin reload command, all web service endpoints for all integration services (not just the service being reloaded) may stop working. This affects the functionality of mobile access requests, direct external service requests, and custom web service requests to all integration services. NOTE: issuing a subsequent iadmin reload all restores the web service endpoints.

(xMatters Reference: BUG-2206)

Messages may continue to be processed after the inbound queues are purged

The iadmin purge command deletes all messages from the inbound/outbound queues of the specific (or all) integration services. Messages that are "in-process" during the purge (e.g., delayed after a retriable exception or actively being processed by input/response action scripting), may remain in the inbound queues and continue to be (re)processed. To work around this issue, either stop the integration agent or suspend the integration service prior to the purge, followed by a restart/resume.

(xMatters Reference: BUG-2180)

Messages may be reprocessed after an integration service is suspended and resumed

Messages that are actively being processed by input/response action scripting during an iadmin suspend are allowed to complete without interruption. However, when a suspended integration service is resumed (either after an iadmin resume command or restart), messages that were being processed during the suspension may be reprocessed. Integrations are designed to handle reprocessing, but this may result in redundant updates (depending on the integration).

(xMatters Reference: BUG-2181)

iadmin purge may periodically fail if the Integration Agent is not running

The iadmin purge command sometimes fails to work when the Integration Agent is not running. This failure is indicated by an entry similar to the following in IntegrationAgentIAdmin.txt>:

2012-08-09 10:00:46,502 [main] DEBUG - The command could not be executed because of the following problem:

java.lang.NullPointerException

at org.apache.activemq.broker.jmx.BrokerView.getQueues(BrokerView.java:185)

NOTE: re-issuing the iadmin purge command often succeeds, as the failure cause is transient.

(xMatters Reference: BUG-2205)

Although APClient.bin reports non-connection related network errors, it does not write the failed submissions to the recovery log.

Setting the parameter in the IAConfig.xml file to "true" will prevent any event injections for all Integration Services using APClient.bin. Note that password-authentication is typically not enabled out-of-the-box for integrations, so the impact of this issue should be very limited.