infoverload commented on a change in pull request #17260:
URL: https://github.com/apache/flink/pull/17260#discussion_r708187340



##########
File path: docs/content/docs/ops/upgrading.md
##########
@@ -109,6 +111,19 @@ When upgrading an application by changing its topology, a 
few things need to be
 * **Changing of input and output types of operators:** When adding a new 
operator before or behind an operator with internal state, you have to ensure 
that the input or output type of the stateful operator is not modified to 
preserve the data type of the internal operator state (see above for details).
 * **Changing operator chaining:** Operators can be chained together for 
improved performance. When restoring from a savepoint taken since 1.3.x it is 
possible to modify chains while preserving state consistency. It is possible a 
break the chain such that a stateful operator is moved out of the chain. It is 
also possible to append or inject a new or existing stateful operator into a 
chain, or to modify the operator order within a chain. However, when upgrading 
a savepoint to 1.3.x it is paramount that the topology did not change in 
regards to chaining. All operators that are part of a chain should be assigned 
an ID as described in the [Matching Operator State](#matching-operator-state) 
section above.
 
+### Table API & SQL
+
+Due to the declarative nature of Table API & SQL programs, the underlying 
operator topology and state
+representation is mostly determined by the table planner. Any change to both 
the query and Flink version
+could lead to state incompatibility.
+
+Every new major-minor Flink version (e.g. `1.12` to `1.13`) might introduce 
new optimizer rules or more
+specialized runtime operators that change the execution plan. However, the 
community aims to keep bug
+fix versions state compatible (e.g. `1.13.1` to `1.13.2`).

Review comment:
       ```suggestion
   Due to the declarative nature of Table API & SQL programs, the underlying 
operator topology and state
   representation are mostly determined and optimized by the table planner. 
   
   Be aware that any change to both the query and the Flink version could lead 
to state incompatibility. Every new major-minor Flink version (i.e. `1.12` to 
`1.13`) might introduce new optimizer rules or more specialized runtime 
operators that change the execution plan. However, the community tries to keep 
patch versions state-compatible (i.e. `1.13.1` to `1.13.2`).
   ```




-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to