[
https://issues.apache.org/jira/browse/CALCITE-4967?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Danny Chen resolved CALCITE-4967.
---------------------------------
Fix Version/s: 1.30.0
Resolution: Fixed
Fixed in
[f0bd2b2|https://github.com/apache/calcite/commit/f0bd2b244a4c4b6b89c4133b49d2c7e06b4e1cb6],
thanks for the contribution [~jingzhang] ~
> Support SQL hints for temporal table join
> -----------------------------------------
>
> Key: CALCITE-4967
> URL: https://issues.apache.org/jira/browse/CALCITE-4967
> Project: Calcite
> Issue Type: New Feature
> Components: core
> Reporter: Jing Zhang
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.30.0
>
> Time Spent: 2h
> Remaining Estimate: 0h
>
> h1. Background
> Like hint on join, sometimes we need hint on temporal table join. For
> example, specify USE_HASH hint on temporal table join like the following sql,
> {code:java}
> select /*+ USE_HASH (orders) */ stream * from orders join products_temporal
> for system_time as of orders.rowtime on orders.productid =
> products_temporal.productid
> {code}
> Now, above sql would translate into correlate instead of Join, like the
> following Tree Node.
> {code:java}
> LogicalDelta
> LogicalProject(ROWTIME=[$0], PRODUCTID=[$1], ORDERID=[$2], PRODUCTID0=[$3],
> NAME=[$4], SUPPLIERID=[$5], SYS_START=[$6], SYS_END=[$7])
> LogicalFilter(condition=[=($1, $3)])
> LogicalCorrelate(correlation=[$cor0], joinType=[inner],
> requiredColumns=[{0}])
> LogicalTableScan(table=[[CATALOG, SALES, ORDERS]])
> LogicalSnapshot(period=[$cor0.ROWTIME])
> LogicalTableScan(table=[[CATALOG, SALES, PRODUCTS_TEMPORAL]])
> {code}
> However, correlate is not a hintable node now and the hint could not be
> propagated to the correlate nodes.
> So I wonder could we extend correlate to be a hintable node?
--
This message was sent by Atlassian Jira
(v8.20.1#820001)