[ https://issues.apache.org/jira/browse/FLINK-24024?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17751995#comment-17751995 ]
Sergey Nuyanzin commented on FLINK-24024: ----------------------------------------- [~twalthr] sorry for the delay, probably I forgot to put some updates {quote} so I guess CALCITE-4337 is the missing piece to finally make SESSION TVF work in Flink? Or is the shortcoming you are describing another Calcite issue? {quote} in fact this is not clear the error above could be fixed by overriding of {{org.apache.flink.table.planner.functions.sql.SqlSessionTableFunction#tableCharacteristic}} for {{org.apache.flink.table.planner.functions.sql.SqlSessionTableFunction}} 1. if {{SqlToRelConverter}}'s config is without expanding (Flink's case) then it doesn't substitute the query [1] for {{SET_SEMANTICS_TABLE}}. And a number of Flink cases require turned off expansion ({{withExpand(false)}}) [2]. This is currently not clear why do we need expansion... However without query substitution it is unable to generate input for {{ProjectWindowTableFunctionTransposeRule}} 2. If we disable requirement for expansion for {{SET_SEMANTICS_TABLE}} then we move a bit further and fail with unabling of generation of execution plan because of missing conversions {{LogicalSortExchange[convention: NONE -> LOGICAL]}} or {{LogicalExchange[convention: NONE -> LOGICAL]}} in case of no {{ORDER BY}} clause. I'd like to to try add these conversions to see if dinally it works or not. Currently I see that it (however it is a bit unfamiliar Flink's area for me, so it will be try/fail/learn and time consuming) [1] https://github.com/apache/calcite/blob/calcite-1.32.0/core/src/main/java/org/apache/calcite/sql2rel/SqlToRelConverter.java#L1377 [2] https://github.com/apache/flink/blob/fa61dd439ece9e2b9ef710ce2f7eed54c4d4403a/flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/delegation/PlannerContext.java#L306 > Support session Window TVF > --------------------------- > > Key: FLINK-24024 > URL: https://issues.apache.org/jira/browse/FLINK-24024 > Project: Flink > Issue Type: Sub-task > Components: Table SQL / API > Reporter: Jing Zhang > Assignee: Sergey Nuyanzin > Priority: Major > Labels: pull-request-available, stale-assigned > > > # Fix calcite syntax CALCITE-4337 > # Introduce session window TVF in Flink > -- This message was sent by Atlassian Jira (v8.20.10#820010)