You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Igor Vorobiov (JIRA)" <ji...@apache.org> on 2015/05/18 16:07:01 UTC
[jira] [Commented] (ODE-1026) Deployment deadlock
[ https://issues.apache.org/jira/browse/ODE-1026?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14548048#comment-14548048 ]
Igor Vorobiov commented on ODE-1026:
------------------------------------
Hi Sathwik,
As we can see *getProcessConfiguration* locks execution of *register* method.
I guess we can avoid it by removing locking in the 'getProcessConfiguration':
{code:title=org.apache.ode.store.ProcessStoreImpl.java|borderStyle=solid}
public ProcessConf getProcessConfiguration(final QName processId) {
//_rw.readLock().lock();
//try {
return _processes.get(processId);
//} finally {
// _rw.readLock().unlock();
//}
}
{code}
But we also need to change _processes from HashMap to ConcurrentHashMap.
What do you think about this solution?
Are there any reasons for using locking in the *getProcessConfiguration*?
> Deployment deadlock
> -------------------
>
> Key: ODE-1026
> URL: https://issues.apache.org/jira/browse/ODE-1026
> Project: ODE
> Issue Type: Bug
> Components: Deployment
> Affects Versions: 1.3.6
> Reporter: Igor Vorobiov
> Attachments: thread1.txt, thread2.txt
>
>
> There is deadlock when two processes are redeployed at the same time.
> Attached deadlock threads trace.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)