This topic applies only to the IBM Business Automation Workflow Advanced
configuration.

Deferred response with asynchronous result retrieve

Draft comment:
This topic only applies to BAW, and is located in the BAW repository. Last updated on 2025-03-13 12:15
The ResultRetrieve Application Response Measurement (ARM) statistic can be correlated to some original request using the ARM transactions only if XPARENT-1 and XPARENT-2 have a common ancestor transaction. The invocation of request, and result retrieve occur on different threads

Parameters

Event monitoring for Service Component Architecture (SCA) components includes the event points that are shown in black Black event point, while the event points shown in blue Blue event point are used only to calculate and fire PMI/ARM statistics.

In Table 1 and Figure 1, the current ARM transaction (denoted as X1) is created when the calling service component was invoked for the first time. If the caller is not a service component, the current ARM transaction will be used, or a new one will be created. If it is not the starting transaction it will have a parent. This is represented in the following table and diagram with the notation Xn.Xn+1. These are used to show the transaction lineage. Every SCA invocation starts a new transaction, which is parented by the current transaction of the caller. You can create new transactions and you can access the current transaction, but this will not modify the SCA transaction lineage.
Table 1. Invocation of request and return result
Type Statistics Formula ARM Transaction
Common TotalResponseTime t3 - t0 X0.X1
RequestDeliveryTime t'0 - t0 X1.X2
ResponseDeliveryTime N/A N/A
GoodRequests CountEXIT X1.X2
BadRequests CountFAILURE
ResponseTime See specific diagrams
Reference A GoodReferenceRequest CountEXIT X1.X2
BadReferenceRequests CountFAILURE
ReferenceResponseTime t1 - t0
Figure 1. A deferred response with an asynchronous result retrieve
Diagram of deferred response with an asynchronous result retrieve
Table 2. Invocation of request and return result
Type Statistics Formula ARM Transaction
Reference B GoodRetrieveResult CountEXIT X'0.X'1
BadRetrieveResult CountFAILURE
RetrieveResultResponseTime Σ t3 - t2
RetrieveResultWaitTime Σ timeout