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

Paul Rogers commented on DRILL-6343:
------------------------------------

Interesting. So we have at least one use of the original {{BitVector}}? A quick 
check shows that Parquet has a {{BitReader}} class. So, perhaps Parquet creates 
the old {{BitVector}}?

As I understand it, {{BitVector}} was originally used as the "big vector" in 
nullable types, but performance and stability issues forced conversion to 
{{UInt1Vector}}. [~parthc] may remember more of the details.

So, should Parquet be converted to use {{UInt1Vector}} for its bit reader? Any 
other uses?

> bit vector copyFromSafe is not doing realloc 
> ---------------------------------------------
>
>                 Key: DRILL-6343
>                 URL: https://issues.apache.org/jira/browse/DRILL-6343
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Execution - Flow
>    Affects Versions: 1.13.0
>            Reporter: Padma Penumarthy
>            Assignee: Padma Penumarthy
>            Priority: Major
>             Fix For: 1.14.0
>
>
> bit vector copyFromSafe simply returns false when asked to copy to an index 
> greater than it's capacity. It should do realloc if needed and copy correctly.
> This bug is very subtle and shows up as random wrong result. allocateNew for 
> bit vector allocates 4096 bytes initially and if we do copyFromSafe to any 
> index greater than that, we basically do not do any copy, but just return 
> false. 



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

Reply via email to