You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Andrus Adamchik (JIRA)" <ji...@apache.org> on 2010/11/30 10:54:13 UTC

[jira] Commented: (CAY-1519) Application deadlock trying to guess static constant fields

    [ https://issues.apache.org/jira/browse/CAY-1519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12965178#action_12965178 ] 

Andrus Adamchik commented on CAY-1519:
--------------------------------------

I should mention that the path causing this problem is two-step: "rel.propName"

> Application deadlock trying to guess static constant fields
> -----------------------------------------------------------
>
>                 Key: CAY-1519
>                 URL: https://issues.apache.org/jira/browse/CAY-1519
>             Project: Cayenne
>          Issue Type: Bug
>          Components: Core Library
>    Affects Versions: 3.1M1
>         Environment: java version "1.6.0_20"
> Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
> Java HotSpot(TM) Server VM (build 16.3-b01, mixed mode)
> SunOS pa-app01 5.10 Generic_142901-12 i86pc i386 i86pc
>            Reporter: Andrus Adamchik
>            Assignee: Andrus Adamchik
>             Fix For: 3.1M1
>
>
> Per CAY-1213 we are trying to guess if a String constant in an expression is a path or an enum or a constant. This code deadlocks the app for me under load on Java 6:
>    java.lang.Thread.State: BLOCKED (on object monitor)
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:247)
>         at org.apache.cayenne.util.Util.getJavaClass(Util.java:663)
>         at org.apache.cayenne.util.Util.getClassFieldValue(Util.java:763)
>         at org.apache.cayenne.exp.parser.ASTObjPath.evaluateNode(ASTObjPath.java:58)
>         at org.apache.cayenne.exp.parser.SimpleNode.evaluate(SimpleNode.java:335)
>         at org.apache.cayenne.exp.parser.SimpleNode.evaluateChild(SimpleNode.java:323)
>         at org.apache.cayenne.exp.parser.ASTEqual.evaluateNode(ASTEqual.java:66)
>         at org.apache.cayenne.exp.parser.SimpleNode.evaluate(SimpleNode.java:335)
>         at org.apache.cayenne.exp.Expression.match(Expression.java:367)
>         at org.apache.cayenne.exp.Expression.filter(Expression.java:389)
>         at org.apache.cayenne.exp.Expression.filterObjects(Expression.java:378)
> I had to locally unroll the following SVN revs to clear the problem: 998620, 1001040, 1001041
>  

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.