You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by "Jacques Nadeau (JIRA)" <ji...@apache.org> on 2014/05/13 19:40:18 UTC

[jira] [Assigned] (DRILL-707) Support value vectors with selection vector in Drill C++ Client

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

Jacques Nadeau reassigned DRILL-707:
------------------------------------

    Assignee: Jinfeng Ni

Jinfeng, can you work through this?  I started to play with a fix on this branch [1].   However, I think the correct fix is actually to make the remover use allocateNewSafe everywhere and rely on the vectors to decide their sizes rather than using the VectorAllocator functionality.

[1] https://github.com/jacques-n/incubator-drill/tree/complex_allocators

> Support value vectors with selection vector in Drill C++ Client
> ---------------------------------------------------------------
>
>                 Key: DRILL-707
>                 URL: https://issues.apache.org/jira/browse/DRILL-707
>             Project: Apache Drill
>          Issue Type: New Feature
>          Components: Client - C++
>            Reporter: Xiao Meng
>            Assignee: Jinfeng Ni
>         Attachments: Q1vsQ2.png
>
>
> Drill C++ client needs to support selection vector.
> Some queries will return record batch with selection vector as true.
> For example, given the following hive table,
> {code}
> +------------+------------+
> | keycolumn  |  column1   |
> +------------+------------+
> | Zero       | 0          |
> | One        | 1          |
> | MinusOne   | -1         |
> | Two        | 2          |
> | MaxTInt    | 127        |
> | MinTInt    | -128       |
> | MaxUTInt   | 255        |
> | MaxTIntP1  | 128        |
> | MinTIntM1  | -129       |
> | MaxUTIntP1 | 256        |
> | MaxSInt    | 32767      |
> | MinSInt    | -32768     |
> | MaxUSInt   | 65535      |
> | MinSIntM1  | -32769     |
> | MaxSIntP1  | 32768      |
> | MaxUSIntP1 | 65536      |
> | MaxInt     | 2147483647 |
> | MinInt     | -2147483648 |
> | MaxUInt    | 4294967295 |
> | MaxIntP1   | 2147483648 |
> | MinIntM1   | -2147483649 |
> | MaxUIntP1  | 4294967296 |
> | MaxBInt    | 9223372036854775807 |
> | MinBInt    | -9223372036854775808 |
> +------------+------------+
> {code}
> We issue the following two queries:
> Query 1:
> {code}
> select column1 from hivestg.`bigint_table` where keycolumn='Zero'
> {code}
> Query 2:
> {code}
> select column1 from hivestg.`bigint_table` limit 1
> {code}
> Query 2 will return record batch with is_section_vector_2 as true



--
This message was sent by Atlassian JIRA
(v6.2#6252)