You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by gy...@apache.org on 2023/01/10 14:10:22 UTC

[flink-web] branch asf-site updated (9f595f70f -> b8d3edecb)

This is an automated email from the ASF dual-hosted git repository.

gyfora pushed a change to branch asf-site
in repository https://gitbox.apache.org/repos/asf/flink-web.git


    from 9f595f70f Rebuild website
     new 95acdbe96 Flink Kubernetes Operator 1.3.1
     new b8d3edecb regenerate website

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 _config.yml                                        |  21 +-
 ...2023-01-10-release-kubernetes-operator-1.3.1.md |  45 +++++
 content/blog/feed.xml                              | 213 +++++----------------
 content/blog/index.html                            |  45 +++--
 content/blog/page10/index.html                     |  46 +++--
 content/blog/page11/index.html                     |  43 +++--
 content/blog/page12/index.html                     |  43 +++--
 content/blog/page13/index.html                     |  43 +++--
 content/blog/page14/index.html                     |  45 +++--
 content/blog/page15/index.html                     |  45 +++--
 content/blog/page16/index.html                     |  45 +++--
 content/blog/page17/index.html                     |  47 +++--
 content/blog/page18/index.html                     |  47 +++--
 content/blog/page19/index.html                     |  47 +++--
 content/blog/page2/index.html                      |  43 +++--
 content/blog/page20/index.html                     |  47 +++--
 content/blog/page21/index.html                     |  32 +++-
 content/blog/page3/index.html                      |  43 +++--
 content/blog/page4/index.html                      |  43 +++--
 content/blog/page5/index.html                      |  45 +++--
 content/blog/page6/index.html                      |  47 +++--
 content/blog/page7/index.html                      |  45 +++--
 content/blog/page8/index.html                      |  45 +++--
 content/blog/page9/index.html                      |  48 +++--
 content/downloads.html                             |  21 +-
 content/index.html                                 |   8 +-
 .../01/10/release-kubernetes-operator-1.3.1.html}  |  53 ++---
 content/zh/index.html                              |   8 +-
 28 files changed, 784 insertions(+), 519 deletions(-)
 create mode 100644 _posts/2023-01-10-release-kubernetes-operator-1.3.1.md
 copy content/news/{2016/05/11/release-1.0.3.html => 2023/01/10/release-kubernetes-operator-1.3.1.html} (83%)


[flink-web] 02/02: regenerate website

Posted by gy...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gyfora pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/flink-web.git

commit b8d3edecb315ca0832c5f6a2d3161eed11fc2b55
Author: Gabor Somogyi <ga...@apple.com>
AuthorDate: Tue Jan 10 15:05:00 2023 +0100

    regenerate website
---
 content/blog/feed.xml                              | 213 ++++-----------
 content/blog/index.html                            |  45 +++-
 content/blog/page10/index.html                     |  46 +++-
 content/blog/page11/index.html                     |  43 ++-
 content/blog/page12/index.html                     |  43 ++-
 content/blog/page13/index.html                     |  43 ++-
 content/blog/page14/index.html                     |  45 ++--
 content/blog/page15/index.html                     |  45 +++-
 content/blog/page16/index.html                     |  45 ++--
 content/blog/page17/index.html                     |  47 ++--
 content/blog/page18/index.html                     |  47 ++--
 content/blog/page19/index.html                     |  47 ++--
 content/blog/page2/index.html                      |  43 ++-
 content/blog/page20/index.html                     |  47 ++--
 content/blog/page21/index.html                     |  32 ++-
 content/blog/page3/index.html                      |  43 ++-
 content/blog/page4/index.html                      |  43 ++-
 content/blog/page5/index.html                      |  45 ++--
 content/blog/page6/index.html                      |  47 ++--
 content/blog/page7/index.html                      |  45 +++-
 content/blog/page8/index.html                      |  45 ++--
 content/blog/page9/index.html                      |  48 ++--
 content/downloads.html                             |  21 +-
 content/index.html                                 |   8 +-
 .../01/10/release-kubernetes-operator-1.3.1.html}  | 297 ++++-----------------
 content/zh/index.html                              |   8 +-
 26 files changed, 753 insertions(+), 728 deletions(-)

diff --git a/content/blog/feed.xml b/content/blog/feed.xml
index 580d28af4..e0cf82869 100644
--- a/content/blog/feed.xml
+++ b/content/blog/feed.xml
@@ -6,6 +6,51 @@
 <link>https://flink.apache.org/blog</link>
 <atom:link href="https://flink.apache.org/blog/feed.xml" rel="self" type="application/rss+xml" />
 
+<item>
+<title>Apache Flink Kubernetes Operator 1.3.1 Release Announcement</title>
+<description>&lt;p&gt;The Apache Flink Community is pleased to announce the first bug fix release of the Flink Kubernetes Operator 1.3 series.&lt;/p&gt;
+
+&lt;p&gt;The release contains fixes for several critical issues and some major stability improvements for the application upgrade mechanism.&lt;/p&gt;
+
+&lt;p&gt;We highly recommend all users to upgrade to Flink Kubernetes Operator 1.3.1.&lt;/p&gt;
+
+&lt;h2 id=&quot;release-notes&quot;&gt;Release Notes&lt;/h2&gt;
+
+&lt;h3 id=&quot;bug&quot;&gt;Bug&lt;/h3&gt;
+&lt;ul&gt;
+  &lt;li&gt;[FLINK-30329] - flink-kubernetes-operator helm chart does not work with dynamic config because of use of volumeMount subPath&lt;/li&gt;
+  &lt;li&gt;[FLINK-30361] - Cluster deleted and created back while updating replicas&lt;/li&gt;
+  &lt;li&gt;[FLINK-30406] - Jobmanager Deployment error without HA metadata should not lead to unrecoverable error&lt;/li&gt;
+  &lt;li&gt;[FLINK-30437] - State incompatibility issue might cause state loss&lt;/li&gt;
+  &lt;li&gt;[FLINK-30527] - Last-state suspend followed by flinkVersion change may lead to state loss&lt;/li&gt;
+  &lt;li&gt;[FLINK-30528] - Job may be stuck in upgrade loop when last-state fallback is disabled and deployment is missing&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;h3 id=&quot;improvement&quot;&gt;Improvement&lt;/h3&gt;
+&lt;ul&gt;
+  &lt;li&gt;[FLINK-28875] - Add FlinkSessionJobControllerTest&lt;/li&gt;
+  &lt;li&gt;[FLINK-30408] - Add unit test for HA metadata check logic&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;h2 id=&quot;release-resources&quot;&gt;Release Resources&lt;/h2&gt;
+&lt;p&gt;The source artifacts and helm chart are available on the Downloads page of the Flink website. You can easily try out the new features shipped in the official 1.3.1 release by adding the Helm chart to your own local registry:&lt;/p&gt;
+
+&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code&gt;$ helm repo add flink-kubernetes-operator-1.3.1 https://archive.apache.org/dist/flink/flink-kubernetes-operator-1.3.1/
+$ helm install flink-kubernetes-operator flink-kubernetes-operator-1.3.1/flink-kubernetes-operator --set webhook.create=false
+&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
+
+&lt;p&gt;You can also find official Kubernetes Operator Docker images of the new version on &lt;a href=&quot;https://hub.docker.com/r/apache/flink-kubernetes-operator&quot;&gt;Dockerhub&lt;/a&gt;.&lt;/p&gt;
+
+&lt;p&gt;For more details, check the &lt;a href=&quot;https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-release-1.3/&quot;&gt;updated documentation&lt;/a&gt; and the release notes. We encourage you to download the release and share your feedback with the community through the Flink mailing lists or JIRA.&lt;/p&gt;
+
+&lt;h2 id=&quot;list-of-contributors&quot;&gt;List of Contributors&lt;/h2&gt;
+&lt;p&gt;Gyula Fora, Andrew Otto, Swathi Chandrashekar, Peter Vary&lt;/p&gt;
+</description>
+<pubDate>Tue, 10 Jan 2023 09:00:00 +0100</pubDate>
+<link>https://flink.apache.org/news/2023/01/10/release-kubernetes-operator-1.3.1.html</link>
+<guid isPermaLink="true">/news/2023/01/10/release-kubernetes-operator-1.3.1.html</guid>
+</item>
+
 <item>
 <title>Apache Flink Kubernetes Operator 1.3.0 Release Announcement</title>
 <description>&lt;p&gt;The Flink community is happy to announce that the latest Flink Kubernetes Operator version went live today. Beyond the regular operator improvements and fixes the 1.3.0 version also integrates better with some popular infrastructure management tools like OLM and Argo CD. These improvements are clear indicators that the original intentions of the Flink community, namely to provide the de facto standard solution for managing Flink applications on Kubernetes is making  [...]
@@ -19637,173 +19682,5 @@ Registering types with Kryo significantly improves its performance with only 64%
 <guid isPermaLink="true">/news/2020/04/15/flink-serialization-tuning-vol-1.html</guid>
 </item>
 
-<item>
-<title>PyFlink: Introducing Python Support for UDFs in Flink&#39;s Table API</title>
-<description>&lt;p&gt;Flink 1.9 introduced the Python Table API, allowing developers and data engineers to write Python Table API jobs for Table transformations and analysis, such as Python ETL or aggregate jobs. However, Python users faced some limitations when it came to support for Python UDFs in Flink 1.9, preventing them from extending the system’s built-in functionality.&lt;/p&gt;
-
-&lt;p&gt;In Flink 1.10, the community further extended the support for Python by adding Python UDFs in PyFlink. Additionally, both the Python UDF environment and dependency management are now supported, allowing users to import third-party libraries in the UDFs, leveraging Python’s rich set of third-party libraries.&lt;/p&gt;
-
-&lt;h1 id=&quot;python-support-for-udfs-in-flink-110&quot;&gt;Python Support for UDFs in Flink 1.10&lt;/h1&gt;
-
-&lt;p&gt;Before diving into how you can define and use Python UDFs, we explain the motivation and background behind how UDFs work in PyFlink and provide some additional context about the implementation of our approach. Below we give a brief introduction on the PyFlink architecture from job submission, all the way to executing the Python UDF.&lt;/p&gt;
-
-&lt;p&gt;The PyFlink architecture mainly includes two parts — local and cluster — as shown in the architecture visual below. The local phase is the compilation of the job, and the cluster is the execution of the job.&lt;/p&gt;
-
-&lt;center&gt;
-&lt;img src=&quot;/img/blog/2020-04-09-pyflink-udfs/pyflink-udf-architecture.png&quot; width=&quot;600px&quot; alt=&quot;PyFlink UDF Architecture&quot; /&gt;
-&lt;/center&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;p&gt;For the local part, the Python API is a mapping of the Java API:  each time Python executes a method in the figure above, it will synchronously call the method corresponding to Java through Py4J, and finally generate a Java JobGraph, before submitting it to the cluster.&lt;/p&gt;
-
-&lt;p&gt;For the cluster part, just like ordinary Java jobs, the JobMaster schedules tasks to TaskManagers. The tasks that include Python UDF in a TaskManager involve the execution of Java and Python operators. In the Python UDF operator, various gRPC services are used to provide different communications between the Java VM and the Python VM, such as DataService for data transmissions, StateService for state requirements, and Logging and Metrics Services. These services are built on Beam [...]
-
-&lt;h1 id=&quot;how-to-use-pyflink-with-udfs-in-flink-110&quot;&gt;How to use PyFlink with UDFs in Flink 1.10&lt;/h1&gt;
-
-&lt;p&gt;This section provides some Python user defined function (UDF) examples, including how to install PyFlink, how to define/register/invoke UDFs in PyFlink and how to execute the job.&lt;/p&gt;
-
-&lt;h2 id=&quot;install-pyflink&quot;&gt;Install PyFlink&lt;/h2&gt;
-&lt;p&gt;Using Python in Apache Flink requires installing PyFlink. PyFlink is available through PyPI and can be easily installed using pip:&lt;/p&gt;
-
-&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;nv&quot;&gt;$ &lt;/span&gt;python -m pip install apache-flink&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
-&lt;div class=&quot;alert alert-info&quot;&gt;
-  &lt;p&gt;&lt;span class=&quot;label label-info&quot; style=&quot;display: inline-block&quot;&gt;&lt;span class=&quot;glyphicon glyphicon-info-sign&quot; aria-hidden=&quot;true&quot;&gt;&lt;/span&gt; Note&lt;/span&gt;
-Please note that Python 3.5 or higher is required to install and run PyFlink&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;h2 id=&quot;define-a-python-udf&quot;&gt;Define a Python UDF&lt;/h2&gt;
-
-&lt;p&gt;There are many ways to define a Python scalar function, besides extending the base class &lt;code&gt;ScalarFunction&lt;/code&gt;. The following example shows the different ways of defining a Python scalar function that takes two columns of &lt;code&gt;BIGINT&lt;/code&gt; as input parameters and returns the sum of them as the result.&lt;/p&gt;
-
-&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;&lt;span class=&quot;c&quot;&gt;# option 1: extending the base class `ScalarFunction`&lt;/span&gt;
-&lt;span class=&quot;k&quot;&gt;class&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;Add&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;ScalarFunction&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
-  &lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;eval&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;bp&quot;&gt;self&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
-    &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;
-
-&lt;span class=&quot;n&quot;&gt;add&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;udf&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Add&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(),&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;&lt;span [...]
-
-&lt;span class=&quot;c&quot;&gt;# option 2: Python function&lt;/span&gt;
-&lt;span class=&quot;nd&quot;&gt;@udf&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;input_types&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(),&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataTypes&lt;/sp [...]
-&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;add&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
-  &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;
-
-&lt;span class=&quot;c&quot;&gt;# option 3: lambda function&lt;/span&gt;
-&lt;span class=&quot;n&quot;&gt;add&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;udf&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;lambda&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt; &lt;span class=&q [...]
-
-&lt;span class=&quot;c&quot;&gt;# option 4: callable function&lt;/span&gt;
-&lt;span class=&quot;k&quot;&gt;class&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;CallableAdd&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;object&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
-  &lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;__call__&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;bp&quot;&gt;self&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
-    &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;
-
-&lt;span class=&quot;n&quot;&gt;add&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;udf&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;CallableAdd&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(),&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt; [...]
-
-&lt;span class=&quot;c&quot;&gt;# option 5: partial function&lt;/span&gt;
-&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;partial_add&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;k&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
-  &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;k&lt;/span&gt;
-
-&lt;span class=&quot;n&quot;&gt;add&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;udf&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;functools&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;partial&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;partial_add&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; & [...]
-          &lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;())&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
-
-&lt;h2 id=&quot;register-a-python-udf&quot;&gt;Register a Python UDF&lt;/h2&gt;
-
-&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;&lt;span class=&quot;c&quot;&gt;# register the Python function&lt;/span&gt;
-&lt;span class=&quot;n&quot;&gt;table_env&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;register_function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;add&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;add&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
-
-&lt;h2 id=&quot;invoke-a-python-udf&quot;&gt;Invoke a Python UDF&lt;/h2&gt;
-
-&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;&lt;span class=&quot;c&quot;&gt;# use the function in Python Table API&lt;/span&gt;
-&lt;span class=&quot;n&quot;&gt;my_table&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;select&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;add(a, b)&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
-
-&lt;p&gt;Below, you can find a complete example of using Python UDF.&lt;/p&gt;
-
-&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;&lt;span class=&quot;kn&quot;&gt;from&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;pyflink.datastream&lt;/span&gt; &lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;StreamExecutionEnvironment&lt;/span&gt;
-&lt;span class=&quot;kn&quot;&gt;from&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;pyflink.table&lt;/span&gt; &lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;StreamTableEnvironment&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;
-&lt;span class=&quot;kn&quot;&gt;from&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;pyflink.table.descriptors&lt;/span&gt; &lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Schema&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;OldCsv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;FileSystem&lt;/span&gt;
-&lt;span class=&quot;kn&quot;&gt;from&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;pyflink.table.udf&lt;/span&gt; &lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;udf&lt;/span&gt;
-
-&lt;span class=&quot;n&quot;&gt;env&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;StreamExecutionEnvironment&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;get_execution_environment&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
-&lt;span class=&quot;n&quot;&gt;env&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;set_parallelism&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
-&lt;span class=&quot;n&quot;&gt;t_env&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;StreamTableEnvironment&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;create&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;env&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
-
-&lt;span class=&quot;n&quot;&gt;add&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;udf&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;lambda&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt; &lt;span class=&q [...]
-
-&lt;span class=&quot;n&quot;&gt;t_env&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;register_function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;add&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;add&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
-
-&lt;span class=&quot;n&quot;&gt;t_env&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;connect&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;FileSystem&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;path&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;/tmp/input&amp [...]
-    &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;with_format&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;OldCsv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
-                 &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;field&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;a&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;())&lt;/span&gt;
-                 &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;field&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;b&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()))&lt;/span&gt; \
-    &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;with_schema&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Schema&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
-                 &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;field&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;a&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;())&lt;/span&gt;
-                 &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;field&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;b&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()))&lt;/span&gt; \
-    &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;create_temporary_table&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;mySource&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
-
-&lt;span class=&quot;n&quot;&gt;t_env&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;connect&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;FileSystem&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;path&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;/tmp/output&am [...]
-    &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;with_format&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;OldCsv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
-                 &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;field&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;sum&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()))&lt;/span&gt; \
-    &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;with_schema&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Schema&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
-                 &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;field&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;sum&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()))&lt;/span&gt; \
-    &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;create_temporary_table&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;mySink&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
-
-&lt;span class=&quot;n&quot;&gt;t_env&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;from_path&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;mySource&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;\
-    &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;select&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;add(a, b)&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; \
-    &lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;insert_into&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;mySink&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
-
-&lt;span class=&quot;n&quot;&gt;t_env&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;execute&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;tutorial_job&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
-
-&lt;h2 id=&quot;submit-the-job&quot;&gt;Submit the job&lt;/h2&gt;
-
-&lt;p&gt;Firstly, you need to prepare the input data in the “/tmp/input” file. For example,&lt;/p&gt;
-
-&lt;p&gt;&lt;code&gt;$ echo &quot;1,2&quot; &amp;gt; /tmp/input&lt;/code&gt;&lt;/p&gt;
-
-&lt;p&gt;Next, you can run this example on the command line,&lt;/p&gt;
-
-&lt;p&gt;&lt;code&gt;$ python python_udf_sum.py&lt;/code&gt;&lt;/p&gt;
-
-&lt;p&gt;The command builds and runs the Python Table API program in a local mini-cluster. You can also submit the Python Table API program to a remote cluster using different command lines, (see more details &lt;a href=&quot;https://nightlies.apache.org/flink/flink-docs-release-1.10/ops/cli.html#job-submission-examples&quot;&gt;here&lt;/a&gt;).&lt;/p&gt;
-
-&lt;p&gt;Finally, you can see the execution result on the command line:&lt;/p&gt;
-
-&lt;p&gt;&lt;code&gt;$ cat /tmp/output
- 3&lt;/code&gt;&lt;/p&gt;
-
-&lt;h2 id=&quot;python-udf-dependency-management&quot;&gt;Python UDF dependency management&lt;/h2&gt;
-
-&lt;p&gt;In many cases, you would like to import third-party dependencies in the Python UDF. The example below provides detailed guidance on how to manage such dependencies.&lt;/p&gt;
-
-&lt;p&gt;Suppose you want to use the &lt;code&gt;mpmath&lt;/code&gt; to perform the sum of the example above. The Python UDF may look like:&lt;/p&gt;
-
-&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;&lt;span class=&quot;nd&quot;&gt;@udf&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;input_types&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;DataTypes&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;BIGINT&lt;/span&gt;& [...]
-&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;add&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
-    &lt;span class=&quot;kn&quot;&gt;from&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;mpmath&lt;/span&gt; &lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;fadd&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;# add third-party dependency&lt;/span&gt;
-    &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;fadd&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;j&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
-
-&lt;p&gt;To make it available on the worker node that does not contain the dependency, you can specify the dependencies with the following commands and API:&lt;/p&gt;
-
-&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;nv&quot;&gt;$ &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;cd&lt;/span&gt; /tmp
-&lt;span class=&quot;nv&quot;&gt;$ &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;echo &lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;mpmath&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;==&lt;/span&gt;1.1.0 &amp;gt; requirements.txt
-&lt;span class=&quot;nv&quot;&gt;$ &lt;/span&gt;pip download -d cached_dir -r requirements.txt --no-binary :all:&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
-
-&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot;&gt;&lt;span class=&quot;n&quot;&gt;t_env&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;set_python_requirements&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;/tmp/requirements.txt&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;/tmp/cached [...]
-
-&lt;p&gt;A &lt;code&gt;requirements.txt&lt;/code&gt; file that defines the third-party dependencies is used. If the dependencies cannot be accessed in the cluster, then you can specify a directory containing the installation packages of these dependencies by using the parameter “&lt;code&gt;requirements_cached_dir&lt;/code&gt;”, as illustrated in the example above. The dependencies will be uploaded to the cluster and installed offline.&lt;/p&gt;
-
-&lt;h1 id=&quot;conclusion--upcoming-work&quot;&gt;Conclusion &amp;amp; Upcoming work&lt;/h1&gt;
-
-&lt;p&gt;In this blog post, we introduced the architecture of Python UDFs in PyFlink and provided some examples on how to define, register and invoke UDFs. Flink 1.10 brings Python support in the framework to new levels, allowing Python users to write even more magic with their preferred language. The community is actively working towards continuously improving the functionality and performance of PyFlink. Future work in upcoming releases will introduce support for Pandas UDFs in scalar  [...]
-
-&lt;center&gt;
-&lt;img src=&quot;/img/blog/2020-04-09-pyflink-udfs/roadmap-of-pyflink.png&quot; width=&quot;600px&quot; alt=&quot;Roadmap of PyFlink&quot; /&gt;
-&lt;/center&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-</description>
-<pubDate>Thu, 09 Apr 2020 14:00:00 +0200</pubDate>
-<link>https://flink.apache.org/2020/04/09/pyflink-udf-support-flink.html</link>
-<guid isPermaLink="true">/2020/04/09/pyflink-udf-support-flink.html</guid>
-</item>
-
 </channel>
 </rss>
diff --git a/content/blog/index.html b/content/blog/index.html
index f862c5356..f4daf1e97 100644
--- a/content/blog/index.html
+++ b/content/blog/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></h2>
+
+      <p>10 Jan 2023
+       Gyula Fora (<a href="https://twitter.com/GyulaFora">@GyulaFora</a>)</p>
+
+      <p><p>The Apache Flink Community is pleased to announce the first bug fix release of the Flink Kubernetes Operator 1.3 series.</p>
+
+</p>
+
+      <p><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></h2>
 
@@ -367,19 +382,6 @@ with 19 FLIPs and 1100+ issues completed, bringing a lot of exciting features to
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2022/08/25/release-1.15.2.html">Apache Flink 1.15.2 Release Announcement</a></h2>
-
-      <p>25 Aug 2022
-       Danny Cranmer </p>
-
-      <p>The Apache Flink Community is pleased to announce a bug fix release for Flink 1.15.</p>
-
-      <p><a href="/news/2022/08/25/release-1.15.2.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -408,9 +410,24 @@ with 19 FLIPs and 1100+ issues completed, bringing a lot of exciting features to
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/blog/page10/index.html b/content/blog/page10/index.html
index 0bdcce375..b8eb1858e 100644
--- a/content/blog/page10/index.html
+++ b/content/blog/page10/index.html
@@ -240,6 +240,22 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/ecosystem/2020/06/23/flink-on-zeppelin-part2.html">Flink on Zeppelin Notebooks for Interactive Data Analysis - Part 2</a></h2>
+
+      <p>23 Jun 2020
+       Jeff Zhang (<a href="https://twitter.com/zjffdu">@zjffdu</a>)</p>
+
+      <p><p>In a previous post, we introduced the basics of Flink on Zeppelin and how to do Streaming ETL. In this second part of the “Flink on Zeppelin” series of posts, I will share how to 
+perform streaming data visualization via Flink on Zeppelin and how to use Apache Flink UDFs in Zeppelin.</p>
+
+</p>
+
+      <p><a href="/ecosystem/2020/06/23/flink-on-zeppelin-part2.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2020/06/15/flink-on-zeppelin-part1.html">Flink on Zeppelin Notebooks for Interactive Data Analysis - Part 1</a></h2>
 
@@ -367,19 +383,6 @@ and provide a tutorial for running Streaming ETL with Flink on Zeppelin.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/2020/04/09/pyflink-udf-support-flink.html">PyFlink: Introducing Python Support for UDFs in Flink's Table API</a></h2>
-
-      <p>09 Apr 2020
-       Jincheng Sun (<a href="https://twitter.com/sunjincheng121">@sunjincheng121</a>) &amp; Markos Sfikas (<a href="https://twitter.com/MarkSfik">@MarkSfik</a>)</p>
-
-      <p>Flink 1.10 extends its support for Python by adding Python UDFs in PyFlink. This post explains how UDFs work in PyFlink and gives some practical examples of how to use UDFs in PyFlink.</p>
-
-      <p><a href="/2020/04/09/pyflink-udf-support-flink.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -408,9 +411,24 @@ and provide a tutorial for running Streaming ETL with Flink on Zeppelin.</p>
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/blog/page11/index.html b/content/blog/page11/index.html
index 1cc81ee19..2eb9e7eb5 100644
--- a/content/blog/page11/index.html
+++ b/content/blog/page11/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/2020/04/09/pyflink-udf-support-flink.html">PyFlink: Introducing Python Support for UDFs in Flink's Table API</a></h2>
+
+      <p>09 Apr 2020
+       Jincheng Sun (<a href="https://twitter.com/sunjincheng121">@sunjincheng121</a>) &amp; Markos Sfikas (<a href="https://twitter.com/MarkSfik">@MarkSfik</a>)</p>
+
+      <p>Flink 1.10 extends its support for Python by adding Python UDFs in PyFlink. This post explains how UDFs work in PyFlink and gives some practical examples of how to use UDFs in PyFlink.</p>
+
+      <p><a href="/2020/04/09/pyflink-udf-support-flink.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2020/04/07/release-statefun-2.0.0.html">Stateful Functions 2.0 - An Event-driven Database on Apache Flink</a></h2>
 
@@ -366,19 +379,6 @@ This release marks a big milestone: Stateful Functions 2.0 is not only an API up
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2020/01/29/state-unlocked-interacting-with-state-in-apache-flink.html">State Unlocked: Interacting with State in Apache Flink</a></h2>
-
-      <p>29 Jan 2020
-       Seth Wiesman (<a href="https://twitter.com/sjwiesman">@sjwiesman</a>)</p>
-
-      <p>This post discusses the efforts of the Flink community as they relate to state management in Apache Flink. We showcase some practical examples of how the different features and APIs can be utilized and cover some future ideas for new and improved ways of managing state in Apache Flink.</p>
-
-      <p><a href="/news/2020/01/29/state-unlocked-interacting-with-state-in-apache-flink.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -407,10 +407,25 @@ This release marks a big milestone: Stateful Functions 2.0 is not only an API up
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page12/index.html b/content/blog/page12/index.html
index b0c55a849..a22bc56a5 100644
--- a/content/blog/page12/index.html
+++ b/content/blog/page12/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2020/01/29/state-unlocked-interacting-with-state-in-apache-flink.html">State Unlocked: Interacting with State in Apache Flink</a></h2>
+
+      <p>29 Jan 2020
+       Seth Wiesman (<a href="https://twitter.com/sjwiesman">@sjwiesman</a>)</p>
+
+      <p>This post discusses the efforts of the Flink community as they relate to state management in Apache Flink. We showcase some practical examples of how the different features and APIs can be utilized and cover some future ideas for new and improved ways of managing state in Apache Flink.</p>
+
+      <p><a href="/news/2020/01/29/state-unlocked-interacting-with-state-in-apache-flink.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2020/01/15/demo-fraud-detection.html">Advanced Flink Application Patterns Vol.1: Case Study of a Fraud Detection System</a></h2>
 
@@ -366,19 +379,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/2019/07/23/flink-network-stack-2.html">Flink Network Stack Vol. 2: Monitoring, Metrics, and that Backpressure Thing</a></h2>
-
-      <p>23 Jul 2019
-       Nico Kruber  &amp; Piotr Nowojski </p>
-
-      <p>In a previous blog post, we presented how Flink’s network stack works from the high-level abstractions to the low-level details. This second  post discusses monitoring network-related metrics to identify backpressure or bottlenecks in throughput and latency.</p>
-
-      <p><a href="/2019/07/23/flink-network-stack-2.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -407,9 +407,24 @@
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/blog/page13/index.html b/content/blog/page13/index.html
index 6aec0cb07..b35553e85 100644
--- a/content/blog/page13/index.html
+++ b/content/blog/page13/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/2019/07/23/flink-network-stack-2.html">Flink Network Stack Vol. 2: Monitoring, Metrics, and that Backpressure Thing</a></h2>
+
+      <p>23 Jul 2019
+       Nico Kruber  &amp; Piotr Nowojski </p>
+
+      <p>In a previous blog post, we presented how Flink’s network stack works from the high-level abstractions to the low-level details. This second  post discusses monitoring network-related metrics to identify backpressure or bottlenecks in throughput and latency.</p>
+
+      <p><a href="/2019/07/23/flink-network-stack-2.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2019/07/02/release-1.8.1.html">Apache Flink 1.8.1 Released</a></h2>
 
@@ -367,19 +380,6 @@ for more details.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2019/03/06/ffsf-preview.html">What to expect from Flink Forward San Francisco 2019</a></h2>
-
-      <p>06 Mar 2019
-       Fabian Hueske (<a href="https://twitter.com/fhueske">@fhueske</a>)</p>
-
-      <p>The third annual Flink Forward conference in San Francisco is just a few weeks away. Let's see what Flink Forward SF 2019 has in store for the Apache Flink and stream processing communities. This post covers some of its highlights!</p>
-
-      <p><a href="/news/2019/03/06/ffsf-preview.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -408,10 +408,25 @@ for more details.</p>
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page14/index.html b/content/blog/page14/index.html
index c90563cef..d8ec169bb 100644
--- a/content/blog/page14/index.html
+++ b/content/blog/page14/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2019/03/06/ffsf-preview.html">What to expect from Flink Forward San Francisco 2019</a></h2>
+
+      <p>06 Mar 2019
+       Fabian Hueske (<a href="https://twitter.com/fhueske">@fhueske</a>)</p>
+
+      <p>The third annual Flink Forward conference in San Francisco is just a few weeks away. Let's see what Flink Forward SF 2019 has in store for the Apache Flink and stream processing communities. This post covers some of its highlights!</p>
+
+      <p><a href="/news/2019/03/06/ffsf-preview.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2019/02/25/monitoring-best-practices.html">Monitoring Apache Flink Applications 101</a></h2>
 
@@ -373,21 +386,6 @@ Please check the <a href="https://issues.apache.org/jira/secure/ReleaseNote.jspa
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2018/10/29/release-1.5.5.html">Apache Flink 1.5.5 Released</a></h2>
-
-      <p>29 Oct 2018
-      </p>
-
-      <p><p>The Apache Flink community released the fifth bugfix version of the Apache Flink 1.5 series.</p>
-
-</p>
-
-      <p><a href="/news/2018/10/29/release-1.5.5.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -416,9 +414,24 @@ Please check the <a href="https://issues.apache.org/jira/secure/ReleaseNote.jspa
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/blog/page15/index.html b/content/blog/page15/index.html
index aaf1988ab..d42e2fd82 100644
--- a/content/blog/page15/index.html
+++ b/content/blog/page15/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2018/10/29/release-1.5.5.html">Apache Flink 1.5.5 Released</a></h2>
+
+      <p>29 Oct 2018
+      </p>
+
+      <p><p>The Apache Flink community released the fifth bugfix version of the Apache Flink 1.5 series.</p>
+
+</p>
+
+      <p><a href="/news/2018/10/29/release-1.5.5.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2018/09/20/release-1.6.1.html">Apache Flink 1.6.1 Released</a></h2>
 
@@ -375,19 +390,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/features/2018/03/01/end-to-end-exactly-once-apache-flink.html">An Overview of End-to-End Exactly-Once Processing in Apache Flink (with Apache Kafka, too!)</a></h2>
-
-      <p>01 Mar 2018
-       Piotr Nowojski (<a href="https://twitter.com/PiotrNowojski">@PiotrNowojski</a>) &amp; Mike Winters (<a href="https://twitter.com/wints">@wints</a>)</p>
-
-      <p>Flink 1.4.0 introduced a new feature that makes it possible to build end-to-end exactly-once applications with Flink and data sources and sinks that support transactions.</p>
-
-      <p><a href="/features/2018/03/01/end-to-end-exactly-once-apache-flink.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -416,9 +418,24 @@
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/blog/page16/index.html b/content/blog/page16/index.html
index 1d0db2cc1..e522c6104 100644
--- a/content/blog/page16/index.html
+++ b/content/blog/page16/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/features/2018/03/01/end-to-end-exactly-once-apache-flink.html">An Overview of End-to-End Exactly-Once Processing in Apache Flink (with Apache Kafka, too!)</a></h2>
+
+      <p>01 Mar 2018
+       Piotr Nowojski (<a href="https://twitter.com/PiotrNowojski">@PiotrNowojski</a>) &amp; Mike Winters (<a href="https://twitter.com/wints">@wints</a>)</p>
+
+      <p>Flink 1.4.0 introduced a new feature that makes it possible to build end-to-end exactly-once applications with Flink and data sources and sinks that support transactions.</p>
+
+      <p><a href="/features/2018/03/01/end-to-end-exactly-once-apache-flink.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2018/02/15/release-1.4.1.html">Apache Flink 1.4.1 Released</a></h2>
 
@@ -374,21 +387,6 @@ what’s coming in Flink 1.4.0 as well as a preview of what the Flink community
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2017/05/16/official-docker-image.html">Introducing Docker Images for Apache Flink</a></h2>
-
-      <p>16 May 2017 by Patrick Lucas (Data Artisans) and Ismaël Mejía (Talend) (<a href="https://twitter.com/">@iemejia</a>)
-      </p>
-
-      <p><p>For some time, the Apache Flink community has provided scripts to build a Docker image to run Flink. Now, starting with version 1.2.1, Flink will have a <a href="https://hub.docker.com/r/_/flink/">Docker image</a> on the Docker Hub. This image is maintained by the Flink community and curated by the <a href="https://github.com/docker-library/official-images">Docker</a> team to ensure it meets the quality standards for container images of the Docker community.</p>
-
-</p>
-
-      <p><a href="/news/2017/05/16/official-docker-image.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -417,9 +415,24 @@ what’s coming in Flink 1.4.0 as well as a preview of what the Flink community
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/blog/page17/index.html b/content/blog/page17/index.html
index 8e11034a5..194a9e9c7 100644
--- a/content/blog/page17/index.html
+++ b/content/blog/page17/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2017/05/16/official-docker-image.html">Introducing Docker Images for Apache Flink</a></h2>
+
+      <p>16 May 2017 by Patrick Lucas (Data Artisans) and Ismaël Mejía (Talend) (<a href="https://twitter.com/">@iemejia</a>)
+      </p>
+
+      <p><p>For some time, the Apache Flink community has provided scripts to build a Docker image to run Flink. Now, starting with version 1.2.1, Flink will have a <a href="https://hub.docker.com/r/_/flink/">Docker image</a> on the Docker Hub. This image is maintained by the Flink community and curated by the <a href="https://github.com/docker-library/official-images">Docker</a> team to ensure it meets the quality standards for container images of the Docker community.</p>
+
+</p>
+
+      <p><a href="/news/2017/05/16/official-docker-image.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2017/04/26/release-1.2.1.html">Apache Flink 1.2.1 Released</a></h2>
 
@@ -368,21 +383,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2016/08/24/ff16-keynotes-panels.html">Flink Forward 2016: Announcing Schedule, Keynotes, and Panel Discussion</a></h2>
-
-      <p>24 Aug 2016
-      </p>
-
-      <p><p>An update for the Flink community: the <a href="http://flink-forward.org/kb_day/day-1/">Flink Forward 2016 schedule</a> is now available online. This year's event will include 2 days of talks from stream processing experts at Google, MapR, Alibaba, Netflix, Cloudera, and more. Following the talks is a full day of hands-on Flink training.</p>
-
-</p>
-
-      <p><a href="/news/2016/08/24/ff16-keynotes-panels.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -411,10 +411,25 @@
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page18/index.html b/content/blog/page18/index.html
index 8917103f5..2e3195ec5 100644
--- a/content/blog/page18/index.html
+++ b/content/blog/page18/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2016/08/24/ff16-keynotes-panels.html">Flink Forward 2016: Announcing Schedule, Keynotes, and Panel Discussion</a></h2>
+
+      <p>24 Aug 2016
+      </p>
+
+      <p><p>An update for the Flink community: the <a href="http://flink-forward.org/kb_day/day-1/">Flink Forward 2016 schedule</a> is now available online. This year's event will include 2 days of talks from stream processing experts at Google, MapR, Alibaba, Netflix, Cloudera, and more. Following the talks is a full day of hands-on Flink training.</p>
+
+</p>
+
+      <p><a href="/news/2016/08/24/ff16-keynotes-panels.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2016/08/11/release-1.1.1.html">Flink 1.1.1 Released</a></h2>
 
@@ -372,21 +387,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2016/02/11/release-0.10.2.html">Flink 0.10.2 Released</a></h2>
-
-      <p>11 Feb 2016
-      </p>
-
-      <p><p>Today, the Flink community released Flink version <strong>0.10.2</strong>, the second bugfix release of the 0.10 series.</p>
-
-</p>
-
-      <p><a href="/news/2016/02/11/release-0.10.2.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -415,10 +415,25 @@
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page19/index.html b/content/blog/page19/index.html
index 2712e7c98..3559e2a3a 100644
--- a/content/blog/page19/index.html
+++ b/content/blog/page19/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2016/02/11/release-0.10.2.html">Flink 0.10.2 Released</a></h2>
+
+      <p>11 Feb 2016
+      </p>
+
+      <p><p>Today, the Flink community released Flink version <strong>0.10.2</strong>, the second bugfix release of the 0.10 series.</p>
+
+</p>
+
+      <p><a href="/news/2016/02/11/release-0.10.2.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2015/12/18/a-year-in-review.html">Flink 2015: A year in review, and a lookout to 2016</a></h2>
 
@@ -376,21 +391,6 @@ vertex-centric or gather-sum-apply to Flink dataflows.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2015/06/24/announcing-apache-flink-0.9.0-release.html">Announcing Apache Flink 0.9.0</a></h2>
-
-      <p>24 Jun 2015
-      </p>
-
-      <p><p>The Apache Flink community is pleased to announce the availability of the 0.9.0 release. The release is the result of many months of hard work within the Flink community. It contains many new features and improvements which were previewed in the 0.9.0-milestone1 release and have been polished since then. This is the largest Flink release so far.</p>
-
-</p>
-
-      <p><a href="/news/2015/06/24/announcing-apache-flink-0.9.0-release.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -419,10 +419,25 @@ vertex-centric or gather-sum-apply to Flink dataflows.</p>
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page2/index.html b/content/blog/page2/index.html
index 3d016bd0b..ba0cdeafe 100644
--- a/content/blog/page2/index.html
+++ b/content/blog/page2/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2022/08/25/release-1.15.2.html">Apache Flink 1.15.2 Release Announcement</a></h2>
+
+      <p>25 Aug 2022
+       Danny Cranmer </p>
+
+      <p>The Apache Flink Community is pleased to announce a bug fix release for Flink 1.15.</p>
+
+      <p><a href="/news/2022/08/25/release-1.15.2.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2022/07/25/release-kubernetes-operator-1.1.0.html">Apache Flink Kubernetes Operator 1.1.0 Release Announcement</a></h2>
 
@@ -362,19 +375,6 @@ We are now proud to announce the first production ready release of the operator
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/2022/05/23/latency-part2.html">Getting into Low-Latency Gears with Apache Flink - Part Two</a></h2>
-
-      <p>23 May 2022
-       Jun Qin  &amp; Nico Kruber </p>
-
-      <p>This multi-part series of blog post presents a collection of low-latency techniques in Flink. Following with part one, Part two continues  with a few more techniques that optimize latency directly.</p>
-
-      <p><a href="/2022/05/23/latency-part2.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -403,10 +403,25 @@ We are now proud to announce the first production ready release of the operator
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page20/index.html b/content/blog/page20/index.html
index 2c02214f2..e6c34e471 100644
--- a/content/blog/page20/index.html
+++ b/content/blog/page20/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2015/06/24/announcing-apache-flink-0.9.0-release.html">Announcing Apache Flink 0.9.0</a></h2>
+
+      <p>24 Jun 2015
+      </p>
+
+      <p><p>The Apache Flink community is pleased to announce the availability of the 0.9.0 release. The release is the result of many months of hard work within the Flink community. It contains many new features and improvements which were previewed in the 0.9.0-milestone1 release and have been polished since then. This is the largest Flink release so far.</p>
+
+</p>
+
+      <p><a href="/news/2015/06/24/announcing-apache-flink-0.9.0-release.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2015/05/14/Community-update-April.html">April 2015 in the Flink community</a></h2>
 
@@ -382,21 +397,6 @@ and offers a new API including definition of flexible windows.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2015/01/06/december-in-flink.html">December 2014 in the Flink community</a></h2>
-
-      <p>06 Jan 2015
-      </p>
-
-      <p><p>This is the first blog post of a “newsletter” like series where we give a summary of the monthly activity in the Flink community. As the Flink project grows, this can serve as a “tl;dr” for people that are not following the Flink dev and user mailing lists, or those that are simply overwhelmed by the traffic.</p>
-
-</p>
-
-      <p><a href="/news/2015/01/06/december-in-flink.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -425,10 +425,25 @@ and offers a new API including definition of flexible windows.</p>
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page21/index.html b/content/blog/page21/index.html
index ed6f0f674..b7b3b5e32 100644
--- a/content/blog/page21/index.html
+++ b/content/blog/page21/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2015/01/06/december-in-flink.html">December 2014 in the Flink community</a></h2>
+
+      <p>06 Jan 2015
+      </p>
+
+      <p><p>This is the first blog post of a “newsletter” like series where we give a summary of the monthly activity in the Flink community. As the Flink project grows, this can serve as a “tl;dr” for people that are not following the Flink dev and user mailing lists, or those that are simply overwhelmed by the traffic.</p>
+
+</p>
+
+      <p><a href="/news/2015/01/06/december-in-flink.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2014/11/18/hadoop-compatibility.html">Hadoop Compatibility in Flink</a></h2>
 
@@ -346,9 +361,24 @@ academic and open source project that Flink originates from.</p>
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/blog/page3/index.html b/content/blog/page3/index.html
index c43b9779b..c3a9c1a6f 100644
--- a/content/blog/page3/index.html
+++ b/content/blog/page3/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/2022/05/23/latency-part2.html">Getting into Low-Latency Gears with Apache Flink - Part Two</a></h2>
+
+      <p>23 May 2022
+       Jun Qin  &amp; Nico Kruber </p>
+
+      <p>This multi-part series of blog post presents a collection of low-latency techniques in Flink. Following with part one, Part two continues  with a few more techniques that optimize latency directly.</p>
+
+      <p><a href="/2022/05/23/latency-part2.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/2022/05/18/latency-part1.html">Getting into Low-Latency Gears with Apache Flink - Part One</a></h2>
 
@@ -368,19 +381,6 @@ exciting changes.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2022/02/18/release-1.13.6.html">Apache Flink 1.13.6 Release Announcement</a></h2>
-
-      <p>18 Feb 2022
-       Konstantin Knauf (<a href="https://twitter.com/snntrable">@snntrable</a>)</p>
-
-      <p>The Apache Flink Community is please to announce another bug fix release for Flink 1.13.</p>
-
-      <p><a href="/news/2022/02/18/release-1.13.6.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -409,10 +409,25 @@ exciting changes.</p>
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page4/index.html b/content/blog/page4/index.html
index 2509a0c20..7dd19d9c8 100644
--- a/content/blog/page4/index.html
+++ b/content/blog/page4/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2022/02/18/release-1.13.6.html">Apache Flink 1.13.6 Release Announcement</a></h2>
+
+      <p>18 Feb 2022
+       Konstantin Knauf (<a href="https://twitter.com/snntrable">@snntrable</a>)</p>
+
+      <p>The Apache Flink Community is please to announce another bug fix release for Flink 1.13.</p>
+
+      <p><a href="/news/2022/02/18/release-1.13.6.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2022/01/31/release-statefun-3.2.0.html">Stateful Functions 3.2.0 Release Announcement</a></h2>
 
@@ -364,19 +377,6 @@ This new release brings various improvements to the StateFun runtime, a leaner w
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/2021/11/03/flink-backward.html">Flink Backward - The Apache Flink Retrospective</a></h2>
-
-      <p>03 Nov 2021
-       Johannes Moser </p>
-
-      <p>A look back at the development cycle for Flink 1.14</p>
-
-      <p><a href="/2021/11/03/flink-backward.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -405,9 +405,24 @@ This new release brings various improvements to the StateFun runtime, a leaner w
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/blog/page5/index.html b/content/blog/page5/index.html
index fbcb91306..731e929c4 100644
--- a/content/blog/page5/index.html
+++ b/content/blog/page5/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/2021/11/03/flink-backward.html">Flink Backward - The Apache Flink Retrospective</a></h2>
+
+      <p>03 Nov 2021
+       Johannes Moser </p>
+
+      <p>A look back at the development cycle for Flink 1.14</p>
+
+      <p><a href="/2021/11/03/flink-backward.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/2021/10/26/sort-shuffle-part2.html">Sort-Based Blocking Shuffle Implementation in Flink - Part Two</a></h2>
 
@@ -377,21 +390,6 @@ This new release brings various improvements to the StateFun runtime, a leaner w
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2021/08/06/release-1.13.2.html">Apache Flink 1.13.2 Released</a></h2>
-
-      <p>06 Aug 2021
-       Yun Tang </p>
-
-      <p><p>The Apache Flink community released the second bugfix version of the Apache Flink 1.13 series.</p>
-
-</p>
-
-      <p><a href="/news/2021/08/06/release-1.13.2.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -420,9 +418,24 @@ This new release brings various improvements to the StateFun runtime, a leaner w
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/blog/page6/index.html b/content/blog/page6/index.html
index e8b8acdc2..ab8ddad5e 100644
--- a/content/blog/page6/index.html
+++ b/content/blog/page6/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2021/08/06/release-1.13.2.html">Apache Flink 1.13.2 Released</a></h2>
+
+      <p>06 Aug 2021
+       Yun Tang </p>
+
+      <p><p>The Apache Flink community released the second bugfix version of the Apache Flink 1.13 series.</p>
+
+</p>
+
+      <p><a href="/news/2021/08/06/release-1.13.2.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2021/08/06/release-1.12.5.html">Apache Flink 1.12.5 Released</a></h2>
 
@@ -369,21 +384,6 @@ to develop scalable, consistent, and elastic distributed applications.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2021/03/03/release-1.12.2.html">Apache Flink 1.12.2 Released</a></h2>
-
-      <p>03 Mar 2021
-       Yuan Mei  &amp; Roman Khachatryan </p>
-
-      <p><p>The Apache Flink community released the next bugfix version of the Apache Flink 1.12 series.</p>
-
-</p>
-
-      <p><a href="/news/2021/03/03/release-1.12.2.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -412,10 +412,25 @@ to develop scalable, consistent, and elastic distributed applications.</p>
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page7/index.html b/content/blog/page7/index.html
index c62fcfca9..59cb90035 100644
--- a/content/blog/page7/index.html
+++ b/content/blog/page7/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2021/03/03/release-1.12.2.html">Apache Flink 1.12.2 Released</a></h2>
+
+      <p>03 Mar 2021
+       Yuan Mei  &amp; Roman Khachatryan </p>
+
+      <p><p>The Apache Flink community released the next bugfix version of the Apache Flink 1.12 series.</p>
+
+</p>
+
+      <p><a href="/news/2021/03/03/release-1.12.2.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/2021/02/10/native-k8s-with-ha.html">How to natively deploy Flink on Kubernetes with High-Availability (HA)</a></h2>
 
@@ -365,19 +380,6 @@
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/news/2020/12/10/release-1.12.0.html">Apache Flink 1.12.0 Release Announcement</a></h2>
-
-      <p>10 Dec 2020
-       Marta Paes (<a href="https://twitter.com/morsapaes">@morsapaes</a>) &amp; Aljoscha Krettek (<a href="https://twitter.com/aljoscha">@aljoscha</a>)</p>
-
-      <p>The Apache Flink community is excited to announce the release of Flink 1.12.0! Close to 300 contributors worked on over 1k threads to bring significant improvements to usability as well as new features to Flink users across the whole API stack. We're particularly excited about adding efficient batch execution to the DataStream API, Kubernetes HA as an alternative to ZooKeeper, support for upsert mode in the Kafka SQL connector and the new Python DataStream API! Read on for all m [...]
-
-      <p><a href="/news/2020/12/10/release-1.12.0.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -406,10 +408,25 @@
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page8/index.html b/content/blog/page8/index.html
index 6e5979efb..88b5d58e9 100644
--- a/content/blog/page8/index.html
+++ b/content/blog/page8/index.html
@@ -240,6 +240,19 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/news/2020/12/10/release-1.12.0.html">Apache Flink 1.12.0 Release Announcement</a></h2>
+
+      <p>10 Dec 2020
+       Marta Paes (<a href="https://twitter.com/morsapaes">@morsapaes</a>) &amp; Aljoscha Krettek (<a href="https://twitter.com/aljoscha">@aljoscha</a>)</p>
+
+      <p>The Apache Flink community is excited to announce the release of Flink 1.12.0! Close to 300 contributors worked on over 1k threads to bring significant improvements to usability as well as new features to Flink users across the whole API stack. We're particularly excited about adding efficient batch execution to the DataStream API, Kubernetes HA as an alternative to ZooKeeper, support for upsert mode in the Kafka SQL connector and the new Python DataStream API! Read on for all m [...]
+
+      <p><a href="/news/2020/12/10/release-1.12.0.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2020/11/11/release-statefun-2.2.1.html">Stateful Functions 2.2.1 Release Announcement</a></h2>
 
@@ -369,21 +382,6 @@ as well as increased observability for operational purposes.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/2020/08/19/statefun.html">Monitoring and Controlling Networks of IoT Devices with Flink Stateful Functions</a></h2>
-
-      <p>19 Aug 2020
-       Igal Shilman (<a href="https://twitter.com/IgalShilman">@IgalShilman</a>)</p>
-
-      <p><p>In this blog post, we’ll take a look at a class of use cases that is a natural fit for <a href="https://flink.apache.org/stateful-functions.html">Flink Stateful Functions</a>: monitoring and controlling networks of connected devices (often called the “Internet of Things” (IoT)).</p>
-
-</p>
-
-      <p><a href="/2020/08/19/statefun.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -412,10 +410,25 @@ as well as increased observability for operational purposes.</p>
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
 
     <ul id="markdown-toc">
       
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
+
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
+    <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
+      
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
       
diff --git a/content/blog/page9/index.html b/content/blog/page9/index.html
index abd8bdb1f..fe7a9f0c3 100644
--- a/content/blog/page9/index.html
+++ b/content/blog/page9/index.html
@@ -240,6 +240,21 @@
   <div class="col-sm-8">
     <!-- Blog posts -->
     
+    <article>
+      <h2 class="blog-title"><a href="/2020/08/19/statefun.html">Monitoring and Controlling Networks of IoT Devices with Flink Stateful Functions</a></h2>
+
+      <p>19 Aug 2020
+       Igal Shilman (<a href="https://twitter.com/IgalShilman">@IgalShilman</a>)</p>
+
+      <p><p>In this blog post, we’ll take a look at a class of use cases that is a natural fit for <a href="https://flink.apache.org/stateful-functions.html">Flink Stateful Functions</a>: monitoring and controlling networks of connected devices (often called the “Internet of Things” (IoT)).</p>
+
+</p>
+
+      <p><a href="/2020/08/19/statefun.html">Continue reading &raquo;</a></p>
+    </article>
+
+    <hr>
+    
     <article>
       <h2 class="blog-title"><a href="/news/2020/08/06/external-resource.html">Accelerating your workload with GPU and other external resources</a></h2>
 
@@ -368,22 +383,6 @@ illustrate this trend.</p>
 
     <hr>
     
-    <article>
-      <h2 class="blog-title"><a href="/ecosystem/2020/06/23/flink-on-zeppelin-part2.html">Flink on Zeppelin Notebooks for Interactive Data Analysis - Part 2</a></h2>
-
-      <p>23 Jun 2020
-       Jeff Zhang (<a href="https://twitter.com/zjffdu">@zjffdu</a>)</p>
-
-      <p><p>In a previous post, we introduced the basics of Flink on Zeppelin and how to do Streaming ETL. In this second part of the “Flink on Zeppelin” series of posts, I will share how to 
-perform streaming data visualization via Flink on Zeppelin and how to use Apache Flink UDFs in Zeppelin.</p>
-
-</p>
-
-      <p><a href="/ecosystem/2020/06/23/flink-on-zeppelin-part2.html">Continue reading &raquo;</a></p>
-    </article>
-
-    <hr>
-    
 
     <!-- Pagination links -->
     
@@ -412,9 +411,24 @@ perform streaming data visualization via Flink on Zeppelin and how to use Apache
       
 
       
-    <h2>2022</h2>
+    <h2>2023</h2>
+
+    <ul id="markdown-toc">
+      
+      <li><a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></li>
 
+      
+        
+    </ul>
+        <hr>
+        <h2>2022</h2>
     <ul id="markdown-toc">
+        
+      
+    
+      
+      
+
       
       <li><a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></li>
 
diff --git a/content/downloads.html b/content/downloads.html
index 1b2ed3a1f..ba82c0a0a 100644
--- a/content/downloads.html
+++ b/content/downloads.html
@@ -256,7 +256,7 @@
   <li><a href="#apache-flink-stateful-functions-320" id="markdown-toc-apache-flink-stateful-functions-320">Apache Flink Stateful Functions 3.2.0</a></li>
   <li><a href="#apache-flink-ml-210" id="markdown-toc-apache-flink-ml-210">Apache Flink ML 2.1.0</a></li>
   <li><a href="#apache-flink-ml-200" id="markdown-toc-apache-flink-ml-200">Apache Flink ML 2.0.0</a></li>
-  <li><a href="#apache-flink-kubernetes-operator-130" id="markdown-toc-apache-flink-kubernetes-operator-130">Apache Flink Kubernetes Operator 1.3.0</a></li>
+  <li><a href="#apache-flink-kubernetes-operator-131" id="markdown-toc-apache-flink-kubernetes-operator-131">Apache Flink Kubernetes Operator 1.3.1</a></li>
   <li><a href="#apache-flink-kubernetes-operator-120" id="markdown-toc-apache-flink-kubernetes-operator-120">Apache Flink Kubernetes Operator 1.2.0</a></li>
   <li><a href="#apache-flink-table-store-021" id="markdown-toc-apache-flink-table-store-021">Apache Flink Table Store 0.2.1</a></li>
   <li><a href="#apache-flink-table-store-010" id="markdown-toc-apache-flink-table-store-010">Apache Flink Table Store 0.1.0</a></li>
@@ -472,17 +472,17 @@
 
 <hr />
 
-<p>Apache Flink® Kubernetes Operator 1.3.0 is the latest stable release for the <a href="https://github.com/apache/flink-kubernetes-operator">Flink Kubernetes Operator</a>.</p>
+<p>Apache Flink® Kubernetes Operator 1.3.1 is the latest stable release for the <a href="https://github.com/apache/flink-kubernetes-operator">Flink Kubernetes Operator</a>.</p>
 
-<h2 id="apache-flink-kubernetes-operator-130">Apache Flink Kubernetes Operator 1.3.0</h2>
+<h2 id="apache-flink-kubernetes-operator-131">Apache Flink Kubernetes Operator 1.3.1</h2>
 
 <p>
-<a href="https://www.apache.org/dyn/closer.lua/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-src.tgz" id="130-kubernetes-operator-download-source">Apache Flink Kubernetes Operator 1.3.0 Source Release</a>
-(<a href="https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-src.tgz.asc">asc</a>, <a href="https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-src.tgz.sha512">sha512</a>)
+<a href="https://www.apache.org/dyn/closer.lua/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-src.tgz" id="130-kubernetes-operator-download-source">Apache Flink Kubernetes Operator 1.3.1 Source Release</a>
+(<a href="https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-src.tgz.asc">asc</a>, <a href="https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-src.tgz.sha512">sha512</a>)
 </p>
 <p>
-<a href="https://www.apache.org/dyn/closer.lua/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-helm.tgz" id="130-kubernetes-operator-download-helm">Apache Flink Kubernetes Operator Helm Chart 1.3.0 Helm Chart Release</a>
-(<a href="https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-helm.tgz.asc">asc</a>, <a href="https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-helm.tgz.sha512">sha512</a>)
+<a href="https://www.apache.org/dyn/closer.lua/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-helm.tgz" id="130-kubernetes-operator-download-helm">Apache Flink Kubernetes Operator Helm Chart 1.3.1 Helm Chart Release</a>
+(<a href="https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-helm.tgz.asc">asc</a>, <a href="https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-helm.tgz.sha512">sha512</a>)
 </p>
 
 <p>This version is compatible with Apache Flink version 1.16.0, 1.15.3, 1.14.6, 1.13.6.</p>
@@ -649,7 +649,7 @@ The <code>statefun-flink-harness</code> dependency includes a local execution en
 <div class="highlight"><pre><code class="language-xml"><span class="nt">&lt;dependency&gt;</span>
   <span class="nt">&lt;groupId&gt;</span>org.apache.flink<span class="nt">&lt;/groupId&gt;</span>
   <span class="nt">&lt;artifactId&gt;</span>flink-kubernetes-operator<span class="nt">&lt;/artifactId&gt;</span>
-  <span class="nt">&lt;version&gt;</span>1.3.0<span class="nt">&lt;/version&gt;</span>
+  <span class="nt">&lt;version&gt;</span>1.3.1<span class="nt">&lt;/version&gt;</span>
 <span class="nt">&lt;/dependency&gt;</span></code></pre></div>
 
 <h2 id="update-policy-for-old-releases">Update Policy for old releases</h2>
@@ -1769,6 +1769,11 @@ Flink ML 2.0.0 - 2021-01-07
 
 <ul>
 
+<li>
+Flink Kubernetes Operator 1.3.1 - 2023-01-10
+(<a href="https://archive.apache.org/dist/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-src.tgz">Source</a>, <a href="https://archive.apache.org/dist/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-helm.tgz">Helm Chart</a>)
+</li>
+
 <li>
 Flink Kubernetes Operator 1.3.0 - 2022-12-14
 (<a href="https://archive.apache.org/dist/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-src.tgz">Source</a>, <a href="https://archive.apache.org/dist/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-helm.tgz">Helm Chart</a>)
diff --git a/content/index.html b/content/index.html
index 24672e0e3..876d45fec 100644
--- a/content/index.html
+++ b/content/index.html
@@ -405,6 +405,11 @@
 
   <dl>
       
+        <dt> <a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></dt>
+        <dd><p>The Apache Flink Community is pleased to announce the first bug fix release of the Flink Kubernetes Operator 1.3 series.</p>
+
+</dd>
+      
         <dt> <a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></dt>
         <dd><p>The Flink community is happy to announce that the latest Flink Kubernetes Operator version went live today. Beyond the regular operator improvements and fixes the 1.3.0 version also integrates better with some popular infrastructure management tools like OLM and Argo CD. These improvements are clear indicators that the original intentions of the Flink community, namely to provide the de facto standard solution for managing Flink applications on Kubernetes is making steady  [...]
 
@@ -422,9 +427,6 @@ communities in Apache. Flink 1.16 had over 240 contributors enthusiastically par
 with 19 FLIPs and 1100+ issues completed, bringing a lot of exciting features to the community.</p>
 
 </dd>
-      
-        <dt> <a href="/news/2022/10/13/release-table-store-0.2.1.html">Apache Flink Table Store 0.2.1 Release Announcement</a></dt>
-        <dd>The Apache Flink Community is pleased to announce a bug fix release for Flink Table Store 0.2.</dd>
     
   </dl>
 
diff --git a/content/index.html b/content/news/2023/01/10/release-kubernetes-operator-1.3.1.html
similarity index 60%
copy from content/index.html
copy to content/news/2023/01/10/release-kubernetes-operator-1.3.1.html
index 24672e0e3..ac3175d90 100644
--- a/content/index.html
+++ b/content/news/2023/01/10/release-kubernetes-operator-1.3.1.html
@@ -5,7 +5,7 @@
     <meta http-equiv="X-UA-Compatible" content="IE=edge">
     <meta name="viewport" content="width=device-width, initial-scale=1">
     <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
-    <title>Apache Flink: Stateful Computations over Data Streams</title>
+    <title>Apache Flink: Apache Flink Kubernetes Operator 1.3.1 Release Announcement</title>
     <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
     <link rel="icon" href="/favicon.ico" type="image/x-icon">
 
@@ -153,7 +153,7 @@
             <li><a href="/gettinghelp.html">Getting Help</a></li>
 
             <!-- Blog -->
-            <li><a href="/blog/"><b>Flink Blog</b></a></li>
+            <li class="active"><a href="/blog/"><b>Flink Blog</b></a></li>
 
 
             <!-- Flink-packages -->
@@ -185,7 +185,8 @@
             <li>
               
                 
-                  <a href="/zh/">中文版</a>
+                  <!-- link to the Chinese home page when current is blog page -->
+                  <a href="/zh">中文版</a>
                 
               
             </li>
@@ -233,263 +234,71 @@
       </div>
       <div class="col-sm-9">
       <div class="row-fluid">
-
-  <div class="col-sm-12">
-    <p class="lead">
-      <strong>Apache Flink<sup>®</sup> — Stateful Computations over Data Streams</strong>
-    </p>
-  </div>
-
-<div class="col-sm-12">
-  <hr />
-</div>
-
-</div>
-
-<!-- High-level architecture figure -->
-
-<div class="row front-graphic">
-  <hr />
-  <img src="/img/flink-home-graphic.png" width="800px" />
-</div>
-
-<!-- Feature grid -->
-
-<!--
-<div class="row">
   <div class="col-sm-12">
-    <hr />
-    <h2><a href="/features.html">Features</a></h2>
-  </div>
-</div>
--->
-<div class="row">
-  <div class="col-sm-4">
-    <div class="panel panel-default">
-      <div class="panel-heading">
-        <span class="glyphicon glyphicon-th"></span> <b>All streaming use cases</b>
-      </div>
-      <div class="panel-body">
-        <ul style="font-size: small;">
-          <li>Event-driven Applications</li>
-          <li>Stream &amp; Batch Analytics</li>
-          <li>Data Pipelines &amp; ETL</li>
-        </ul>
-        <a href="/usecases.html">Learn more</a>
-      </div>
-    </div>
-  </div>
-  <div class="col-sm-4">
-    <div class="panel panel-default">
-      <div class="panel-heading">
-        <span class="glyphicon glyphicon-ok"></span> <b>Guaranteed correctness</b>
-      </div>
-      <div class="panel-body">
-        <ul style="font-size: small;">
-          <li>Exactly-once state consistency</li>
-          <li>Event-time processing</li>
-          <li>Sophisticated late data handling</li>
-        </ul>
-        <a href="/flink-applications.html#building-blocks-for-streaming-applications">Learn more</a>
-      </div>
-    </div>
-  </div>
-  <div class="col-sm-4">
-    <div class="panel panel-default">
-      <div class="panel-heading">
-        <span class="glyphicon glyphicon glyphicon-sort-by-attributes"></span> <b>Layered APIs</b>
-      </div>
-      <div class="panel-body">
-        <ul style="font-size: small;">
-          <li>SQL on Stream &amp; Batch Data</li>
-          <li>DataStream API &amp; DataSet API</li>
-          <li>ProcessFunction (Time &amp; State)</li>
-        </ul>
-        <a href="/flink-applications.html#layered-apis">Learn more</a>
-      </div>
-    </div>
-  </div>
-</div>
-<div class="row">
-  <div class="col-sm-4">
-    <div class="panel panel-default">
-      <div class="panel-heading">
-        <span class="glyphicon glyphicon-dashboard"></span> <b>Operational Focus</b>
-      </div>
-      <div class="panel-body">
-        <ul style="font-size: small;">
-          <li>Flexible deployment</li>
-          <li>High-availability setup</li>
-          <li>Savepoints</li>
-        </ul>
-        <a href="/flink-operations.html">Learn more</a>
-      </div>
-    </div>
-  </div>
-  <div class="col-sm-4">
-    <div class="panel panel-default">
-      <div class="panel-heading">
-        <span class="glyphicon glyphicon-fullscreen"></span> <b>Scales to any use case</b>
-      </div>
-      <div class="panel-body">
-        <ul style="font-size: small;">
-          <li>Scale-out architecture</li>
-          <li>Support for very large state</li>
-          <li>Incremental checkpointing</li>
-        </ul>
-        <a href="/flink-architecture.html#run-applications-at-any-scale">Learn more</a>
-      </div>
-    </div>
-  </div>
-  <div class="col-sm-4">
-    <div class="panel panel-default">
-      <div class="panel-heading">
-        <span class="glyphicon glyphicon-flash"></span> <b>Excellent Performance</b>
-      </div>
-      <div class="panel-body">
-        <ul style="font-size: small;">
-          <li>Low latency</li>
-          <li>High throughput</li>
-          <li>In-Memory computing</li>
-        </ul>
-        <a href="/flink-architecture.html#leverage-in-memory-performance">Learn more</a>
-      </div>
-    </div>
-  </div>
-</div>
-
-<!-- Events section -->
-<div class="row">
-
-<div class="col-sm-12">
-  <hr />
-</div>
-
-<div class="col-sm-3">
-
-  <h2><a>Upcoming Events</a></h2>
+    <div class="row">
+      <h1>Apache Flink Kubernetes Operator 1.3.1 Release Announcement</h1>
+      <p><i>Lifecycle management for Apache Flink deployments using native Kubernetes tooling</i></p>
 
-</div>
-<div class="col-sm-9">
-  <!-- Flink Forward -->
-  <a href="https://flink-forward.org" target="_blank">
-    <img style="width: 180px; padding-right: 10px" src="/img/flink-forward.png" alt="Flink Forward" />
-  </a>
-  <!-- ApacheCon -->
-  <a href="https://www.apache.org/events/current-event" target="_blank">
-    <img style="width: 200px; padding-right: 10px" src="https://www.apache.org/events/current-event-234x60.png" alt="ApacheCon" />
-  </a>
-    <!-- Flink Forward Asia -->
-    <a href="https://flink-forward.org.cn/" target="_blank">
-      <img style="width: 230px" src="/img/flink-forward-asia.png" alt="Flink Forward Asia" />
-    </a>
-</div>
+      <article>
+        <p>10 Jan 2023 Gyula Fora (<a href="https://twitter.com/GyulaFora">@GyulaFora</a>)</p>
 
-</div>
+<p>The Apache Flink Community is pleased to announce the first bug fix release of the Flink Kubernetes Operator 1.3 series.</p>
 
-<!-- Updates section -->
+<p>The release contains fixes for several critical issues and some major stability improvements for the application upgrade mechanism.</p>
 
-<div class="row">
+<p>We highly recommend all users to upgrade to Flink Kubernetes Operator 1.3.1.</p>
 
-<div class="col-sm-12">
-  <hr />
-</div>
+<h2 id="release-notes">Release Notes</h2>
 
-<div class="col-sm-3">
+<h3 id="bug">Bug</h3>
+<ul>
+  <li>[FLINK-30329] - flink-kubernetes-operator helm chart does not work with dynamic config because of use of volumeMount subPath</li>
+  <li>[FLINK-30361] - Cluster deleted and created back while updating replicas</li>
+  <li>[FLINK-30406] - Jobmanager Deployment error without HA metadata should not lead to unrecoverable error</li>
+  <li>[FLINK-30437] - State incompatibility issue might cause state loss</li>
+  <li>[FLINK-30527] - Last-state suspend followed by flinkVersion change may lead to state loss</li>
+  <li>[FLINK-30528] - Job may be stuck in upgrade loop when last-state fallback is disabled and deployment is missing</li>
+</ul>
 
-  <h2><a href="/blog">Latest Blog Posts</a></h2>
+<h3 id="improvement">Improvement</h3>
+<ul>
+  <li>[FLINK-28875] - Add FlinkSessionJobControllerTest</li>
+  <li>[FLINK-30408] - Add unit test for HA metadata check logic</li>
+</ul>
 
-</div>
+<h2 id="release-resources">Release Resources</h2>
+<p>The source artifacts and helm chart are available on the Downloads page of the Flink website. You can easily try out the new features shipped in the official 1.3.1 release by adding the Helm chart to your own local registry:</p>
 
-<div class="col-sm-9">
+<div class="highlight"><pre><code>$ helm repo add flink-kubernetes-operator-1.3.1 https://archive.apache.org/dist/flink/flink-kubernetes-operator-1.3.1/
+$ helm install flink-kubernetes-operator flink-kubernetes-operator-1.3.1/flink-kubernetes-operator --set webhook.create=false
+</code></pre></div>
 
-  <dl>
-      
-        <dt> <a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></dt>
-        <dd><p>The Flink community is happy to announce that the latest Flink Kubernetes Operator version went live today. Beyond the regular operator improvements and fixes the 1.3.0 version also integrates better with some popular infrastructure management tools like OLM and Argo CD. These improvements are clear indicators that the original intentions of the Flink community, namely to provide the de facto standard solution for managing Flink applications on Kubernetes is making steady  [...]
+<p>You can also find official Kubernetes Operator Docker images of the new version on <a href="https://hub.docker.com/r/apache/flink-kubernetes-operator">Dockerhub</a>.</p>
 
-</dd>
-      
-        <dt> <a href="/2022/11/25/async-sink-rate-limiting-strategy.html">Optimising the throughput of async sinks using a custom RateLimitingStrategy</a></dt>
-        <dd>An overview of how to optimise the throughput of async sinks using a custom RateLimitingStrategy</dd>
-      
-        <dt> <a href="/news/2022/11/10/release-1.15.3.html">Apache Flink 1.15.3 Release Announcement</a></dt>
-        <dd>The Apache Flink Community is pleased to announce a bug fix release for Flink 1.15.</dd>
-      
-        <dt> <a href="/news/2022/10/28/1.16-announcement.html">Announcing the Release of Apache Flink 1.16</a></dt>
-        <dd><p>Apache Flink continues to grow at a rapid pace and is one of the most active 
-communities in Apache. Flink 1.16 had over 240 contributors enthusiastically participating, 
-with 19 FLIPs and 1100+ issues completed, bringing a lot of exciting features to the community.</p>
+<p>For more details, check the <a href="https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-release-1.3/">updated documentation</a> and the release notes. We encourage you to download the release and share your feedback with the community through the Flink mailing lists or JIRA.</p>
 
-</dd>
-      
-        <dt> <a href="/news/2022/10/13/release-table-store-0.2.1.html">Apache Flink Table Store 0.2.1 Release Announcement</a></dt>
-        <dd>The Apache Flink Community is pleased to announce a bug fix release for Flink Table Store 0.2.</dd>
-    
-  </dl>
+<h2 id="list-of-contributors">List of Contributors</h2>
+<p>Gyula Fora, Andrew Otto, Swathi Chandrashekar, Peter Vary</p>
 
-</div>
+      </article>
+    </div>
 
-<!-- Scripts section -->
-
-<script type="text/javascript" src="/js/jquery.jcarousel.min.js"></script>
-
-<script type="text/javascript">
-
-  $(window).load(function(){
-   $(function() {
-        var jcarousel = $('.jcarousel');
-
-        jcarousel
-            .on('jcarousel:reload jcarousel:create', function () {
-                var carousel = $(this),
-                    width = carousel.innerWidth();
-
-                if (width >= 600) {
-                    width = width / 4;
-                } else if (width >= 350) {
-                    width = width / 3;
-                }
-
-                carousel.jcarousel('items').css('width', Math.ceil(width) + 'px');
-            })
-            .jcarousel({
-                wrap: 'circular',
-                autostart: true
-            });
-
-        $('.jcarousel-control-prev')
-            .jcarouselControl({
-                target: '-=1'
-            });
-
-        $('.jcarousel-control-next')
-            .jcarouselControl({
-                target: '+=1'
-            });
-
-        $('.jcarousel-pagination')
-            .on('jcarouselpagination:active', 'a', function() {
-                $(this).addClass('active');
-            })
-            .on('jcarouselpagination:inactive', 'a', function() {
-                $(this).removeClass('active');
-            })
-            .on('click', function(e) {
-                e.preventDefault();
-            })
-            .jcarouselPagination({
-                perPage: 1,
-                item: function(page) {
-                    return '<a href="#' + page + '">' + page + '</a>';
-                }
-            });
-    });
-  });
-
-</script>
+    <div class="row">
+      <div id="disqus_thread"></div>
+      <script type="text/javascript">
+        /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
+        var disqus_shortname = 'stratosphere-eu'; // required: replace example with your forum shortname
+
+        /* * * DON'T EDIT BELOW THIS LINE * * */
+        (function() {
+            var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
+            dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
+             (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
+        })();
+      </script>
+    </div>
+  </div>
 </div>
-
       </div>
     </div>
 
diff --git a/content/zh/index.html b/content/zh/index.html
index aeb35745e..af219e6f3 100644
--- a/content/zh/index.html
+++ b/content/zh/index.html
@@ -402,6 +402,11 @@
 
   <dl>
       
+        <dt> <a href="/news/2023/01/10/release-kubernetes-operator-1.3.1.html">Apache Flink Kubernetes Operator 1.3.1 Release Announcement</a></dt>
+        <dd><p>The Apache Flink Community is pleased to announce the first bug fix release of the Flink Kubernetes Operator 1.3 series.</p>
+
+</dd>
+      
         <dt> <a href="/news/2022/12/14/release-kubernetes-operator-1.3.0.html">Apache Flink Kubernetes Operator 1.3.0 Release Announcement</a></dt>
         <dd><p>The Flink community is happy to announce that the latest Flink Kubernetes Operator version went live today. Beyond the regular operator improvements and fixes the 1.3.0 version also integrates better with some popular infrastructure management tools like OLM and Argo CD. These improvements are clear indicators that the original intentions of the Flink community, namely to provide the de facto standard solution for managing Flink applications on Kubernetes is making steady  [...]
 
@@ -419,9 +424,6 @@ communities in Apache. Flink 1.16 had over 240 contributors enthusiastically par
 with 19 FLIPs and 1100+ issues completed, bringing a lot of exciting features to the community.</p>
 
 </dd>
-      
-        <dt> <a href="/news/2022/10/13/release-table-store-0.2.1.html">Apache Flink Table Store 0.2.1 Release Announcement</a></dt>
-        <dd>The Apache Flink Community is pleased to announce a bug fix release for Flink Table Store 0.2.</dd>
     
   </dl>
 


[flink-web] 01/02: Flink Kubernetes Operator 1.3.1

Posted by gy...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gyfora pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/flink-web.git

commit 95acdbe96af7489ddb2c91400679eaa8dca7a3e3
Author: Gyula Fora <g_...@apple.com>
AuthorDate: Sun Jan 1 18:30:10 2023 +0100

    Flink Kubernetes Operator 1.3.1
---
 _config.yml                                        | 21 +++++-----
 ...2023-01-10-release-kubernetes-operator-1.3.1.md | 45 ++++++++++++++++++++++
 2 files changed, 57 insertions(+), 9 deletions(-)

diff --git a/_config.yml b/_config.yml
index f374cba4a..be9c82f6f 100644
--- a/_config.yml
+++ b/_config.yml
@@ -29,7 +29,7 @@ FLINK_ML_STABLE_SHORT: "2.1"
 FLINK_ML_GITHUB_URL: https://github.com/apache/flink-ml
 FLINK_ML_GITHUB_REPO_NAME: flink-ml
 
-FLINK_KUBERNETES_OPERATOR_VERSION_STABLE: 1.3.0
+FLINK_KUBERNETES_OPERATOR_VERSION_STABLE: 1.3.1
 FLINK_KUBERNETES_OPERATOR_STABLE_SHORT: "1.3"
 
 FLINK_KUBERNETES_OPERATOR_URL: https://github.com/apache/flink-kubernetes-operator
@@ -220,19 +220,19 @@ flink_kubernetes_operator_releases:
   -
       version_short: "1.3"
       source_release:
-        name: "Apache Flink Kubernetes Operator 1.3.0"
+        name: "Apache Flink Kubernetes Operator 1.3.1"
         id: "130-kubernetes-operator-download-source"
         flink_version: "1.16.0, 1.15.3, 1.14.6, 1.13.6"
-        url: "https://www.apache.org/dyn/closer.lua/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-src.tgz"
-        asc_url: "https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-src.tgz.asc"
-        sha512_url: "https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-src.tgz.sha512"
+        url: "https://www.apache.org/dyn/closer.lua/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-src.tgz"
+        asc_url: "https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-src.tgz.asc"
+        sha512_url: "https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-src.tgz.sha512"
       helm_release:
-        name: "Apache Flink Kubernetes Operator Helm Chart 1.3.0"
+        name: "Apache Flink Kubernetes Operator Helm Chart 1.3.1"
         id: "130-kubernetes-operator-download-helm"
         flink_version: "1.16.0, 1.15.3, 1.14.6, 1.13.6"
-        url: "https://www.apache.org/dyn/closer.lua/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-helm.tgz"
-        asc_url: "https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-helm.tgz.asc"
-        sha512_url: "https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.0/flink-kubernetes-operator-1.3.0-helm.tgz.sha512"
+        url: "https://www.apache.org/dyn/closer.lua/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-helm.tgz"
+        asc_url: "https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-helm.tgz.asc"
+        sha512_url: "https://downloads.apache.org/flink/flink-kubernetes-operator-1.3.1/flink-kubernetes-operator-1.3.1-helm.tgz.sha512"
   -
       version_short: "1.2"
       source_release:
@@ -791,6 +791,9 @@ release_archive:
         release_date: 2021-01-07
 
     flink_kubernetes_operator:
+      - version_short: 1.3
+        version_long: 1.3.1
+        release_date: 2023-01-10
       - version_short: 1.3
         version_long: 1.3.0
         release_date: 2022-12-14
diff --git a/_posts/2023-01-10-release-kubernetes-operator-1.3.1.md b/_posts/2023-01-10-release-kubernetes-operator-1.3.1.md
new file mode 100644
index 000000000..1a339c3dc
--- /dev/null
+++ b/_posts/2023-01-10-release-kubernetes-operator-1.3.1.md
@@ -0,0 +1,45 @@
+---
+layout: post
+title:  "Apache Flink Kubernetes Operator 1.3.1 Release Announcement"
+subtitle: "Lifecycle management for Apache Flink deployments using native Kubernetes tooling"
+date: 2023-01-10T08:00:00.000Z
+categories: news
+authors:
+- gyfora:
+  name: "Gyula Fora"
+  twitter: "GyulaFora"
+---
+The Apache Flink Community is pleased to announce the first bug fix release of the Flink Kubernetes Operator 1.3 series.
+
+The release contains fixes for several critical issues and some major stability improvements for the application upgrade mechanism.
+
+We highly recommend all users to upgrade to Flink Kubernetes Operator 1.3.1.
+
+## Release Notes
+
+### Bug
+ * [FLINK-30329] - flink-kubernetes-operator helm chart does not work with dynamic config because of use of volumeMount subPath
+ * [FLINK-30361] - Cluster deleted and created back while updating replicas
+ * [FLINK-30406] - Jobmanager Deployment error without HA metadata should not lead to unrecoverable error
+ * [FLINK-30437] - State incompatibility issue might cause state loss
+ * [FLINK-30527] - Last-state suspend followed by flinkVersion change may lead to state loss
+ * [FLINK-30528] - Job may be stuck in upgrade loop when last-state fallback is disabled and deployment is missing
+
+### Improvement
+ * [FLINK-28875] - Add FlinkSessionJobControllerTest
+ * [FLINK-30408] - Add unit test for HA metadata check logic
+
+## Release Resources
+The source artifacts and helm chart are available on the Downloads page of the Flink website. You can easily try out the new features shipped in the official 1.3.1 release by adding the Helm chart to your own local registry:
+
+```
+$ helm repo add flink-kubernetes-operator-1.3.1 https://archive.apache.org/dist/flink/flink-kubernetes-operator-1.3.1/
+$ helm install flink-kubernetes-operator flink-kubernetes-operator-1.3.1/flink-kubernetes-operator --set webhook.create=false
+```
+
+You can also find official Kubernetes Operator Docker images of the new version on [Dockerhub](https://hub.docker.com/r/apache/flink-kubernetes-operator).
+
+For more details, check the [updated documentation](https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-release-1.3/) and the release notes. We encourage you to download the release and share your feedback with the community through the Flink mailing lists or JIRA.
+
+## List of Contributors
+Gyula Fora, Andrew Otto, Swathi Chandrashekar, Peter Vary