[jboss-jira] [JBoss JIRA] (DROOLS-890) Thread deadlock issue in class ProjectClassLoader.java
Mario Fusco (JIRA)
issues at jboss.org
Thu Sep 17 05:23:00 EDT 2015
[ https://issues.jboss.org/browse/DROOLS-890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13109827#comment-13109827 ]
Mario Fusco commented on DROOLS-890:
------------------------------------
There are a few things to be noted here:
# Thread "CacheWorker:48" is clearly waiting to lock the ProjectClassLoader because "CacheWorker:31" is holding it. However I don't understand why "CacheWorker:31" is waiting to lock the InternalTypesClassLoader since there's no thread holding that lock in the stacks you pasted (unless it isn't in the part you masked?) so I still don't see what is causing the deadlock.
# I have no idea why the evaluation of an alpha node constraint should invoke the ClassLoader as it is happening in thread "CacheWorker:48" and you're still masking the stack there. Could you please at least share the constraint that is doing this? In general, unless I'm not missing something, I believe that invoking the ClassLoader from inside the constraint is a really bad idea.
# This execution pattern cannot happen in drools 6.3+ because now inserts are enqueued and processed during the fireAllRules instead of being processed directly at insertion time as it happened in drools 6.2. For this reason I believe that this deadlock should be go gone anyway.
Given the last point I'd be tempted to close again this issue, but I'll leave it open because I still don't have a complete understanding of what's going on there. Please clarify my doubts.
> Thread deadlock issue in class ProjectClassLoader.java
> -------------------------------------------------------
>
> Key: DROOLS-890
> URL: https://issues.jboss.org/browse/DROOLS-890
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 6.1.0.Final
> Reporter: Vivek Hingorani
> Assignee: Mario Fusco
> Fix For: 6.3.0.Final
>
>
> In our project , we are using drools6.1.0.Final jars and the rules are deployed in a jar. Another application when trying to use the rules jar is getting thread deadlock problem. Stack trace is
> at org.drools.core.common.ProjectClassLoader$InternalTypesClassLoader.loadClass(ProjectClassLoader,java284)
> Two threads are in deadlock condition on this thread. I restarted the application and the error is gone but we need to fix this issue so that it is not reproduced later.The class is in drools-core jar
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
More information about the jboss-jira
mailing list