You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Paul Rogers (JIRA)" <ji...@apache.org> on 2017/06/19 00:48:02 UTC

[jira] [Commented] (DRILL-2996) ValueVectors shouldn't call reAlloc() in a while() loop

    [ https://issues.apache.org/jira/browse/DRILL-2996?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16053374#comment-16053374 ] 

Paul Rogers commented on DRILL-2996:
------------------------------------

The loop is required to support skipping fields, as in Parquet. One could argue that one can never skip fields for required vectors.

DRILL-5211 will enforce limits on vector growth.

Still, this is an area of general clean-up. When can we skip fields?

> ValueVectors shouldn't call reAlloc() in a while() loop
> -------------------------------------------------------
>
>                 Key: DRILL-2996
>                 URL: https://issues.apache.org/jira/browse/DRILL-2996
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Execution - Data Types
>    Affects Versions: 0.9.0
>            Reporter: Chris Westin
>            Priority: Minor
>             Fix For: Future
>
>
> Instead, reAlloc() should be change to take a "new minimum size" as an argument. This value is just the value used to determine the while loops' termination. Then reAlloc() can figure out how much more to allocate once and for all, instead of possibly reallocating and copying more than once, and it can make sure that the size doesn't overflow (we've seen some instances of the allocator being called with negative sizes).



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)