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

JIasen Sheng commented on CALCITE-4188:
---------------------------------------

[~rubenql] EnumerableCorrelate over JDBC is not supported at the moment

JdbcToEnumerableConverter will eventually generate executable sql statements 
from the plan, which will eventually be executed by jdbc.

https://github.com/apache/calcite/blob/404f968f6079360621896e6ee20ec12488a40bc2/core/src/main/java/org/apache/calcite/adapter/jdbc/JdbcToEnumerableConverter.java#L107

https://github.com/apache/calcite/blob/404f968f6079360621896e6ee20ec12488a40bc2/core/src/main/java/org/apache/calcite/adapter/jdbc/JdbcToEnumerableConverter.java#L174

EnumerableCorrelate generates a value during the execution process. When 
batchSize>1, the value will undergo related changes. This process is to fill in 
the corresponding variable before the sql is executed.
SELECT * FROM SCOTT.emp WHERE ename =EnumerableCorrelateValue1 And empno 
<EnumerableCorrelateValue2

Taking into account the SQL injection problem and the similarity between the 
process and SQLDynamicParam, I think it is a reasonable way to implement the 
EnumerableCorrelate variable as a special dynamic parameter

> support EnumerableBatchNestedLoopJoin in JdbcToEnumerableConverter implement
> ----------------------------------------------------------------------------
>
>                 Key: CALCITE-4188
>                 URL: https://issues.apache.org/jira/browse/CALCITE-4188
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.25.0
>            Reporter: JIasen Sheng
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> support  EnumerableBatchNestedLoopJoin in JdbcToEnumerableConverter implement 
> function
> ENUMERABLE_BATCH_NESTED_LOOP_JOIN_RULE make correlate RexNode, 
> when implementing,
> [https://github.com/apache/calcite/blob/eab043f4ef43112c16a9f6708e6c53a15b1cfbe0/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java#L675]
> will throw null Exception



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to