[ 
https://issues.apache.org/jira/browse/CAY-2805?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nikita Timofeev updated CAY-2805:
---------------------------------
    Fix Version/s: 5.0-M1
                   4.2

> Stop calling exp parser internally
> ----------------------------------
>
>                 Key: CAY-2805
>                 URL: https://issues.apache.org/jira/browse/CAY-2805
>             Project: Cayenne
>          Issue Type: Improvement
>    Affects Versions: 4.2.RC2
>            Reporter: Andrus Adamchik
>            Assignee: Nikita Timofeev
>            Priority: Minor
>             Fix For: 4.2, 5.0-M1
>
>
> This is a performance optimization suggestion.  Just noticed during profiling 
> a few minor "hotspots" due to calling "ExpressionFactory.exp()" inside the 
> following methods in the Cayenne core:
> * PrefetchProcessorJointNode.buildRowMapping(..)
> * DefaultSelectTranslator.appendQueryColumns(..)
> * SelectQueryMetadata.buildEntityResultForColumn(..)
> This results in exp parser invocation, which is fairly slow. At the same 
> time, in all these places the expression is known to be a path (either DB or 
> OBJ). So we can take a shortcut and apply a faster parsing function to 
> generate ASTObjPath or ASTDbPath.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to