[JBoss JIRA] Commented: (JBREM-942) A deadlock encountered on ConnectionValidator
by Mayank Mittal (JIRA)
[ https://issues.jboss.org/browse/JBREM-942?page=com.atlassian.jira.plugin.... ]
Mayank Mittal commented on JBREM-942:
-------------------------------------
I'm facing the same issue with
AS : JBoss 4.2.3 GA
Remoting: 2.4.0 SP1
whenever during the fail-over I perform any operation. I'm using HA-JNDI (1100) to make connections to my server. As it is expected from the HA system, that fail-over should be transparent from user point of view.
here is the stack
"Thread-113" daemon prio=10 tid=0x00007f53243ea000 nid=0x57e5 waiting for monitor entry [0x00007f5322829000]
java.lang.Thread.State: BLOCKED (on object monitor)
at org.jboss.remoting.ConnectionValidator.removeConnectionListener(ConnectionValidator.java:359)
- waiting to lock <0x00000000c7b93480> (a java.lang.Object)
at org.jboss.remoting.Client.removeConnectionListener(Client.java:445)
at org.jboss.jms.client.remoting.JMSRemotingConnection.removeConnectionListener(JMSRemotingConnection.java:533)
- locked <0x00000000c7b27a08> (a org.jboss.jms.client.remoting.JMSRemotingConnection)
at org.jboss.jms.client.container.ConnectionAspect.handleClose(ConnectionAspect.java:185)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.aop.advice.PerInstanceAdvice.invoke(PerInstanceAdvice.java:121)
at org.jboss.jms.client.delegate.ClientConnectionDelegate$close_N4742752445160157748.invokeNext(ClientConnectionDelegate$close_N4742752445160157748.java)
at org.jboss.jms.client.container.FailoverValveInterceptor.invoke(FailoverValveInterceptor.java:92)
at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
at org.jboss.jms.client.delegate.ClientConnectionDelegate$close_N4742752445160157748.invokeNext(ClientConnectionDelegate$close_N4742752445160157748.java)
at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:179)
at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
at org.jboss.jms.client.delegate.ClientConnectionDelegate$close_N4742752445160157748.invokeNext(ClientConnectionDelegate$close_N4742752445160157748.java)
at org.jboss.jms.client.delegate.ClientConnectionDelegate.close(ClientConnectionDelegate.java)
at org.jboss.jms.client.JBossConnection.close(JBossConnection.java:132)
at org.jboss.messaging.core.impl.clusterconnection.ClusterConnectionManager$ConnectionInfo$1.call(ClusterConnectionManager.java:705)
at EDU.oswego.cs.dl.util.concurrent.FutureResult$1.run(FutureResult.java:75)
at java.lang.Thread.run(Thread.java:662)
"Timer-22" daemon prio=10 tid=0x0000000041cfd800 nid=0x5264 waiting for monitor entry [0x00007f5323234000]
java.lang.Thread.State: BLOCKED (on object monitor)
at org.jboss.remoting.ConnectionValidator.notifyListeners(ConnectionValidator.java:600)
- waiting to lock <0x00000000c7b93480> (a java.lang.Object)
at org.jboss.remoting.ConnectionValidator.access$600(ConnectionValidator.java:42)
at org.jboss.remoting.ConnectionValidator$WaitOnConnectionCheckTimerTask.run(ConnectionValidator.java:648)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
> A deadlock encountered on ConnectionValidator
> ----------------------------------------------
>
> Key: JBREM-942
> URL: https://issues.jboss.org/browse/JBREM-942
> Project: JBoss Remoting
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: transport
> Affects Versions: 2.2.2.SP5
> Environment: JBoss-EAP-4.2, JBossMessaging-1.4.0-SP3, JBossRemoting-2.2.2-SP5
> Reporter: Tyronne Wickramarathne
> Assignee: Ron Sigal
> Priority: Critical
> Fix For: 2.2.2.SP7
>
>
> This deadlock occurred on JBREM when a JBossMessaging Bridge was set and consuming messages. here's the StackTrace :
> Found one Java-level deadlock:
> =============================
> "Thread-278":
> waiting to lock monitor 0x08128544 (object 0xce8b25e0, a java.lang.Object),
> which is held by "Timer-4"
> "Timer-4":
> waiting to lock monitor 0x08129160 (object 0xce89f508, a java.util.ArrayList),
> which is held by "Thread-278"
> Java stack information for the threads listed above:
> ===================================================
> "Thread-278":
> at org.jboss.remoting.ConnectionValidator.doStop(ConnectionValidator.java:526)
> - waiting to lock <0xce8b25e0> (a java.lang.Object)
> at org.jboss.remoting.ConnectionValidator.stop(ConnectionValidator.java:252)
> at org.jboss.remoting.ConnectionValidator.removeConnectionListener(ConnectionValidator.java:344)
> - locked <0xce89f508> (a java.util.ArrayList)
> at org.jboss.remoting.Client.removeConnectionListener(Client.java:398)
> at org.jboss.jms.client.remoting.JMSRemotingConnection.removeConnectionListener(JMSRemotingConnection.java:493)
> - locked <0xce8b18c8> (a org.jboss.jms.client.remoting.JMSRemotingConnection)
> at org.jboss.jms.client.container.ConnectionAspect.handleClose(ConnectionAspect.java:184)
> at sun.reflect.GeneratedMethodAccessor134.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.jboss.aop.advice.PerInstanceAdvice.invoke(PerInstanceAdvice.java:121)
> at org.jboss.jms.client.delegate.ClientConnectionDelegate$close_N4742752445160157748.invokeNext(ClientConnectionDelegate$close_N4742752445160157748.java)
> at org.jboss.jms.client.container.FailoverValveInterceptor.invoke(FailoverValveInterceptor.java:92)
> at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
> at org.jboss.jms.client.delegate.ClientConnectionDelegate$close_N4742752445160157748.invokeNext(ClientConnectionDelegate$close_N4742752445160157748.java)
> at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
> at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
> at org.jboss.jms.client.delegate.ClientConnectionDelegate$close_N4742752445160157748.invokeNext(ClientConnectionDelegate$close_N4742752445160157748.java)
> at org.jboss.jms.client.delegate.ClientConnectionDelegate.close(ClientConnectionDelegate.java)
> at org.jboss.jms.client.JBossConnection.close(JBossConnection.java:132)
> at org.jboss.jms.server.bridge.Bridge.cleanup(Bridge.java:1098)
> at org.jboss.jms.server.bridge.Bridge.access$1100(Bridge.java:66)
> at org.jboss.jms.server.bridge.Bridge$FailureHandler.run(Bridge.java:1496)
> at java.lang.Thread.run(Thread.java:619)
> "Timer-4":
> at org.jboss.remoting.ConnectionValidator.notifyListeners(ConnectionValidator.java:553)
> - waiting to lock <0xce89f508> (a java.util.ArrayList)
> at org.jboss.remoting.ConnectionValidator.run(ConnectionValidator.java:286)
> - locked <0xce8b25e0> (a java.lang.Object)
> at java.util.TimerThread.mainLoop(Timer.java:512)
> at java.util.TimerThread.run(Timer.java:462)
> Found 1 deadlock.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 9 months
[JBoss JIRA] Created: (JBRULES-3183) Error evaluating XOR condition in ruleflow (in 5.2.0 worked in 5.0.1)
by Lubos Pechac (JIRA)
Error evaluating XOR condition in ruleflow (in 5.2.0 worked in 5.0.1)
---------------------------------------------------------------------
Key: JBRULES-3183
URL: https://issues.jboss.org/browse/JBRULES-3183
Project: Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: drools-core (expert)
Affects Versions: 5.2.0.Final
Environment: Windows XP, Java 6, Eclipse 3.7.0, Drools plugin from JBoss Tools 3.2
Reporter: Lubos Pechac
Assignee: Mark Proctor
XOR split below produces error for condition:
not GBN2GFact()
or
GBN2GFact( payComps == null || payComps.size == 0 )
payComps is declared in POJO GBN2GFact:
List<PayrollComponent> payComps = new ArrayList<PayrollComponent>();
Error is:
Description Resource Path Location Type
Unable to build expression for 'inline-eval' : [Error: incompatible types in statement: class java.lang.Integer (compared from: class piag.PayrollComponent)]
[Near : {... payComps == null || payComps.size == 0 ....}]
^
[Line: 1, Column: 21]'payComps == null || payComps.size == 0'
[Error: incompatible types in statement: class java.lang.Integer (compared from: class piag.PayrollComponent)]
[Near : {... payComps == null || payComps.size == 0 ....}]
^
[Line: 1, Column: 21] : [Rule name='RuleFlow-Split-GB_N2G-20-14-DROOLS_DEFAULT']
[Error: incompatible types in statement: class java.lang.Integer (compared from: class piag.PayrollComponent)]
[Near : {... payComps == null || payComps.size == 0 ....}]
^
[Line: 1, Column: 21] GB_N2G.rf /GB2008Rules/src/main/rules Unknown Drools Error
RuleFlow:
<?xml version="1.0" encoding="UTF-8"?>
<process xmlns="http://drools.org/drools-5.0/process"
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xs:schemaLocation="http://drools.org/drools-5.0/process drools-processes-5.0.xsd"
type="RuleFlow" name="GB_N2G" id="GB_N2G" package-name="piag" >
<header>
<imports>
<import name="piag.gb.payroll.GBN2GFact" />
<import name="java.math.BigDecimal" />
</imports>
</header>
<nodes>
<start id="1" name="Start" x="402" y="3" width="80" height="40" />
<ruleSet id="2" name="Initialization N2G" x="384" y="59" width="115" height="40" ruleFlowGroup="Initialization N2G" />
<split id="3" name="Exist PayrollComponents?" x="370" y="180" width="146" height="40" type="2" >
<constraints>
<constraint toNodeId="5" toType="DROOLS_DEFAULT" name="Yes" priority="1" type="rule" dialect="mvel" >GBN2GFact( payComps != null && payComps.size > 0 )</constraint>
<constraint toNodeId="4" toType="DROOLS_DEFAULT" name="No" priority="1" type="rule" dialect="mvel" >not GBN2GFact()
or
GBN2GFact( payComps == null || payComps.size == 0 )</constraint>
</constraints>
</split>
<end id="4" name="End" x="595" y="178" width="80" height="40" />
<subProcess id="5" name="G2N" x="402" y="241" width="80" height="40" processId="GB_G2N" >
</subProcess>
<ruleSet id="6" name="Getting N2G borders" x="376" y="298" width="130" height="40" ruleFlowGroup="Getting N2G borders" />
<join id="7" name="Loop" x="402" y="359" width="80" height="40" type="2" />
<ruleSet id="8" name="Insert PayrollComponent" x="256" y="399" width="138" height="40" ruleFlowGroup="Insert PayrollComponent" />
<join id="9" name="Loop" x="286" y="469" width="80" height="40" type="2" />
<ruleSet id="10" name="Insert border" x="208" y="515" width="80" height="40" ruleFlowGroup="Insert border" />
<subProcess id="11" name="G2N" x="207" y="574" width="80" height="40" processId="GB_G2N" >
</subProcess>
<ruleSet id="12" name="Backward NI" x="207" y="635" width="80" height="40" ruleFlowGroup="Backward NI" />
<end id="14" name="End" x="401" y="1258" width="80" height="40" />
<ruleSet id="15" name="Backward TAX" x="279" y="748" width="93" height="40" ruleFlowGroup="Backward TAX" />
<ruleSet id="17" name="Getting precision" x="173" y="1018" width="101" height="40" ruleFlowGroup="Getting precision" />
<subProcess id="16" name="G2N" x="184" y="959" width="80" height="40" processId="GB_G2N" >
</subProcess>
<ruleSet id="19" name="Create N2G PayItems" x="267" y="1133" width="117" height="40" ruleFlowGroup="Create N2G PayItems" />
<split id="18" name="Is precise?" x="287" y="1064" width="80" height="40" type="2" >
<constraints>
<constraint toNodeId="23" toType="DROOLS_DEFAULT" name="No" priority="1" type="rule" dialect="mvel" >GBN2GFact( correctnessCount <= 5 && precision == null )
or
GBN2GFact( correctnessCount <= 5 && precision != null && ( precision >= "0.01" || precision <= "-0.01" ) )</constraint>
<constraint toNodeId="19" toType="DROOLS_DEFAULT" name="Yes" priority="1" type="rule" dialect="mvel" >GBN2GFact( correctnessCount > 5 )
or
GBN2GFact( precision != null && precision < "0.01" && precision > "-0.01" )</constraint>
</constraints>
</split>
<ruleSet id="21" name="Gross calculation" x="276" y="808" width="100" height="40" ruleFlowGroup="Gross calculation" />
<split id="20" name="Some PayrollComponent?" x="364" y="1189" width="155" height="40" type="2" >
<constraints>
<constraint toNodeId="7" toType="DROOLS_DEFAULT" name="Yes" priority="1" type="rule" dialect="mvel" >GBN2GFact( payComps != null && payComps.size > 0 )</constraint>
<constraint toNodeId="14" toType="DROOLS_DEFAULT" name="No" priority="1" type="rule" dialect="mvel" >GBN2GFact( payComps == null || payComps.size == 0 )</constraint>
</constraints>
</split>
<join id="23" name="Join" x="287" y="867" width="80" height="40" type="2" />
<ruleSet id="22" name="Update gross" x="183" y="901" width="80" height="40" ruleFlowGroup="Update gross" />
<ruleSet id="25" name="Adding PayrollComponent" x="371" y="118" width="142" height="40" ruleFlowGroup="Adding PayrollComponent" />
<split id="24" name="Is calc Net higher?" x="266" y="688" width="119" height="40" type="2" >
<constraints>
<constraint toNodeId="9" toType="DROOLS_DEFAULT" name="No" priority="1" type="rule" dialect="mvel" >GBN2GFact( tempBorders != null && tempBorders.size > 0 )</constraint>
<constraint toNodeId="15" toType="DROOLS_DEFAULT" name="Yes" priority="1" type="rule" dialect="mvel" >GBN2GFact( tempBorders == null || tempBorders.size == 0 )</constraint>
</constraints>
</split>
</nodes>
<connections>
<connection from="1" to="2" />
<connection from="25" to="3" />
<connection from="3" to="4" />
<connection from="3" to="5" />
<connection from="5" to="6" />
<connection from="20" to="7" />
<connection from="6" to="7" />
<connection from="7" to="8" />
<connection from="8" to="9" />
<connection from="24" to="9" />
<connection from="9" to="10" />
<connection from="10" to="11" />
<connection from="11" to="12" />
<connection from="20" to="14" />
<connection from="24" to="15" />
<connection from="16" to="17" />
<connection from="22" to="16" />
<connection from="18" to="19" />
<connection from="17" to="18" />
<connection from="15" to="21" />
<connection from="19" to="20" />
<connection from="21" to="23" />
<connection from="18" to="23" />
<connection from="23" to="22" />
<connection from="2" to="25" />
<connection from="12" to="24" />
</connections>
</process>
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 9 months