[
https://issues.apache.org/jira/browse/BEAM-8508?focusedWorklogId=336988&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-336988
]
ASF GitHub Bot logged work on BEAM-8508:
----------------------------------------
Author: ASF GitHub Bot
Created on: 31/Oct/19 18:28
Start Date: 31/Oct/19 18:28
Worklog Time Spent: 10m
Work Description: 11moon11 commented on pull request #9943: [BEAM-8508]
[SQL] Standalone filter push down
URL: https://github.com/apache/beam/pull/9943#discussion_r341301583
##########
File path:
sdks/java/extensions/sql/src/main/java/org/apache/beam/sdk/extensions/sql/meta/provider/test/TestTableProvider.java
##########
@@ -211,9 +211,8 @@ public BeamTableStatistics
getTableStatistics(PipelineOptions options) {
}
}
- // When project push-down is supported.
- if ((options == PushDownOptions.PROJECT || options ==
PushDownOptions.BOTH)
- && !fieldNames.isEmpty()) {
+ // When project push-down is supported or field reordering is needed.
Review comment:
The problem I was trying to fix by modifying that `if` statement is a
scenario when an IO only supports Filter push-down and predicate can be
completely pushed-down to IO layer, all fields are selected, so there is no
need to preserve the `Calc` to perform project, but selected fields are not in
the random order.
In the scenario described above an IO does need to reorder fields (either
with a `Select` or by not dropping a `Calc`).
I agree that the current `if` statement is incorrect and it should look more
like what it used to, but with an additional check. Not quite sure how to check
that the `IORel` is not followed by a `CalcRel` and that the fields are not
selected in the order they are present in the original schema, but I'm working
on it.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 336988)
Time Spent: 1.5h (was: 1h 20m)
> [SQL] Support predicate push-down without project push-down
> -----------------------------------------------------------
>
> Key: BEAM-8508
> URL: https://issues.apache.org/jira/browse/BEAM-8508
> Project: Beam
> Issue Type: Improvement
> Components: dsl-sql
> Reporter: Kirill Kozlov
> Assignee: Kirill Kozlov
> Priority: Major
> Time Spent: 1.5h
> Remaining Estimate: 0h
>
> In this PR: [https://github.com/apache/beam/pull/9863]
> Support for Predicate push-down is added, but only for IOs that support
> project push-down.
> In order to accomplish that some checks need to be added to not perform
> certain Calc and IO manipulations when only filter push-down is needed.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)