GitHub user parthchandra opened a pull request:
https://github.com/apache/drill/pull/1223
Drill 6324: Unnest initial implementation
Implementation of the unnest operator that works in sync with the Lateral
Join operator. The code is based on the Flatten implementation except that it
does not do the cross join that flatten does. As a result, the operator does
not need any code generation.
Commit # 2 - adds specific handling for kill that may be as a result of a
limit being reached by a downstream operator.
@sohami, @amansinha100 please review.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/parthchandra/drill DRILL-6324
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/drill/pull/1223.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1223
----
commit 7056e66b6e05f3a8f6cb9c4326d4b0a73cd87122
Author: Parth Chandra <parthc@...>
Date: 2018-02-08T05:13:13Z
DRILL-6324: Unnest - Initial Implementation
- Based on Flatten
- Implement unnestRecords in UnnestTemplate
- Remove unnecessary code inherited from Flatten/Project. Add schema change
handling.
- Fix build failure after rebase since RecordBatchSizer used by UNNEST was
relocated to a different package
- Add unit tests
- Handling of input row splitting across multiple batches. Also do not kill
incoming in killIncoming.
- Schema change generated by Unnest
commit b5aaa143089da127396b2abc766cdb14b2843817
Author: Parth Chandra <parthc@...>
Date: 2018-02-26T15:58:31Z
DRILL-6324: Unnest - kill handling, remove codegen, and unit test for non
array columns
commit 298f90654a487ab340582ce0cd5a0bf665536b9f
Author: Parth Chandra <parthc@...>
Date: 2018-03-07T08:23:14Z
DRILL-6324: Unnest - Add tests with real Unnest and real Lateral.
commit 8d9e02b4f11cda8458288c873bc2a94765569c43
Author: Parth Chandra <parthc@...>
Date: 2018-03-26T11:16:33Z
DRILL-6324: Unnest - code cleanup, more comments, fix license headers,
and more logging.
Refactor Unnest to allow setting in incoming batch after construction
fix compilation after rebase
----
---