WebSphere Message Broker, Version 8.0.0.7 Operating Systems: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

See information about the latest product version

Preparing graphical data maps on deployment

When the MQSI_PREPARE_MAPS_ON_DEPLOY environment variable is set to TRUE, the behavior of graphical data maps used in the flow Mapping nodes is altered.

From WebSphere® Message Broker Version 8.0.0.4, setting the MQSI_PREPARE_MAPS_ON_DEPLOY environment variable to TRUE alters the behavior of graphical data maps that are used in the flow Mapping node. When this variable is set to TRUE, the graphical data maps are prepared for execution on deployment instead of when the first message is flowed through the node.

Table 1 explains this behavior in comparison to the old behavior.

This behavior has the following advantages:
  • There is no drop in performance from initialization when the first message is flowed through the node.
  • The map and its dependencies, such as any referenced message models, are validated during deployment to ensure that the map runs successfully on first message.
  • All map dependencies, such as a valid message model, must be resolved at deployment for the deployment process to complete.
  • When WebSphere Message Broker is restarted, dependencies are validated before the message flow can be restored.
For more information about setting environment variables, see Setting up a command environment.

The following table compares the behavior of graphical data maps with and without the MQSI_PREPARE_MAPS_ON_DEPLOY environment variable set to TRUE:

Table 1.
Event Not setting MQSI_PREPARE_MAPS_ON_DEPLOY (Default behavior) MQSI_PREPARE_MAPS_ON_DEPLOY set to TRUE
BAR deployment (initial deployment and redeployment) Map resources are persisted to configuration store
  • Map resources are persisted to configuration store.
  • Prepared map persisted to broker configuration store.
  • All maps that are referenced from a Mapping node in the BAR file are prepared for execution. This process requires that all map dependencies, schema, ESQL, Java, and so on, to be present, and that the map does not contain any static errors such as an invalid Xpath expression. If these requirements are not met, the message is rejected with the cause being reported as BIP messages reporting the map generation failure.

Any map that is in the BAR file but is not used (either because the map is in a branch of the message flow that is not executed or because the map is not referenced by a Mapping node), is now validated upon deployment. For the deployment to complete without error, you might need to remove any .map files (from your application, library, or message broker project) if the .map files are not intended for use by a Mapping node that is in the BAR file.

Following deployment No action Background processing is launched to initialize the prepared map resources to be eligible for JIT optimization. The new form is persisted on completion.
First message flowed after deployment or redeployment A specific map that is called from each Mapping node that is invoked by the message is prepared for execution and readied for JIT optimization.

This process requires that all map dependencies, schema, ESQL, Java, and so on, to be present, and that the map does not contain any static errors such as an invalid Xpath expression. If these requirements are not met, the message is rejected with the cause being reported as BIP messages reporting the map generation failure.

The previously prepared map is executed. If the background processing is complete, the JIT optimization starts.
Any subsequent messages flowed after deployment or redeployment If the messages invoke the same Mapping nodes in the flow, the previously prepared map is executed and JIT optimization occurs.

If the message results in a new execution path in the message flow and extra Mapping nodes are encountered, then extra maps must be prepared as previously described in First message flowed after deployment or redeployment.

The previously prepared map is executed. If the background processing is complete, the JIT optimization starts.
Restart of any of the following items:
  • Message Broker
  • Execution group
  • Application
  • Message flow
The deployed map reference is validated.
  • The deployed map reference is validated.
  • A check for the presence of a persisted prepared map:
    • If the map is present, then reload it and prepare for execution and JIT optimization.
    • If the map is not present, the map preparation runs which validates dependencies and checks for static map errors. Failures prevent the owning message flow from being restored. The flow must be redeployed with the resolution of any reported issues before it can be executed.

The first restart after setting the function level results in all maps being prepared, which includes validation.

First message flowed after a restart A specific map called from each Mapping node that is invoked by the message is prepared for execution and readied for JIT optimization.

This process requires that all map dependencies, schema, ESQL, Java, and so on, to be present, and that the map does not contain any static errors such as an invalid Xpath expression. If these requirements are not met, the message is rejected with the cause being reported as BIP messages reporting the map generation failure.

The previously prepared map is executed. If the background processing is complete, the JIT optimization starts.
Any subsequent messages after a restart If the messages invoke the same Mapping nodes in the flow, the previously prepared map is executed and JIT optimization occurs.

If the message results in a new execution path in the message flow and extra Mapping nodes are encountered, then extra maps must be prepared as previously described in First message flowed after a restart.

The previously prepared map is executed. If the background processing is complete, the JIT optimization starts.
Notices | Trademarks | Downloads | Library | Support | Feedback

Copyright IBM Corporation 1999, 2016Copyright IBM Corporation 1999, 2016.

        
        Last updated:
        
        Last updated: 2016-05-23 14:48:26


Reference topicReference topic | Version 8.0.0.7 | br28802_