ode-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vitaliy Tkachenko (Jira)" <j...@apache.org>
Subject [jira] [Commented] (ODE-1066) Unstable work of compensation activity
Date Tue, 10 Sep 2019 15:27:00 GMT

    [ https://issues.apache.org/jira/browse/ODE-1066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16926730#comment-16926730

Vitaliy Tkachenko commented on ODE-1066:

2) For compensating a specific inner scope there is a specific activity <compensateScope
target="scope-name" />. 
<compensate /> is to execute all immediately enclosed compensation handlers. Henceforth
the proposed patch ODE-1066-CompensateGenerator.patch is unnecessary.

Sathwik, this fix is for the BPEL 1 not 2 which uses the same "compensate" activity with the
"scope" attribute instead of the "compensateScope" with the "target" attribute used in the

> Unstable work of compensation activity
> --------------------------------------
>                 Key: ODE-1066
>                 URL: https://issues.apache.org/jira/browse/ODE-1066
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.3.6
>         Environment: Win7x64, Java 1.8.0_111, Tomcat 7.0.73
>            Reporter: Vitaliy Tkachenko
>            Assignee: Sathwik Bantwal Premakumar
>            Priority: Major
>              Labels: patch-available
>             Fix For: 1.3.8, 1.4
>         Attachments: FlightReservationProcess-parallel-scopes.zip, FlightReservationProcess.zip,
ODE-1066-CompensateGenerator.patch, ODE-1066-CompensationHandler-working.patch, ODE-1066-CompensationHandler.patch
> Compensation doesn't work appropriately, there is no guarantee that it will be processed
on execution. It doesn't matter which BPEL version is used either 1.1 or 2.0 and which method
is used to provide the compensation (either "compensate" or "compensateScope").
> If there are several scopes to compensate the most big chance to work out its compensation
handler has the last scope - it fails rarely but scopes defined prior to the last scope have
much bigger chances to fail. When compensation fails nothing is seen in the log, it just doesn't
> Attaching the FlightReservationProcess application to reproduce the bug.
> Specify "all" in the input to execute compensation for all scopes, call it many times
and check how scopes are compensated. Each result 4, 5, 6 must contain "1" if the corresponding
scope "car", "hotel" , "asbstract" has been compensated. But in reality the most big probability
"abstract" scope has to include "1", it fails having the "0" pretty rarely. But other scopes
"car" and "hotel" fail oftenly, only in rare cases they contain "1" as being compensated.
You can also play including "car", "hotel", "abs" instead of all to  compensate only specified
scopes. E.g. use "car hotel" in the input to compensate these 2 scopes only.

This message was sent by Atlassian Jira

View raw message