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 2014/03/27 15:31:16 UTC

[jira] [Closed] (CAY-1923) Optimize BatchTranslator - use fixed size array of BatchParameterBinding

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

Andrus Adamchik closed CAY-1923.
--------------------------------

    Resolution: Fixed

> Optimize BatchTranslator - use fixed size array of BatchParameterBinding
> ------------------------------------------------------------------------
>
>                 Key: CAY-1923
>                 URL: https://issues.apache.org/jira/browse/CAY-1923
>             Project: Cayenne
>          Issue Type: Bug
>            Reporter: Andrus Adamchik
>            Assignee: Andrus Adamchik
>             Fix For: 3.2.M2
>
>
> The new BatchTranslator has this method:
>    List<BatchParameterBinding> createBindings(BatchQueryRow row);
> The list contents differ from row to row (e.g. due to NULL handling). This means we need to create a new List and new BatchParameterBindings, which results in an inefficiency in the default mode of operation. This also makes crypto-related interception doubly inefficient, as we'll need to compile encryptors for each row individually. So need to batch this somehow. E.g. by allocating a single BatchParameterBinding[], filling it with bindings and then reusing it for each row. Excluded bindings for a given row will be marked with some flag. This will also allow to precompile encryptors in the crypto module.



--
This message was sent by Atlassian JIRA
(v6.2#6252)