[
https://issues.apache.org/jira/browse/IGNITE-6945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16287603#comment-16287603
]
Vladimir Ozerov edited comment on IGNITE-6945 at 12/12/17 1:23 PM:
-------------------------------------------------------------------
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). Another prospective approach is row cache (IGNITE-7173).
was (Author: vozerov):
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)