snuyanzin commented on code in PR #22146:
URL: https://github.com/apache/flink/pull/22146#discussion_r1132039260


##########
docs/content/release-notes/flink-1.17.md:
##########
@@ -0,0 +1,201 @@
+---
+title: "Release Notes - Flink 1.17"
+---
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+# Release notes - Flink 1.17
+
+These release notes discuss important aspects, such as configuration, 
behavior, or dependencies,
+that changed between Flink 1.16 and Flink 1.17. Please read these notes 
carefully if you are
+planning to upgrade your Flink version to 1.17.
+
+
+### Clusters & Deployment
+
+#### Only one Zookeeper version is bundled in `flink-dist`
+##### [FLINK-30237](https://issues.apache.org/jira/browse/FLINK-30237)
+The Flink distribution no longer bundles 2 different Zookeeper client jars 
(one in lib/opt 
+respectively). Instead, only 1 client will be bundled within the flink-dist 
jar. This has no 
+effect on the supported Zookeeper server versions.
+
+
+### Table API & SQL
+
+#### Incompatible plan change of event time temporal join on an upsert source
+##### [FLINK-29849](https://issues.apache.org/jira/browse/FLINK-29849)
+A correctness issue when do event time temporal join with a versioned table 
backed by an upsert 
+source was resolved. When the right input of the join is an upsert source, it 
no longer generates 
+a ChangelogNormalize node for it. This is an incompatible plan change compare 
to 1.16.0.
+
+#### Incompatible plan change of filter after temporal join
+##### [FLINK-28988](https://issues.apache.org/jira/browse/FLINK-28988)
+After the patch applied, the filter will not be pushed down into both inputs 
of the event time 
+temporal join. Note this may cause incompatible plan changes compare to 
1.16.0, e.g., when left 
+input is an upsert source(use upsert-kafka connector), the query plan will 
remove the 
+ChangelogNormalize node from which appeared in 1.16.0.
+
+### Connectors & Libraries
+
+#### Remove cassandra connector from master branch
+##### [FLINK-30312](https://issues.apache.org/jira/browse/FLINK-30312)
+The Cassandra connector has been externalized and is no longer released as 
part of the main Flink 
+release. Downloads can be found at https://flink.apache.org/downloads.html and 
the
+source code at https://github.com/apache/flink-connector-cassandra.
+
+#### Remove Pulsar connector from master branch 
+##### [FLINK-30397](https://issues.apache.org/jira/browse/FLINK-30397)
+The Pulsar connector has been externalized and is no longer bundled and 
released as part of the 
+main Flink release. Downloads can be found at 
https://flink.apache.org/downloads.html and the 
+source code at https://github.com/apache/flink-connector-pulsar.
+
+#### Remove HCatalog
+##### [FLINK-29669](https://issues.apache.org/jira/browse/FLINK-29669)
+The HCatalog connector has been removed from Flink. You can use the Hive 
connector as a replacement.
+
+#### Remove Gelly
+##### [FLINK-29668](https://issues.apache.org/jira/browse/FLINK-29668)
+Gelly has been removed from Flink. Current users of Gelly should not upgrade 
to Flink 1.17 but 
+stay on an older version. If you're looking for iterations support, you could 
investigate 
+[Flink ML 
Iteration](https://nightlies.apache.org/flink/flink-ml-docs-stable/docs/development/iteration/)
 
+as a potential successor.
+
+#### Support watermark alignment of source splits
+##### [FLINK-28853](https://issues.apache.org/jira/browse/FLINK-28853)
+Since Flink 1.17, source connectors have to implement watermark alignment of 
source split in order 
+to use the watermark alignment feature. The required methods to implement are: 
+`SourceReader#pauseOrResumeSplits` and `SplitReader#pauseOrResumeSplits`. 
+
+If you are migrating from 
+Flink <= 1.16.x, and you were using watermark alignment, but at the same time 
you are not able to 
+upgrade/modify your connector, you can disable per split alignment via setting 
+`pipeline.watermark-alignment.allow-unaligned-source-splits` to true. Note 
that by doing so, 
+watermark alignment will be working properly only when your number of splits 
equals to the 
+parallelism of the source operator.
+
+#### Remove deprecated MiniClusterResource
+##### [FLINK-29548](https://issues.apache.org/jira/browse/FLINK-29548)
+The deprecated `MiniClusterResource` in `flink-test-utils` has been removed. 
The 
+`MiniClusterWithClientResource` is a drop-in replacement.
+
+#### Kinesis connector doesn't shade jackson dependency
+##### [FLINK-14896](https://issues.apache.org/jira/browse/FLINK-14896)
+Shade and relocate transitive Jackson dependencies of 
`flink-connector-kinesis`. If your Flink job 
+was transitively relying on the these, you may need to include additional 
Jackson dependencies into 
+your project.
+
+### Runtime & Coordination
+
+#### Speculative execution take input data amount into account when detecting 
slow tasks
+##### [FLINK-30707](https://issues.apache.org/jira/browse/FLINK-30707)
+The slow task detecting is improved for speculative execution. Previously, it 
only considers the 
+execution time of tasks when deciding which tasks are slow. It now takes the 
input data volume of 
+tasks into account. Tasks which has a longer execution time but consumes more 
data may not be 
+considered as slow. This improvement helps to eliminate the negative impacts 
of data skew on slow 
+task detecting.
+
+#### Use adaptive batch scheduler as default scheduler for batch jobs
+##### [FLINK-30682](https://issues.apache.org/jira/browse/FLINK-30682)
+Adaptive batch scheduler are now used for batch jobs by default. It will 
automatically decide the 
+parallelism of operators. The keys and values of related configuration items 
are improved for easy 
+of use. More details can be found in the 
+[document](https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/deployment/elastic_scaling/#adaptive-batch-scheduler).
+
+#### Simplify network memory configurations for TaskManager
+##### [FLINK-30469](https://issues.apache.org/jira/browse/FLINK-30469)
+The default value of `taskmanager.memory.network.max` has changed from `1g` to 
`Long#MAX_VALUE`, 
+to reduce the number of config options user needs to tune when trying to 
increase the network 
+memory size. This may affect the performance when this option is not 
explicitly configured, due to 
+potential changes of network memory size, and heap and managed memory sizes 
when the total memory 
+size is fixed. To go back to the previous behavior, user can explicitly 
configure this option to 
+the previous default value `1g`.
+
+A threshold is introduced for controlling the number of required buffers among 
all buffers needed 
+for reading data from upstream tasks. Reducing the number of required buffers 
helps reduces the 
+chance of failures due to insufficient network buffers, at the price of 
potential performance 
+impact. By default, the number of required buffers is only reduced for batch 
workloads, while stay 
+unchanged for streaming workloads. This can be tuned via 
+`taskmanager.network.memory.read-buffer.required-per-gate.max`. See the 
description of the config 
+option for more details.
+
+### Metric Reporters
+
+#### Only support reporter factories for instantiation
+##### [FLINK-24235](https://issues.apache.org/jira/browse/FLINK-24235)
+Configuring reporters by their class is no longer supported. Reporter 
implementations must provide 
+a MetricReporterFactory, and all configurations must be migrated to such a 
factory.
+
+#### `UseLogicalIdentifier` makes datadog consider metric as custom
+##### [FLINK-30383](https://issues.apache.org/jira/browse/FLINK-30383)
+The Datadog reporter now adds a "flink." prefix to metric identifiers if 
"useLogicalIdentifier" is 
+enabled. This is required for these metrics to be recognized as Flink metrics, 
not custom ones.
+
+#### Use separate Prometheus CollectorRegistries
+##### [FLINK-30020](https://issues.apache.org/jira/browse/FLINK-30020)
+The PrometheusReporters now use a separate CollectorRegistry for each reporter 
instance instead of 
+the singleton default registry. This generally shouldn't impact setups, but it 
may break code that 
+indirectly interacted with the reporter via the singleton instance (e.g., a 
test trying to assert 
+what metrics are reported).
+
+### Checkpoints
+
+#### Drop TypeSerializerConfigSnapshot and savepoint support from Flink 
versions < 1.8.0
+##### [FLINK-29807](https://issues.apache.org/jira/browse/FLINK-29807)
+Savepoints using `TypeSerializerConfigSnapshot` are no longer supported. That 
means, all savepoints 
+from Flink < 1.8.0 are no longer supported. Furthermore, savepoints from Flink 
< 1.17.0 created 
+with custom serializer using deprecated since Flink 1.8.0 class 
`TypeSerializerConfigSnapshot` are 
+also no longer supported.
+
+If you are only using built-in serializers (Pojo, Kryo, Avro, 
+Tuple, ...), and your savepoint is from 1.8.0 <= Flink, you don't have to do 
anything.
+
+If you are only using built-in serializers (Pojo, Kryo, Avro, Tuple, ...), and 
your savepoint is 
+from Flink < 1.8.0, please first upgrade your job to 1.8.x <= Flink <= 1.16.x, 
before upgrading in 
+the second step to Flink >= 1.17.x.
+
+If previously you were using a custom serialiser that 
+depends on `TypeSerializerConfigSnapshot`, please first while still using 
1.8.x <= Flink <= 1.16.x 
+upgrade your serializer to `TypeSerializerSnapshot`, take a savepoint and 
restore from that 
+savepoint in Flink >= 1.7.0.
+
+### Python
+
+#### Remove duplicated operators in the StreamGraph for Python DataStream API 
jobs
+##### [FLINK-31272](https://issues.apache.org/jira/browse/FLINK-31272)
+This duplicated operator issue has been addressed since 1.15.4, 1.16.2 and 
1.17.0. For jobs which 
+are not affected by this issue, there are no backward compatibility issues. 
However, for jobs which 
+are affected, it may not be possible to restore from savepoints generated from 
versions 
+1.15.0 ~ 1.15.3 and 1.16.0 ~ 1.16.1.
+
+
+### Dependency upgrades
+
+#### Upgrade FRocksDB to 6.20.3-ververica-2.0
+##### [FLINK-30836](https://issues.apache.org/jira/browse/FLINK-30836)
+Upgrade FRocksDB to 6.20.3-ververica-2.0.
+
+#### Upgrade the minimal supported hadoop version to 2.10.2
+##### [FLINK-29710](https://issues.apache.org/jira/browse/FLINK-29710)
+The minimum Hadoop version supported by Apache Flink has been updated to 
version 2.10.2. For Hadoop 
+3, the minimum Hadoop version that is now supported is version 3.2.3.
+
+#### Upgrade Calcite version to 1.27
+##### [FLINK-20873](https://issues.apache.org/jira/browse/FLINK-20873)

Review Comment:
   Since finally in Flink 1.17.0 it was upgraded to 1.29.0, I think it would 
make sense to use the latest Calcite version in 1.17 branch
   ```suggestion
   #### Upgrade Calcite version to 1.29.0
   ##### [FLINK-20873](https://issues.apache.org/jira/browse/FLINK-20873)
   ##### [FLINK-21239](https://issues.apache.org/jira/browse/FLINK-21239)
   ##### [FLINK-29932](https://issues.apache.org/jira/browse/FLINK-29932)
   Calcite upgrade brings optimization changing logical plans for some queries 
involving `Sarg` and 
   queries with `count` of non-distinct values.
   ```



-- 
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