[
https://issues.apache.org/jira/browse/ODE-1048?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Work on ODE-1048 started by Sathwik Bantwal Premakumar.
-------------------------------------------------------
> Disable MEX_MATCHER job
> -----------------------
>
> Key: ODE-1048
> URL: https://issues.apache.org/jira/browse/ODE-1048
> Project: ODE
> Issue Type: Bug
> Components: BPEL Runtime
> Reporter: Sathwik Bantwal Premakumar
> Assignee: Sathwik Bantwal Premakumar
> Fix For: 1.3.7
>
>
> MEX_MATCHER job is triggered after registering an Early arriving message.
> Early arriving messages are normally picked up when the MATCHER job
> executes. MEX_MATCHER is an overhead and there is lot of contention seen
> between MATCHER and MEX_MATCHER jobs under load.
> There is deadlock situation arising between MEX_MATCHER and MATCHER jobs
> running concurrently.
> MEX_MATCHER
> 1) lockPrimieMessages (locks all records in BPEL_UNMATCHED using the mex)
> MATCHER
> 1) findRoute (locks route in BPEL_SELECTOR based on single correlation key
> set canonical value)
> MEX_MATCHER
> 2) tries to findRoute (locked by Matcher)
> MATCHER
> 2) tries to dequeueMessage (locked by Mex_Matcher)
> Results in a deadlock.
> Possible solution to overcome this deadlock:
> Move the dequeueMessage call above the findRoute call in matcherEvent.
> This is a proposal to deactivate MEX_MATCHER jobs. Henceforth, MEX_MATCHER
> jobs will not be triggered after an early message is registered.
> In case MEX_MATCHER is necessary, kindly revert the changes done in this
> ticket.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)