You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Vladimir Zhilin (JIRA)" <ji...@apache.org> on 2018/07/19 10:58:00 UTC

[jira] [Created] (CAY-2445) Oracle: Problem with ExpressionFactory.notInExp()

Vladimir Zhilin created CAY-2445:
------------------------------------

             Summary: Oracle: Problem with ExpressionFactory.notInExp()
                 Key: CAY-2445
                 URL: https://issues.apache.org/jira/browse/CAY-2445
             Project: Cayenne
          Issue Type: Bug
    Affects Versions: 3.1.2
            Reporter: Vladimir Zhilin
         Attachments: stacktrace.txt

When collection in notInExp() contains more than 1000 items, the ExpressionException is thrown:
{code:java}
org.apache.cayenne.exp.ExpressionException: [v.3.1.2 Nov 13 2017 07:52:36] Or: invalid parent - Negate
at org.apache.cayenne.exp.parser.AggregateConditionNode.jjtSetParent(AggregateConditionNode.java:80)
at org.apache.cayenne.exp.parser.SimpleNode.connectChildren(SimpleNode.java:324)
...{code}
Code to reproduce the problem
{code:java}
SelectQuery query = new SelectQuery(Artist.class);
List<Integer> excluded = new ArrayList<Integer>();
for (int i = 0; i < 1001; ++i) {
 excluded.add(i);
}
query.andQualifier(ExpressionFactory.notInExp(Artist.ID_PK_COLUMN, excluded));
getContext().performQuery(query); {code}
 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)