xuyangzhong commented on code in PR #23752: URL: https://github.com/apache/flink/pull/23752#discussion_r1445548152
########## flink-table/flink-table-planner/src/main/scala/org/apache/flink/table/planner/plan/nodes/physical/stream/StreamPhysicalJoin.scala: ########## @@ -116,13 +123,27 @@ class StreamPhysicalJoin( } override def translateToExecNode(): ExecNode[_] = { + val stateTtlFromHint = new util.HashMap[JInt, JLong] + getHints + .filter(hint => StateTtlHint.isStateTtlHint(hint.hintName)) + .forEach { + hint => + hint.kvOptions.forEach( + (input, ttl) => + stateTtlFromHint + .put( + if (input == FlinkHints.LEFT_INPUT) 0 else 1, Review Comment: I have some different ideas here. 1. In the explain syntax, if the user uses "1d" in the state ttl hint, I think it is easier to understand by displaying "1d" than by displaying "86400000 ms". 3. The redundancy of the code is only about the "TimeUtils.parseDuration(ttl).toMillis" section, which I think is tolerable. Otherwise, based on the first consideration, we will add "TimeUtils.parseDuration(ttl)" to explain, which will also cause some redundancy. -- 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. To unsubscribe, e-mail: issues-unsubscr...@flink.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org