drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sorabh Hamirwasia (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (DRILL-6172) setValueCount of VariableLengthVectors throws IOB exception when called with 0 value after clearing vectors
Date Wed, 21 Feb 2018 06:50:00 GMT

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

Sorabh Hamirwasia updated DRILL-6172:
-------------------------------------
    Component/s: Execution - Data Types

> setValueCount of VariableLengthVectors throws IOB exception when called with 0 value
after clearing vectors
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: DRILL-6172
>                 URL: https://issues.apache.org/jira/browse/DRILL-6172
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Execution - Data Types
>            Reporter: Sorabh Hamirwasia
>            Assignee: Sorabh Hamirwasia
>            Priority: Major
>              Labels: ready-to-commit
>             Fix For: 1.13.0
>
>
> For VariableLengthVectors when we call *setValueCount* explicitly after clearing off
the vector memory then it throws IOB exception. Normally *setValueCount* is not required
to be called explicitly after clear, since getValueCount will return correct information.
But if called it currently throws IOB which should not be the case.
> The reason being when clear is called then it releases both offsetVector and dataVector
memory(or DrillByteBuf). Later when setValueCount is called then it tries to get current value
in offset vector at that valueCount index and fails since the length of offset vector is zero.
[Reference to code|https://github.com/apache/drill/blob/master/exec/vector/src/main/codegen/templates/VariableLengthVectors.java#L703].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message