Hi Sathwik,

Thanks for the reply. I will check with hibernate also.

Regards
Nandika


On Thu, Jan 30, 2014 at 10:20 PM, Sathwik B P <[email protected]> wrote:

> Hi Nandika,
>
> I wouldn't suggest to change the BpelRuntimeContextImpl.matcherEvent with
> respect to the DAO, as we have Hibernate and Openjpa implementations.
>
> Can you verify the behaviour with hibernate?
>
> Will see if I get sometime over the weekend to look into this issue
>
> regards,
> sathwik
>
>
> On Mon, Jan 27, 2014 at 12:25 PM, Nandika Jayawardana <[email protected]
> >wrote:
>
> > Hi Devs,
> >
> > I observed the following behavior.
> >
> > Consider a process with two receive activities with correlation. Now, if
> > the messages to these receive activities arrive in correct order,
> > everything works fine.
> >
> > But if the message to the second receive activity arrived first and then
> > the message to the first receive activity arrived, then the process would
> > execute and complete. However, the message exchange created for the
> second
> > message would not be updated. It would have the correlation set value and
> > status as QUEUED.
> >
> > Now if another message arrived with the same correlation value for the
> > first request, that process instance would also complete by correlating
> to
> > the original second message.
> >
> > I  found that in BpelRuntimeContextImpl.matcherEvent, there is a call to
> > release these mex as follows.
> >
> > // Do not release yet if the process is suspended, the mex will be used
> > again
> >    if (_dao.getState() != ProcessState.STATE_SUSPENDED){
> >                 mexdao.releasePremieMessages();
> >    }
> >
> > However, openjpa implementation for releasePremieMessages() is empty.
> > Adding mexdao.release(true); to above if block fixes the problem.
> >
> > Is this the correct way to solve this problem.
> >
> > I checked whether there is a method to remove the correlation set from
> > message exchange and update the status to MATCHED. However, could not
> find
> > a method to update the correlation set value in message exchange.
> >
> > Attached is a sample process to reproduce the issue.
> >
> > Thanks
> > Nandika
> >
>

Reply via email to