[
https://issues.apache.org/jira/browse/IGNITE-6945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16287603#comment-16287603
]
Vladimir Ozerov commented on IGNITE-6945:
-----------------------------------------
It appears that the patch may produce improvement in certain cases (e.g. big
objects with numeric fields or huge arrays), but decrease performance in others
(e.g. lots of strings).
> SQL: optionally do not copy offheap rows for local SqlQuery
> -----------------------------------------------------------
>
> Key: IGNITE-6945
> URL: https://issues.apache.org/jira/browse/IGNITE-6945
> Project: Ignite
> Issue Type: Task
> Components: sql
> Reporter: Vladimir Ozerov
> Assignee: Taras Ledkov
> Fix For: 2.4
>
>
> Currently when iterating over rows we eagerly materialize them [1]. If key or
> value are large enough, we could loose a lot of time on offheap-heap copying.
> To partially mitigate this, we can do the following:
> 1) Add new flag {{SqlQuery.localNoCopy}} which is applicable only for local
> queries.
> 2) When enabled we will not copy final {{_KEY}} and {{_VAL}} columns to heap.
> but rather wrap them into {{BinaryOffheapObjectImpl}}
> 3) These rows must be released when query iterator switches to the next row.
> [1] {{H2RowFactory.getRow}}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)