[ 
https://issues.apache.org/jira/browse/ODE-1066?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sathwik Bantwal Premakumar updated ODE-1066:
--------------------------------------------
    Attachment: FlightReservationProcess-parallel-scopes.zip

Igor,
Kindly find the attached FlightReservationProcess-parallel-scopes.zip which has 
a parallel execution of the compensating scopes.

I don't have a ready system to test at the moment. Can you please verify your  
patch for the issue 1)

Also, the compensation  should be in the reverse order of execution of the 
scopes.

Default execution of CH in case of original FlightReservationProcess

If scopes execute in this order
ReserveCarScope
ReserveHotelScope
ReserveAbstractScope

Then, CH should be executed in this order
ReserveAbstractCompensation
ReserveHotelCompensation
ReserveCarCompensation

When consurrent execution of scopes as in 
FlightReservationProcess-parallel-scopes.zip the order doesn't matter.

thanks,
sathwik

> 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
>         Attachments: FlightReservationProcess-parallel-scopes.zip, 
> FlightReservationProcess.zip, ODE-1066-CompensateGenerator.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 work.
> 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
(v6.3.15#6346)

Reply via email to