Broker properties accessible from ESQL and Java

For an overview of broker properties, see Broker properties.

The following table shows the broker, flow, and node properties that are accessible from ESQL. The table's fourth column indicates whether the properties are also accessible from Java nodes.

If a property is listed as being accessible from Java nodes (fourth column), it is accessible from Java nodes only, not from Java routines called as ESQL functions or procedures.

Property type Property name Return type From Java nodes? What is it?
General broker properties 4 BrokerDataSourceUserId Character Yes. 1 The data source user ID used by the broker.
BrokerDataSource Character No. The ODBC Data Source Name (DSN) of the database that contains the broker's tables.
BrokerName Character Yes.2 The name of the broker.
BrokerUserId Character No The user ID that the broker uses to access its database tables.
BrokerVersion Character No The 4-character version number of the broker (see BrokerVersion below).
ExecutionGroupLabel Character Yes.3 The label of the Execution Group (a human-readable name).
ExecutionGroupName Character No The name of the Execution Group (often a UUID identifier).
Family Character No The generic name of the software platform that the broker is running on ('WINDOWS', 'UNIX', or 'ZOS').
ProcessId Integer No The process identifier (PID) of the DataFlowEngine.
QueueManagerName Character Yes.5 The name of the MQ queue manager to which the broker is connected.
WorkPath Character No. The (optional) directory in which working files for this broker are stored.
Flow properties AdditionalInstances Integer No The number of additional threads that the broker can use to service the message flow.
CommitCount Integer No How many input messages are processed by the message flow before a syncpoint is taken.
CommitInterval Integer No The time interval at which a commit is taken when the CommitCount property is greater than 1 (that is, where the message flow is batching messages), but the number of messages processed has not reached the value of the CommitCount property.
CoordinatedTransaction Boolean Yes.6 Whether or not the message flow is processed as a global transaction, coordinated by WebSphere MQ.
MessageFlowLabel Character Yes.7 The name of the flow.
Node properties DataSource Character No The ODBC Data Source Name (DSN) of the database in which the user tables are created.
DataSourceUserId Character No The user ID that the broker uses to access the database user tables.
MessageOptions Integer (64-bit) No The bitstream and validation options in force.
NodeLabel Character Yes.8 The name of the node.
NodeType Character No The type of node (Compute, Filter, or Database).
ThrowExceptionOnDatabaseError Boolean No Whether the broker generates an exception when a database error is detected.
Transaction Character No The type of transaction (Automatic or commit) used to access a database from this node.
TreatWarningsAsErrors Boolean No Whether database warning messages are treated as errors and cause the output message to be propagated to the failure terminal.

Notes:

  1. Accessible through:
    1. MbNode.getBroker()
    2. MbBroker.getDataSourceUserId()
  2. Accessible through:
    1. MbNode.getBroker()
    2. MbBroker.getName()
  3. Accessible through:
    1. MbNode.getExecutionGroup()
    2. MbExecutionGroup.getName()
  4. The only broker-defined properties that can be used in a Trace node are those in the "General broker properties" group. For example, you could specify the Pattern setting of a Trace node as:
    #### Start Trace Input Message
      Time: ${CURRENT_TIMESTAMP}
      Broker: ${BrokerName}  Version: ${BrokerVersion}  Platform: ${Family}
      ProcessID: ${ProcessId}  BrokerUserId: ${BrokerUserId}
      ExecutionGroupLabel: ${ExecutionGroupLabel}
      Transaction: ${Transaction}
      Root Tree: ${Root} 
    #### End Trace Input Message
  5. Accessible through:
    1. MbNode.getBroker()
    2. MbBroker.getQueueManagerName()
  6. Accessible through:
    1. MbNode.getMessageFlow()
    2. MbMessageFlow.isCoordinatedTransaction()
  7. Accessible through:
    1. MbNode.getMessageFlow()
    2. MbMessageFlow.getName()
  8. Accessible through MbNode.getName()

BrokerVersion

The BrokerVersion property contains a 4-character code that indicates the version of the broker. The code is based on the IBM Version/Release/Modification/Fix pack (VRMF) product-numbering system. The VRMF code works like this:
V
The Version number. A Version is a separate IBM licensed program that usually has significant new code or new function. Each version has its own license, terms, and conditions.
R
The Release number. A Release is a distribution of new function and authorized program analysis report (APAR) fixes for an existing product.
M
The Modification number. A Modification is new function added to an existing product, and is delivered separately from an announced Version or Release.
F
The Fix pack number. Fix packs contain defect and APAR fixes. They do not contain new function.

A fix pack is cumulative: that is, it contains all the fixes shipped in previous maintenance to the release, including previous fix packs. It can be applied on top of any previously-shipped maintenance to bring the system up to the current fix pack level.

Related concepts
Broker properties
Related tasks
Accessing broker properties from ESQL
Accessing broker properties from the JavaCompute node
Creating a user-defined extension in Java
Related reference
ESQL-to-Java data-type mapping table
Related information
Java API for user-defined nodes