[
https://issues.apache.org/jira/browse/DRILL-8185?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17568391#comment-17568391
]
Paul Rogers commented on DRILL-8185:
------------------------------------
[~cgivre], thanks for the update! I believe union vectors do, in fact, work in
EVF V2. There are multiple unit tests for unions and lists (lists are like
arrays of unions.) There is even 2D and 3D list support. It turns out that what
was missing was the ability to have "dummy" versions so readers can write to
unprojected vectors and not know the difference. I wonder, what other problems
have you encountered? I also seem to recall getting unions and lists to work in
JSON, but I can't recall how complete the support is. The unit tests would give
the definitive answer.
Glad to hear the progress on unifying the JSON support. That was a desired goal
of moving to EVF. There are a number of older vector readers/writers as well
that, I believe, were only used by the JSON classes. Those older versions
didn't handle things like limiting vector sizes, or unprojected vectors, which
is one of the things that led to EVF in the first place.
The problem with union vectors is that they are not supported by most
operators. They are also not supported by most clients. Probably only the REST
client can handle unions. JDBC "fakes" it by converting values to strings. If
that was the end goal, might as well do that at read time and save the hassle
of unions.
[~vitalii] may find the need to test, and perhaps fix, other operators. For
example, the sort operator can't sort on a union: it doesn't know how to
compare a string and a float, say. The aggregate operators may not know how to
combine values of different types, nor can the group operator create meaningful
groups.
Over the years, we fixed MANY problems in unions and lists. Every time I tried
to get them to work with EVF, I found new holes in the vector implementations.
Many of those issues are now fixed, which is why the unit tests for EVF for
unions and lists pass. (The tests use the term "variant", so look for that if
looking for the tests.)
> EVF 2 doen't handle map arrays or nested maps
> ---------------------------------------------
>
> Key: DRILL-8185
> URL: https://issues.apache.org/jira/browse/DRILL-8185
> Project: Apache Drill
> Issue Type: Bug
> Affects Versions: 1.20.0
> Reporter: Paul Rogers
> Assignee: Paul Rogers
> Priority: Major
> Fix For: 2.0.0
>
>
> When converting Avro, Luoc found two bugs in how EVF 2 (the projection
> mechanism) handles map array and nested maps
--
This message was sent by Atlassian Jira
(v8.20.10#820010)