Petals CDK

MONIT traces are not correctly managed when expiration of asynchronous messages

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 5.2.0, 5.3.0
  • Fix Version/s: 5.6.0
  • Component/s: None
  • Security Level: Public
  • Description:
    Hide

    If a service provider is invoked asynchronously (unblocking call), we get following MONIT traces (for a MEP InOut):

    1. provider side: provideFlowStepBegin,
    2. sub-provider #1 side (another provider invoked asynchronously): provideFlowStepBegin,
    3. sub-provider #2 side (another provider invoked asynchronously): provideFlowStepBegin,
    4. sub-provider #1 side: provideFlowStepEnd
    5. provider side (the expiration occurs): provideFlowStepEnd. We won't return an error if a time-out occurs
    6. sub-provider #2 side (when the processing ends normally): provideFlowStepEnd.

    Point #5: it's normal to have a 'provideFlowStepEnd' because it's based on the reply returns to the consumer of the main provider. In case of an orchestration, if a timout occurs, a response that is not an error or a fault can be returned.

    The expiration does not appear anywhere. And its very difficult to understand point 5 and 6 in temporal point of view.

    Show
    If a service provider is invoked asynchronously (unblocking call), we get following MONIT traces (for a MEP InOut):
    1. provider side: provideFlowStepBegin,
    2. sub-provider #1 side (another provider invoked asynchronously): provideFlowStepBegin,
    3. sub-provider #2 side (another provider invoked asynchronously): provideFlowStepBegin,
    4. sub-provider #1 side: provideFlowStepEnd
    5. provider side (the expiration occurs): provideFlowStepEnd. We won't return an error if a time-out occurs
    6. sub-provider #2 side (when the processing ends normally): provideFlowStepEnd.
    Point #5: it's normal to have a 'provideFlowStepEnd' because it's based on the reply returns to the consumer of the main provider. In case of an orchestration, if a timout occurs, a response that is not an error or a fault can be returned. The expiration does not appear anywhere. And its very difficult to understand point 5 and 6 in temporal point of view.
  • Environment:
    -

Issue Links

Activity

People

Dates

  • Created:
    Mon, 4 Jun 2012 - 17:02:32 +0200
    Updated:
    Fri, 1 Apr 2016 - 15:17:13 +0200
    Resolved:
    Fri, 1 Apr 2016 - 15:17:13 +0200