[
https://issues.apache.org/jira/browse/FLINK-41325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18137353#comment-18137353
]
sepuri sai krishna edited comment on FLINK-41325 at 11/4/26, 10:46 AM:
-----------------------------------------------------------------------
I would like to work on this. Could it be assigned to me?
was (Author: JIRAUSER313785):
I have a fix and tests for this locally. Please assign it to me and I will open
a PR.
> COMPILE PLAN emits no state array for a temporal join or MATCH_RECOGNIZE, so
> their TTL cannot be configured as documented
> -------------------------------------------------------------------------------------------------------------------------
>
> Key: FLINK-41325
> URL: https://issues.apache.org/jira/browse/FLINK-41325
> Project: Flink
> Issue Type: Bug
> Components: Documentation, Table SQL / Planner
> Affects Versions: 2.4.0
> Reporter: sepuri sai krishna
> Priority: Minor
>
> The "Configure Operator-level State TTL" section says:
> {quote}
> Every operator that uses state will explicitly generate a JSON array named
> "state" with the
> following structure.
> {quote}
> and tells the reader to find the operator in the compiled plan and change its
> TTL.
> The same section already names exceptions: window-based operations and
> interval joins, which "do
> not rely on table.exec.state.ttl to control the state retention, and their
> state TTLs cannot be
> configured at operator-level". So a reader expects everything outside that
> list to be
> configurable.
> A temporal join and MATCH_RECOGNIZE are in neither group, and neither gets
> the array.
> {code:sql}
> COMPILE PLAN '/tmp/temporal.json' FOR
> INSERT INTO snk SELECT o.id, o.amt * r.rate FROM orders o
> JOIN rates FOR SYSTEM_TIME AS OF o.ts r ON o.cur = r.cur;
> COMPILE PLAN '/tmp/match.json' FOR
> INSERT INTO snk2 SELECT * FROM orders MATCH_RECOGNIZE (
> PARTITION BY cur ORDER BY ts MEASURES A.amt AS a, B.amt AS b
> ONE ROW PER MATCH PATTERN (A B)
> DEFINE A AS A.amt > 0, B AS B.amt > A.amt) AS m;
> {code}
> In both files the operator node has no {{state}} key at all, so there is
> nothing to edit. For
> comparison, in a plan compiled for {{GROUP BY}} the aggregate node carries
> {noformat}
> "state": [ { "index": 0, "ttl": "0 ms", "name": "groupAggregateState" } ]
> {noformat}
> and a deduplicate node carries {{"name": "deduplicateState"}}. A non-window
> {{OVER}} aggregate
> also has no {{state}} key.
> Either the exceptions list should name these operators too, or they should
> emit the array. Which
> way round is a question for whoever owns the feature; as the page reads today
> it promises
> something that does not happen.
> The Chinese page carries the same two statements.
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)