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

dianfu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git


The following commit(s) were added to refs/heads/master by this push:
     new aa30930db94 [FLINK-38469][python] Bump Apache Beam to 2.75 (#28059)
aa30930db94 is described below

commit aa30930db94995b1f42d5a444bcab29782734777
Author: florianvazelle <[email protected]>
AuthorDate: Mon Aug 17 13:07:03 2026 +0200

    [FLINK-38469][python] Bump Apache Beam to 2.75 (#28059)
---
 docs/content.zh/docs/deployment/cli.md             |  2 +-
 docs/content.zh/docs/sql/interfaces/sql-client.md  |  2 +-
 docs/content/docs/deployment/cli.md                |  2 +-
 docs/content/docs/sql/interfaces/sql-client.md     |  2 +-
 .../shortcodes/generated/python_configuration.html |  2 +-
 .../apache/flink/client/cli/CliFrontendParser.java |  2 +-
 flink-python/README.md                             |  4 +--
 .../zh/LC_MESSAGES/user_guide/configuration.po     |  4 +--
 flink-python/docs/user_guide/configuration.rst     |  2 +-
 flink-python/pom.xml                               | 18 ++++++++++
 .../datastream/stream_execution_environment.py     |  2 +-
 .../pyflink/fn_execution/flink_fn_execution_pb2.py | 16 +++++++--
 .../fn_execution/flink_fn_execution_pb2.pyi        |  3 +-
 flink-python/pyflink/gen_protos.py                 |  8 ++---
 flink-python/pyflink/table/table_config.py         |  2 +-
 flink-python/pyproject.toml                        | 10 +++---
 flink-python/setup.py                              |  4 +--
 .../control/DefaultJobBundleFactory.java           | 10 +++---
 .../fnexecution/state/GrpcStateService.java        |  4 +--
 .../apache/beam/sdk/fn/server/ServerFactory.java   | 20 +++++------
 .../io/grpc/internal/SharedResourceHolder.java     |  4 +--
 .../org/apache/flink/python/PythonOptions.java     |  2 +-
 .../org/apache/flink/python/util/ProtoUtils.java   |  2 +-
 .../beam/BeamDataStreamPythonFunctionRunner.java   |  8 ++---
 .../python/beam/BeamPythonFunctionRunner.java      | 41 +++++++++++-----------
 .../python/beam/state/BeamBagStateHandler.java     |  2 +-
 .../python/beam/state/BeamMapStateHandler.java     |  2 +-
 .../python/beam/state/BeamStateRequestHandler.java |  4 +--
 .../python/beam/BeamTablePythonFunctionRunner.java |  4 +--
 flink-python/src/main/resources/META-INF/NOTICE    | 25 +++++++------
 .../PassThroughPythonAggregateFunctionRunner.java  |  2 +-
 .../PassThroughPythonScalarFunctionRunner.java     |  2 +-
 .../PassThroughPythonTableFunctionRunner.java      |  2 +-
 ...ThroughStreamAggregatePythonFunctionRunner.java |  2 +-
 ...amGroupWindowAggregatePythonFunctionRunner.java |  2 +-
 ...ghStreamTableAggregatePythonFunctionRunner.java |  2 +-
 .../flink/table/runtime/utils/PythonTestUtils.java |  2 +-
 .../src/test/resources/cli/all-mode-help.out       |  2 +-
 .../src/test/resources/cli/embedded-mode-help.out  |  2 +-
 pom.xml                                            |  2 +-
 40 files changed, 133 insertions(+), 100 deletions(-)

diff --git a/docs/content.zh/docs/deployment/cli.md 
b/docs/content.zh/docs/deployment/cli.md
index a32692a2e21..b6c5e69b760 100644
--- a/docs/content.zh/docs/deployment/cli.md
+++ b/docs/content.zh/docs/deployment/cli.md
@@ -576,7 +576,7 @@ related options. Here's an overview of all the Python 
related options for the ac
             <td>
                 Specify the path of the python interpreter used to execute the 
python UDF worker
                 (e.g.: --pyExecutable /usr/local/bin/python3).
-                The python UDF worker depends on Python 3.9+, Apache Beam 
(version >= 2.54.0, <= 2.61.0),
+                The python UDF worker depends on Python 3.9+, Apache Beam 
(version >= 2.69.0, <= 2.75.0),
                 Pip (version >= 20.3) and SetupTools (version >= 37.0.0).
                 Please ensure that the specified environment meets the above 
requirements.
             </td>
diff --git a/docs/content.zh/docs/sql/interfaces/sql-client.md 
b/docs/content.zh/docs/sql/interfaces/sql-client.md
index 9f90fb7812a..a6c83d7025d 100644
--- a/docs/content.zh/docs/sql/interfaces/sql-client.md
+++ b/docs/content.zh/docs/sql/interfaces/sql-client.md
@@ -329,7 +329,7 @@ Mode "embedded" (default) submits Flink jobs from the local 
machine.
                                                 /usr/local/bin/python3). The
                                                 python UDF worker depends on
                                                 Python 3.9+, Apache Beam
-                                                (version >= 2.54.0, <= 
2.61.0), Pip
+                                                (version >= 2.69.0, <= 
2.75.0), Pip
                                                 (version >= 20.3) and 
SetupTools
                                                 (version >= 37.0.0). Please
                                                 ensure that the specified
diff --git a/docs/content/docs/deployment/cli.md 
b/docs/content/docs/deployment/cli.md
index 04cfb1c24e9..1e92aa6f6b8 100644
--- a/docs/content/docs/deployment/cli.md
+++ b/docs/content/docs/deployment/cli.md
@@ -574,7 +574,7 @@ related options. Here's an overview of all the Python 
related options for the ac
             <td>
                 Specify the path of the python interpreter used to execute the 
python UDF worker
                 (e.g.: --pyExecutable /usr/local/bin/python3).
-                The python UDF worker depends on Python 3.9+, Apache Beam 
(version >= 2.54.0,<= 2.61.0),
+                The python UDF worker depends on Python 3.9+, Apache Beam 
(version >= 2.69.0, <= 2.75.0),
                 Pip (version >= 20.3) and SetupTools (version >= 37.0.0).
                 Please ensure that the specified environment meets the above 
requirements.
             </td>
diff --git a/docs/content/docs/sql/interfaces/sql-client.md 
b/docs/content/docs/sql/interfaces/sql-client.md
index e0dbac41322..3d19d52c212 100644
--- a/docs/content/docs/sql/interfaces/sql-client.md
+++ b/docs/content/docs/sql/interfaces/sql-client.md
@@ -267,7 +267,7 @@ Mode "embedded" (default) submits Flink jobs from the local 
machine.
                                                 /usr/local/bin/python3). The
                                                 python UDF worker depends on
                                                 Python 3.9+, Apache Beam
-                                                (version >= 2.54.0, <= 
2.61.0), Pip
+                                                (version >= 2.69.0, <= 
2.75.0), Pip
                                                 (version >= 20.3) and 
SetupTools
                                                 (version >= 37.0.0). Please
                                                 ensure that the specified
diff --git a/docs/layouts/shortcodes/generated/python_configuration.html 
b/docs/layouts/shortcodes/generated/python_configuration.html
index 10732a3f2f8..5b6afc3950e 100644
--- a/docs/layouts/shortcodes/generated/python_configuration.html
+++ b/docs/layouts/shortcodes/generated/python_configuration.html
@@ -24,7 +24,7 @@
             <td><h5>python.executable</h5></td>
             <td style="word-wrap: break-word;">"python"</td>
             <td>String</td>
-            <td>Specify the path of the python interpreter used to execute the 
python UDF worker. The python UDF worker depends on Python 3.9+, Apache Beam 
(version &gt;= 2.54.0, &lt;= 2.61.0), Pip (version &gt;= 20.3) and SetupTools 
(version &gt;= 37.0.0). Please ensure that the specified environment meets the 
above requirements. The option is equivalent to the command line option 
"-pyexec".</td>
+            <td>Specify the path of the python interpreter used to execute the 
python UDF worker. The python UDF worker depends on Python 3.9+, Apache Beam 
(version &gt;= 2.69.0, &lt;= 2.75.0), Pip (version &gt;= 20.3) and SetupTools 
(version &gt;= 37.0.0). Please ensure that the specified environment meets the 
above requirements. The option is equivalent to the command line option 
"-pyexec".</td>
         </tr>
         <tr>
             <td><h5>python.execution-mode</h5></td>
diff --git 
a/flink-clients/src/main/java/org/apache/flink/client/cli/CliFrontendParser.java
 
b/flink-clients/src/main/java/org/apache/flink/client/cli/CliFrontendParser.java
index 618a94970d4..cc76a59337a 100644
--- 
a/flink-clients/src/main/java/org/apache/flink/client/cli/CliFrontendParser.java
+++ 
b/flink-clients/src/main/java/org/apache/flink/client/cli/CliFrontendParser.java
@@ -274,7 +274,7 @@ public class CliFrontendParser {
                     true,
                     "Specify the path of the python interpreter used to 
execute the python UDF worker "
                             + "(e.g.: --pyExecutable /usr/local/bin/python3). "
-                            + "The python UDF worker depends on Python 3.9+, 
Apache Beam (version >= 2.54.0, <= 2.61.0), "
+                            + "The python UDF worker depends on Python 3.9+, 
Apache Beam (version >= 2.69.0, <= 2.75.0), "
                             + "Pip (version >= 20.3) and SetupTools (version 
>= 37.0.0). "
                             + "Please ensure that the specified environment 
meets the above requirements.");
 
diff --git a/flink-python/README.md b/flink-python/README.md
index f30b5c059d1..ae3ff06d7ca 100644
--- a/flink-python/README.md
+++ b/flink-python/README.md
@@ -26,7 +26,7 @@ The auto-generated Python docs can be found at 
[https://nightlies.apache.org/fli
 
 ## Python Requirements
 
-Apache Flink Python API depends on Py4J (currently version 0.10.9.7), 
CloudPickle (currently version 2.2.0), python-dateutil (currently version 
>=2.8.0,<3), Apache Beam (currently version >= 2.54.0, <= 2.61.0).
+Apache Flink Python API depends on Py4J (currently version 0.10.9.7), 
CloudPickle (currently version 2.2.0), python-dateutil (currently version 
>=2.8.0,<3), Apache Beam (currently version >= 2.69.0, <= 2.75.0).
 
 ## Development Notices
 
@@ -39,7 +39,7 @@ python pyflink/gen_protos.py
 ```
 
 PyFlink depends on the following libraries to execute the above script:
-1. grpcio-tools (>=1.29.0,<=1.71.0)
+1. grpcio-tools (==1.80.0)
 2. setuptools (>=37.0.0)
 3. pip (>=20.3)
 
diff --git 
a/flink-python/docs/locales/zh/LC_MESSAGES/user_guide/configuration.po 
b/flink-python/docs/locales/zh/LC_MESSAGES/user_guide/configuration.po
index bff005fab04..2a7a9ade527 100644
--- a/flink-python/docs/locales/zh/LC_MESSAGES/user_guide/configuration.po
+++ b/flink-python/docs/locales/zh/LC_MESSAGES/user_guide/configuration.po
@@ -170,8 +170,8 @@ msgstr ""
 #: ../../user_guide/configuration.rst:104
 msgid ""
 "Specify the path of the python interpreter used to execute the python UDF"
-" worker. The python UDF worker depends on Python 3.8+, Apache Beam "
-"(version >= 2.54.0, <= 2.61.0), Pip (version >= 20.3) and SetupTools "
+" worker. The python UDF worker depends on Python 3.9+, Apache Beam "
+"(version >= 2.69.0, <= 2.75.0), Pip (version >= 20.3) and SetupTools "
 "(version >= 37.0.0). Please ensure that the specified environment meets "
 "the above requirements. The option is equivalent to the command line "
 "option \"-pyexec\"."
diff --git a/flink-python/docs/user_guide/configuration.rst 
b/flink-python/docs/user_guide/configuration.rst
index a45f1bb064a..1d2dd66744a 100644
--- a/flink-python/docs/user_guide/configuration.rst
+++ b/flink-python/docs/user_guide/configuration.rst
@@ -101,7 +101,7 @@ Python Options
    * - .. confval:: python.executable
      - "python"
      - String
-     - Specify the path of the python interpreter used to execute the python 
UDF worker. The python UDF worker depends on Python 3.8+, Apache Beam (version 
>= 2.54.0, <= 2.61.0), Pip (version >= 20.3) and SetupTools (version >= 
37.0.0). Please ensure that the specified environment meets the above 
requirements. The option is equivalent to the command line option "-pyexec".
+     - Specify the path of the python interpreter used to execute the python 
UDF worker. The python UDF worker depends on Python 3.9+, Apache Beam (version 
>= 2.69.0, <= 2.75.0), Pip (version >= 20.3) and SetupTools (version >= 
37.0.0). Please ensure that the specified environment meets the above 
requirements. The option is equivalent to the command line option "-pyexec".
    * - .. confval:: python.execution-mode
      - "process"
      - String
diff --git a/flink-python/pom.xml b/flink-python/pom.xml
index d9703138c55..f5bdeb47eee 100644
--- a/flink-python/pom.xml
+++ b/flink-python/pom.xml
@@ -35,6 +35,9 @@ under the License.
        <packaging>jar</packaging>
 
        <properties>
+               <!-- Align with Beam ${beam.version} optional transitive. -->
+               
<opentelemetry.bundled.version>1.57.0</opentelemetry.bundled.version>
+               
                <arrow.version>19.0.0</arrow.version>
                <surefire.module.config><!--
                        CommonTestUtils#setEnv
@@ -133,6 +136,20 @@ under the License.
                        <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
+               <!-- Declared optional by Beam; required at runtime for 
PipelineOptionsFactory. -->
+               <dependency>
+                       <groupId>io.opentelemetry</groupId>
+                       <artifactId>opentelemetry-api</artifactId>
+                       <version>${opentelemetry.bundled.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
+               </dependency>
+               <dependency>
+                       <groupId>io.opentelemetry</groupId>
+                       <artifactId>opentelemetry-context</artifactId>
+                       <version>${opentelemetry.bundled.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
+               </dependency>
+
                <!-- PemJa dependencies -->
                <dependency>
                        <groupId>com.alibaba</groupId>
@@ -668,6 +685,7 @@ under the License.
                                                                        
<include>net.razorvine:*</include>
                                                                        
<include>net.sf.py4j:*</include>
                                                                        
<include>org.apache.beam:*</include>
+                                                                       
<include>io.opentelemetry:*</include>
                                                                        
<include>com.fasterxml.jackson.core:*</include>
                                                                        
<include>joda-time:*</include>
                                                                        
<include>com.google.protobuf:*</include>
diff --git a/flink-python/pyflink/datastream/stream_execution_environment.py 
b/flink-python/pyflink/datastream/stream_execution_environment.py
index c69e105347a..776041af181 100644
--- a/flink-python/pyflink/datastream/stream_execution_environment.py
+++ b/flink-python/pyflink/datastream/stream_execution_environment.py
@@ -547,7 +547,7 @@ class StreamExecutionEnvironment(object):
 
         .. note::
 
-            The python udf worker depends on Apache Beam (version >= 2.54.0, 
<= 2.61.0).
+            The python udf worker depends on Apache Beam (version >= 2.69.0, 
<= 2.75.0).
             Please ensure that the specified environment meets the above 
requirements.
 
         :param python_exec: The path of python interpreter.
diff --git a/flink-python/pyflink/fn_execution/flink_fn_execution_pb2.py 
b/flink-python/pyflink/fn_execution/flink_fn_execution_pb2.py
index 96984f80d5c..87f54b235d9 100644
--- a/flink-python/pyflink/fn_execution/flink_fn_execution_pb2.py
+++ b/flink-python/pyflink/fn_execution/flink_fn_execution_pb2.py
@@ -17,13 +17,23 @@
 
################################################################################
 # -*- coding: utf-8 -*-
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
+# NO CHECKED-IN PROTOBUF GENCODE
 # source: flink-fn-execution.proto
-# Protobuf Python Version: 4.25.1
+# Protobuf Python Version: 6.31.1
 """Generated protocol buffer code."""
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import descriptor_pool as _descriptor_pool
+from google.protobuf import runtime_version as _runtime_version
 from google.protobuf import symbol_database as _symbol_database
 from google.protobuf.internal import builder as _builder
+_runtime_version.ValidateProtobufRuntimeVersion(
+    _runtime_version.Domain.PUBLIC,
+    6,
+    31,
+    1,
+    '',
+    'flink-fn-execution.proto'
+)
 # @@protoc_insertion_point(imports)
 
 _sym_db = _symbol_database.Default()
@@ -36,8 +46,8 @@ DESCRIPTOR = 
_descriptor_pool.Default().AddSerializedFile(b'\n\x18\x66link-fn-ex
 _globals = globals()
 _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
 _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flink_fn_execution_pb2', 
_globals)
-if _descriptor._USE_C_DESCRIPTORS == False:
-  _globals['DESCRIPTOR']._options = None
+if not _descriptor._USE_C_DESCRIPTORS:
+  _globals['DESCRIPTOR']._loaded_options = None
   _globals['DESCRIPTOR']._serialized_options = 
b'\n\037org.apache.flink.fnexecution.v1B\nFlinkFnApi'
   _globals['_JOBPARAMETER']._serialized_start=62
   _globals['_JOBPARAMETER']._serialized_end=104
diff --git a/flink-python/pyflink/fn_execution/flink_fn_execution_pb2.pyi 
b/flink-python/pyflink/fn_execution/flink_fn_execution_pb2.pyi
index b6b77c68946..ce24d881c58 100644
--- a/flink-python/pyflink/fn_execution/flink_fn_execution_pb2.pyi
+++ b/flink-python/pyflink/fn_execution/flink_fn_execution_pb2.pyi
@@ -19,7 +19,8 @@ from google.protobuf.internal import containers as _containers
 from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import message as _message
-from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as 
_Mapping, Optional as _Optional, Union as _Union
+from collections.abc import Iterable as _Iterable, Mapping as _Mapping
+from typing import ClassVar as _ClassVar, Optional as _Optional, Union as 
_Union
 
 DESCRIPTOR: _descriptor.FileDescriptor
 
diff --git a/flink-python/pyflink/gen_protos.py 
b/flink-python/pyflink/gen_protos.py
index 6bee23ee713..7f3deb2060e 100644
--- a/flink-python/pyflink/gen_protos.py
+++ b/flink-python/pyflink/gen_protos.py
@@ -34,7 +34,7 @@ from importlib import metadata as importlib_metadata
 from importlib import resources as importlib_resources
 from packaging.version import parse as parse_version
 
-GRPC_TOOLS = 'grpcio-tools>=1.29.0,<=1.71.0'
+GRPC_TOOLS = 'grpcio-tools==1.80.0'
 PROTO_PATHS = ['proto']
 PYFLINK_ROOT_PATH = os.path.dirname(os.path.abspath(__file__))
 DEFAULT_PYTHON_OUTPUT_PATH = os.path.join(PYFLINK_ROOT_PATH, 'fn_execution')
@@ -75,7 +75,7 @@ def generate_proto_files(force=True, 
output_dir=DEFAULT_PYTHON_OUTPUT_PATH):
                 raise RuntimeError(
                     'Cannot generate protos for Windows since grpcio-tools 
package is '
                     'not installed. Please install this package manually '
-                    'using \'pip install "grpcio-tools>=1.29.0,<=1.71.0"\'.')
+                    'using \'pip install "grpcio-tools==1.80.0"\'.')
 
             # Use a subprocess to avoid messing with this process' path and 
imports.
             # Note that this requires a separate module from setup.py for 
Windows:
@@ -188,9 +188,9 @@ def _add_license_header(dir, file_name):
 def _check_grpcio_tools_version():
     version_str = importlib_metadata.version("grpcio-tools")
     version = parse_version(version_str)
-    if version < parse_version('1.29.0') or version > parse_version('1.71.0'):
+    if version != parse_version('1.80.0'):
         raise RuntimeError(
-            "Version of grpcio-tools must be between 1.29.0 and 1.71.0, got 
%s" % version_str)
+            "Version of grpcio-tools must be 1.80.0, got %s" % version_str)
 
 
 if __name__ == '__main__':
diff --git a/flink-python/pyflink/table/table_config.py 
b/flink-python/pyflink/table/table_config.py
index fa1408ae0f6..d846116f16c 100644
--- a/flink-python/pyflink/table/table_config.py
+++ b/flink-python/pyflink/table/table_config.py
@@ -261,7 +261,7 @@ class TableConfig(object):
 
         .. note::
 
-            The python udf worker depends on Apache Beam (version >= 2.54.0, 
<= 2.61.0).
+            The python udf worker depends on Apache Beam (version >= 2.69.0, 
<= 2.75.0).
             Please ensure that the specified environment meets the above 
requirements.
 
         :param python_exec: The path of python interpreter.
diff --git a/flink-python/pyproject.toml b/flink-python/pyproject.toml
index 0b1e23446d7..430715d57a3 100644
--- a/flink-python/pyproject.toml
+++ b/flink-python/pyproject.toml
@@ -23,7 +23,7 @@ requires = [
     "wheel",
     "cython>=0.29.24,<3; sys_platform == 'darwin' and python_version == '3.8'",
     "fastavro==1.7.4; sys_platform == 'darwin' and python_version == '3.8'",
-    "apache-beam>=2.54.0,<=2.61.0",
+    "apache-beam>=2.69.0,<=2.75.0",
     "cython>=0.29.24"
 ]
 
@@ -32,7 +32,7 @@ dev = [
   "pip>=20.3",
   "setuptools>=75.3,<82",
   "wheel",
-  "apache-beam>=2.54.0,<=2.61.0",
+  "apache-beam>=2.69.0,<=2.75.0",
   "cython>=0.29.24",
   "py4j==0.10.9.7",
   "python-dateutil>=2.8.0,<3",
@@ -43,11 +43,11 @@ dev = [
   "pytz>=2018.3",
   "numpy>=1.22.4,<2.3.0",
   "fastavro>=1.1.0,!=1.8.0",
-  "grpcio>=1.29.0,<=1.71.0",
-  "grpcio-tools>=1.29.0,<=1.71.0",
+  "grpcio>=1.33.1,<2",
+  "grpcio-tools==1.80.0",
   "pemja>=0.5.7,<0.5.8; platform_system != 'Windows'",
   "httplib2>=0.19.0",
-  "protobuf~=4.25",
+  "protobuf>=6.31.1,<7.0.0.dev0",
   "pytest~=8.0",
   "ruamel.yaml>=0.18.4",
 ]
diff --git a/flink-python/setup.py b/flink-python/setup.py
index 40a04a70718..2d05529b1ac 100644
--- a/flink-python/setup.py
+++ b/flink-python/setup.py
@@ -320,10 +320,10 @@ try:
         'pyflink.bin': ['*']}
 
     install_requires = ['py4j==0.10.9.7', 'python-dateutil>=2.8.0,<3',
-                        'apache-beam>=2.54.0,<=2.61.0',
+                        'apache-beam>=2.69.0,<=2.75.0',
                         'cloudpickle>=2.2.0', 'avro>=1.12.0',
                         'pytz>=2018.3', 'fastavro>=1.1.0,!=1.8.0', 
'requests>=2.26.0',
-                        'protobuf>=3.19.0',
+                        'protobuf>=6.31.1,<7.0.0.dev0',
                         'numpy>=1.22.4',
                         'pandas>=1.3.0,<2.3',  # FLINK-38513: 2.3+ drops cp39 
wheels
                         'pyarrow>=5.0.0,<21.0.0',
diff --git 
a/flink-python/src/main/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactory.java
 
b/flink-python/src/main/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactory.java
index 2e73dda2419..dc6a92a79b2 100644
--- 
a/flink-python/src/main/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactory.java
+++ 
b/flink-python/src/main/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactory.java
@@ -22,11 +22,6 @@ import org.apache.flink.python.FlinkSlf4jLogWriter;
 import org.apache.beam.model.fnexecution.v1.ProvisionApi;
 import org.apache.beam.model.pipeline.v1.RunnerApi.Environment;
 import org.apache.beam.model.pipeline.v1.RunnerApi.StandardEnvironments;
-import org.apache.beam.runners.core.construction.BeamUrns;
-import org.apache.beam.runners.core.construction.Environments;
-import org.apache.beam.runners.core.construction.PipelineOptionsTranslation;
-import org.apache.beam.runners.core.construction.Timer;
-import org.apache.beam.runners.core.construction.graph.ExecutableStage;
 import org.apache.beam.runners.fnexecution.artifact.ArtifactRetrievalService;
 import 
org.apache.beam.runners.fnexecution.control.ProcessBundleDescriptors.ExecutableProcessBundleDescriptor;
 import 
org.apache.beam.runners.fnexecution.control.ProcessBundleDescriptors.TimerSpec;
@@ -56,6 +51,11 @@ import org.apache.beam.sdk.options.ExperimentalOptions;
 import org.apache.beam.sdk.options.PipelineOptions;
 import org.apache.beam.sdk.options.PortablePipelineOptions;
 import org.apache.beam.sdk.util.NoopLock;
+import org.apache.beam.sdk.util.construction.BeamUrns;
+import org.apache.beam.sdk.util.construction.Environments;
+import org.apache.beam.sdk.util.construction.PipelineOptionsTranslation;
+import org.apache.beam.sdk.util.construction.Timer;
+import org.apache.beam.sdk.util.construction.graph.ExecutableStage;
 import org.apache.beam.sdk.values.KV;
 import 
org.apache.beam.vendor.guava.v32_1_2_jre.com.google.common.annotations.VisibleForTesting;
 import 
org.apache.beam.vendor.guava.v32_1_2_jre.com.google.common.base.MoreObjects;
diff --git 
a/flink-python/src/main/java/org/apache/beam/runners/fnexecution/state/GrpcStateService.java
 
b/flink-python/src/main/java/org/apache/beam/runners/fnexecution/state/GrpcStateService.java
index 0cac066567c..235976147a9 100644
--- 
a/flink-python/src/main/java/org/apache/beam/runners/fnexecution/state/GrpcStateService.java
+++ 
b/flink-python/src/main/java/org/apache/beam/runners/fnexecution/state/GrpcStateService.java
@@ -21,8 +21,8 @@ import 
org.apache.beam.model.fnexecution.v1.BeamFnApi.StateRequest;
 import org.apache.beam.model.fnexecution.v1.BeamFnApi.StateResponse;
 import org.apache.beam.model.fnexecution.v1.BeamFnStateGrpc;
 import org.apache.beam.sdk.fn.server.FnService;
-import 
org.apache.beam.vendor.grpc.v1p60p1.io.grpc.stub.ServerCallStreamObserver;
-import org.apache.beam.vendor.grpc.v1p60p1.io.grpc.stub.StreamObserver;
+import 
org.apache.beam.vendor.grpc.v1p69p0.io.grpc.stub.ServerCallStreamObserver;
+import org.apache.beam.vendor.grpc.v1p69p0.io.grpc.stub.StreamObserver;
 
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.CompletionStage;
diff --git 
a/flink-python/src/main/java/org/apache/beam/sdk/fn/server/ServerFactory.java 
b/flink-python/src/main/java/org/apache/beam/sdk/fn/server/ServerFactory.java
index 57fcfbcdaf4..2e301724484 100644
--- 
a/flink-python/src/main/java/org/apache/beam/sdk/fn/server/ServerFactory.java
+++ 
b/flink-python/src/main/java/org/apache/beam/sdk/fn/server/ServerFactory.java
@@ -19,16 +19,16 @@ package org.apache.beam.sdk.fn.server;
 
 import org.apache.beam.model.pipeline.v1.Endpoints;
 import org.apache.beam.sdk.fn.channel.SocketAddressFactory;
-import org.apache.beam.vendor.grpc.v1p60p1.io.grpc.BindableService;
-import org.apache.beam.vendor.grpc.v1p60p1.io.grpc.Server;
-import org.apache.beam.vendor.grpc.v1p60p1.io.grpc.ServerBuilder;
-import org.apache.beam.vendor.grpc.v1p60p1.io.grpc.ServerInterceptors;
-import org.apache.beam.vendor.grpc.v1p60p1.io.grpc.netty.NettyServerBuilder;
-import 
org.apache.beam.vendor.grpc.v1p60p1.io.netty.channel.epoll.EpollEventLoopGroup;
-import 
org.apache.beam.vendor.grpc.v1p60p1.io.netty.channel.epoll.EpollServerDomainSocketChannel;
-import 
org.apache.beam.vendor.grpc.v1p60p1.io.netty.channel.epoll.EpollServerSocketChannel;
-import 
org.apache.beam.vendor.grpc.v1p60p1.io.netty.channel.unix.DomainSocketAddress;
-import 
org.apache.beam.vendor.grpc.v1p60p1.io.netty.util.internal.ThreadLocalRandom;
+import org.apache.beam.vendor.grpc.v1p69p0.io.grpc.BindableService;
+import org.apache.beam.vendor.grpc.v1p69p0.io.grpc.Server;
+import org.apache.beam.vendor.grpc.v1p69p0.io.grpc.ServerBuilder;
+import org.apache.beam.vendor.grpc.v1p69p0.io.grpc.ServerInterceptors;
+import org.apache.beam.vendor.grpc.v1p69p0.io.grpc.netty.NettyServerBuilder;
+import 
org.apache.beam.vendor.grpc.v1p69p0.io.netty.channel.epoll.EpollEventLoopGroup;
+import 
org.apache.beam.vendor.grpc.v1p69p0.io.netty.channel.epoll.EpollServerDomainSocketChannel;
+import 
org.apache.beam.vendor.grpc.v1p69p0.io.netty.channel.epoll.EpollServerSocketChannel;
+import 
org.apache.beam.vendor.grpc.v1p69p0.io.netty.channel.unix.DomainSocketAddress;
+import 
org.apache.beam.vendor.grpc.v1p69p0.io.netty.util.internal.ThreadLocalRandom;
 import 
org.apache.beam.vendor.guava.v32_1_2_jre.com.google.common.net.HostAndPort;
 
 import java.io.File;
diff --git 
a/flink-python/src/main/java/org/apache/beam/vendor/grpc/v1p60p1/io/grpc/internal/SharedResourceHolder.java
 
b/flink-python/src/main/java/org/apache/beam/vendor/grpc/v1p69p0/io/grpc/internal/SharedResourceHolder.java
similarity index 98%
rename from 
flink-python/src/main/java/org/apache/beam/vendor/grpc/v1p60p1/io/grpc/internal/SharedResourceHolder.java
rename to 
flink-python/src/main/java/org/apache/beam/vendor/grpc/v1p69p0/io/grpc/internal/SharedResourceHolder.java
index dab28cac5ed..d91d952cce6 100644
--- 
a/flink-python/src/main/java/org/apache/beam/vendor/grpc/v1p60p1/io/grpc/internal/SharedResourceHolder.java
+++ 
b/flink-python/src/main/java/org/apache/beam/vendor/grpc/v1p69p0/io/grpc/internal/SharedResourceHolder.java
@@ -14,9 +14,9 @@
  * limitations under the License.
  */
 
-package org.apache.beam.vendor.grpc.v1p60p1.io.grpc.internal;
+package org.apache.beam.vendor.grpc.v1p69p0.io.grpc.internal;
 
-import 
org.apache.beam.vendor.grpc.v1p60p1.com.google.common.base.Preconditions;
+import 
org.apache.beam.vendor.grpc.v1p69p0.com.google.common.base.Preconditions;
 
 import javax.annotation.concurrent.ThreadSafe;
 
diff --git 
a/flink-python/src/main/java/org/apache/flink/python/PythonOptions.java 
b/flink-python/src/main/java/org/apache/flink/python/PythonOptions.java
index 7c9b87ba73a..70d015a8fbf 100644
--- a/flink-python/src/main/java/org/apache/flink/python/PythonOptions.java
+++ b/flink-python/src/main/java/org/apache/flink/python/PythonOptions.java
@@ -160,7 +160,7 @@ public class PythonOptions {
                     .withDescription(
                             "Specify the path of the python interpreter used 
to execute the python "
                                     + "UDF worker. The python UDF worker 
depends on Python 3.9+, Apache Beam "
-                                    + "(version >= 2.54.0, <= 2.61.0), Pip 
(version >= 20.3) and SetupTools (version >= 37.0.0). "
+                                    + "(version >= 2.69.0, <= 2.75.0), Pip 
(version >= 20.3) and SetupTools (version >= 37.0.0). "
                                     + "Please ensure that the specified 
environment meets the above requirements. The "
                                     + "option is equivalent to the command 
line option \"-pyexec\".");
 
diff --git 
a/flink-python/src/main/java/org/apache/flink/python/util/ProtoUtils.java 
b/flink-python/src/main/java/org/apache/flink/python/util/ProtoUtils.java
index 2745b36cb56..94995d102e0 100644
--- a/flink-python/src/main/java/org/apache/flink/python/util/ProtoUtils.java
+++ b/flink-python/src/main/java/org/apache/flink/python/util/ProtoUtils.java
@@ -58,7 +58,7 @@ public enum ProtoUtils {
                         RunnerApi.FunctionSpec.newBuilder()
                                 .setUrn(FLINK_CODER_URN)
                                 .setPayload(
-                                        
org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf
+                                        
org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf
                                                 .ByteString.copyFrom(
                                                 
coderInfoDescriptor.toByteArray()))
                                 .build())
diff --git 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/BeamDataStreamPythonFunctionRunner.java
 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/BeamDataStreamPythonFunctionRunner.java
index 23cc2a53eb4..35975860bc8 100644
--- 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/BeamDataStreamPythonFunctionRunner.java
+++ 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/BeamDataStreamPythonFunctionRunner.java
@@ -32,8 +32,8 @@ import 
org.apache.flink.streaming.api.operators.python.process.timer.TimerRegist
 import org.apache.flink.util.Preconditions;
 
 import org.apache.beam.model.pipeline.v1.RunnerApi;
-import org.apache.beam.runners.core.construction.BeamUrns;
-import org.apache.beam.runners.core.construction.graph.TimerReference;
+import org.apache.beam.sdk.util.construction.BeamUrns;
+import org.apache.beam.sdk.util.construction.graph.TimerReference;
 
 import javax.annotation.Nullable;
 
@@ -182,7 +182,7 @@ public class BeamDataStreamPythonFunctionRunner extends 
BeamPythonFunctionRunner
                                 RunnerApi.FunctionSpec.newBuilder()
                                         .setUrn(STATELESS_FUNCTION_URN)
                                         .setPayload(
-                                                
org.apache.beam.vendor.grpc.v1p60p1.com.google
+                                                
org.apache.beam.vendor.grpc.v1p69p0.com.google
                                                         
.protobuf.ByteString.copyFrom(
                                                         proto.toByteArray()))
                                         .build());
@@ -199,7 +199,7 @@ public class BeamDataStreamPythonFunctionRunner extends 
BeamPythonFunctionRunner
                                 RunnerApi.FunctionSpec.newBuilder()
                                         .setUrn(urn)
                                         .setPayload(
-                                                
org.apache.beam.vendor.grpc.v1p60p1.com.google
+                                                
org.apache.beam.vendor.grpc.v1p69p0.com.google
                                                         
.protobuf.ByteString.copyFrom(
                                                         proto.toByteArray()))
                                         .build());
diff --git 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/BeamPythonFunctionRunner.java
 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/BeamPythonFunctionRunner.java
index 8e5e5fdd586..7d89c93cc36 100644
--- 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/BeamPythonFunctionRunner.java
+++ 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/BeamPythonFunctionRunner.java
@@ -47,16 +47,6 @@ import 
org.apache.flink.util.function.LongFunctionWithException;
 import org.apache.beam.model.fnexecution.v1.BeamFnApi;
 import org.apache.beam.model.pipeline.v1.RunnerApi;
 import org.apache.beam.runners.core.TimerInternals;
-import org.apache.beam.runners.core.construction.Environments;
-import org.apache.beam.runners.core.construction.ModelCoders;
-import org.apache.beam.runners.core.construction.PipelineOptionsTranslation;
-import org.apache.beam.runners.core.construction.Timer;
-import org.apache.beam.runners.core.construction.graph.ExecutableStage;
-import 
org.apache.beam.runners.core.construction.graph.ImmutableExecutableStage;
-import org.apache.beam.runners.core.construction.graph.PipelineNode;
-import org.apache.beam.runners.core.construction.graph.SideInputReference;
-import org.apache.beam.runners.core.construction.graph.TimerReference;
-import org.apache.beam.runners.core.construction.graph.UserStateReference;
 import org.apache.beam.runners.fnexecution.control.BundleProgressHandler;
 import org.apache.beam.runners.fnexecution.control.DefaultJobBundleFactory;
 import org.apache.beam.runners.fnexecution.control.JobBundleFactory;
@@ -75,8 +65,19 @@ import org.apache.beam.sdk.options.PortablePipelineOptions;
 import org.apache.beam.sdk.options.SdkHarnessOptions;
 import org.apache.beam.sdk.transforms.windowing.BoundedWindow;
 import org.apache.beam.sdk.transforms.windowing.GlobalWindow;
-import org.apache.beam.sdk.util.WindowedValue;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.Struct;
+import org.apache.beam.sdk.util.construction.Environments;
+import org.apache.beam.sdk.util.construction.ModelCoders;
+import org.apache.beam.sdk.util.construction.PipelineOptionsTranslation;
+import org.apache.beam.sdk.util.construction.Timer;
+import org.apache.beam.sdk.util.construction.graph.ExecutableStage;
+import org.apache.beam.sdk.util.construction.graph.ImmutableExecutableStage;
+import org.apache.beam.sdk.util.construction.graph.PipelineNode;
+import org.apache.beam.sdk.util.construction.graph.SideInputReference;
+import org.apache.beam.sdk.util.construction.graph.TimerReference;
+import org.apache.beam.sdk.util.construction.graph.UserStateReference;
+import org.apache.beam.sdk.values.WindowedValue;
+import org.apache.beam.sdk.values.WindowedValues;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.Struct;
 import 
org.apache.beam.vendor.guava.v32_1_2_jre.com.google.common.collect.Iterables;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -96,7 +97,7 @@ import java.util.concurrent.LinkedBlockingQueue;
 import java.util.function.BiConsumer;
 import java.util.stream.Collectors;
 
-import static org.apache.beam.runners.core.construction.BeamUrns.getUrn;
+import static org.apache.beam.sdk.util.construction.BeamUrns.getUrn;
 import static org.apache.flink.python.Constants.INPUT_COLLECTION_ID;
 import static org.apache.flink.python.Constants.OUTPUT_COLLECTION_ID;
 import static org.apache.flink.python.Constants.SIDE_OUTPUT_CODER_PREFIX;
@@ -365,7 +366,7 @@ public abstract class BeamPythonFunctionRunner implements 
PythonFunctionRunner {
     @Override
     public void process(byte[] data) throws Exception {
         checkInvokeStartBundle();
-        mainInputReceiver.accept(WindowedValue.valueInGlobalWindow(data));
+        mainInputReceiver.accept(WindowedValues.valueInGlobalWindow(data));
     }
 
     @Override
@@ -594,10 +595,10 @@ public abstract class BeamPythonFunctionRunner implements 
PythonFunctionRunner {
 
     private Collection<RunnerApi.ExecutableStagePayload.WireCoderSetting>
             createValueOnlyWireCoderSetting() throws IOException {
-        WindowedValue<byte[]> value = WindowedValue.valueInGlobalWindow(new 
byte[0]);
+        WindowedValue<byte[]> value = WindowedValues.valueInGlobalWindow(new 
byte[0]);
         Coder<? extends BoundedWindow> windowCoder = 
GlobalWindow.Coder.INSTANCE;
-        WindowedValue.FullWindowedValueCoder<byte[]> windowedValueCoder =
-                WindowedValue.FullWindowedValueCoder.of(ByteArrayCoder.of(), 
windowCoder);
+        WindowedValues.FullWindowedValueCoder<byte[]> windowedValueCoder =
+                WindowedValues.FullWindowedValueCoder.of(ByteArrayCoder.of(), 
windowCoder);
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
         windowedValueCoder.encode(value, baos);
 
@@ -606,7 +607,7 @@ public abstract class BeamPythonFunctionRunner implements 
PythonFunctionRunner {
                 RunnerApi.ExecutableStagePayload.WireCoderSetting.newBuilder()
                         
.setUrn(getUrn(RunnerApi.StandardCoders.Enum.PARAM_WINDOWED_VALUE))
                         .setPayload(
-                                
org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.ByteString
+                                
org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString
                                         .copyFrom(baos.toByteArray()))
                         .setInputOrOutputId(INPUT_COLLECTION_ID)
                         .build());
@@ -614,7 +615,7 @@ public abstract class BeamPythonFunctionRunner implements 
PythonFunctionRunner {
                 RunnerApi.ExecutableStagePayload.WireCoderSetting.newBuilder()
                         
.setUrn(getUrn(RunnerApi.StandardCoders.Enum.PARAM_WINDOWED_VALUE))
                         .setPayload(
-                                
org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.ByteString
+                                
org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString
                                         .copyFrom(baos.toByteArray()))
                         .setInputOrOutputId(OUTPUT_COLLECTION_ID)
                         .build());
@@ -624,7 +625,7 @@ public abstract class BeamPythonFunctionRunner implements 
PythonFunctionRunner {
                     
RunnerApi.ExecutableStagePayload.WireCoderSetting.newBuilder()
                             
.setUrn(getUrn(RunnerApi.StandardCoders.Enum.PARAM_WINDOWED_VALUE))
                             .setPayload(
-                                    
org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf
+                                    
org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf
                                             
.ByteString.copyFrom(baos.toByteArray()))
                             .setInputOrOutputId(entry.getKey())
                             .build());
diff --git 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamBagStateHandler.java
 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamBagStateHandler.java
index 12e23eca243..8d7931aa5c4 100644
--- 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamBagStateHandler.java
+++ 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamBagStateHandler.java
@@ -26,7 +26,7 @@ import 
org.apache.flink.runtime.state.internal.InternalListState;
 import org.apache.flink.util.Preconditions;
 
 import org.apache.beam.model.fnexecution.v1.BeamFnApi;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.ByteString;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString;
 
 import javax.annotation.Nullable;
 
diff --git 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamMapStateHandler.java
 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamMapStateHandler.java
index 0b181f6bf41..6bc2f7ad8aa 100644
--- 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamMapStateHandler.java
+++ 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamMapStateHandler.java
@@ -28,7 +28,7 @@ import org.apache.flink.python.PythonOptions;
 import org.apache.flink.streaming.api.utils.ByteArrayWrapper;
 
 import org.apache.beam.model.fnexecution.v1.BeamFnApi;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.ByteString;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString;
 
 import java.util.HashMap;
 import java.util.Iterator;
diff --git 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamStateRequestHandler.java
 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamStateRequestHandler.java
index 3cb259c2eec..fb6765dff20 100644
--- 
a/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamStateRequestHandler.java
+++ 
b/flink-python/src/main/java/org/apache/flink/streaming/api/runners/python/beam/state/BeamStateRequestHandler.java
@@ -28,8 +28,8 @@ import org.apache.flink.streaming.api.utils.ByteArrayWrapper;
 
 import org.apache.beam.model.fnexecution.v1.BeamFnApi;
 import org.apache.beam.runners.fnexecution.state.StateRequestHandler;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.common.base.Charsets;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.ByteString;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.common.base.Charsets;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.ByteString;
 
 import javax.annotation.Nullable;
 
diff --git 
a/flink-python/src/main/java/org/apache/flink/table/runtime/runners/python/beam/BeamTablePythonFunctionRunner.java
 
b/flink-python/src/main/java/org/apache/flink/table/runtime/runners/python/beam/BeamTablePythonFunctionRunner.java
index 7ff4d32fa13..099f7f74e43 100644
--- 
a/flink-python/src/main/java/org/apache/flink/table/runtime/runners/python/beam/BeamTablePythonFunctionRunner.java
+++ 
b/flink-python/src/main/java/org/apache/flink/table/runtime/runners/python/beam/BeamTablePythonFunctionRunner.java
@@ -31,7 +31,7 @@ import org.apache.flink.util.Preconditions;
 
 import com.google.protobuf.GeneratedMessage;
 import org.apache.beam.model.pipeline.v1.RunnerApi;
-import org.apache.beam.runners.core.construction.graph.TimerReference;
+import org.apache.beam.sdk.util.construction.graph.TimerReference;
 
 import java.util.Collections;
 import java.util.List;
@@ -95,7 +95,7 @@ public class BeamTablePythonFunctionRunner extends 
BeamPythonFunctionRunner {
                                 RunnerApi.FunctionSpec.newBuilder()
                                         .setUrn(functionUrn)
                                         .setPayload(
-                                                
org.apache.beam.vendor.grpc.v1p60p1.com.google
+                                                
org.apache.beam.vendor.grpc.v1p69p0.com.google
                                                         
.protobuf.ByteString.copyFrom(
                                                         
userDefinedFunctionProto.toByteArray()))
                                         .build())
diff --git a/flink-python/src/main/resources/META-INF/NOTICE 
b/flink-python/src/main/resources/META-INF/NOTICE
index f8e52f6044b..dc648aa9a32 100644
--- a/flink-python/src/main/resources/META-INF/NOTICE
+++ b/flink-python/src/main/resources/META-INF/NOTICE
@@ -12,23 +12,26 @@ This project bundles the following dependencies under the 
Apache Software Licens
 - com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.21.3
 - com.google.flatbuffers:flatbuffers-java:25.2.10
 - joda-time:joda-time:2.5
+- io.opentelemetry:opentelemetry-api:1.57.0
+- io.opentelemetry:opentelemetry-common:1.57.0
+- io.opentelemetry:opentelemetry-context:1.57.0
 - org.apache.arrow:arrow-format:19.0.0
 - org.apache.arrow:arrow-memory-core:19.0.0
 - org.apache.arrow:arrow-memory-netty:19.0.0
 - org.apache.arrow:arrow-memory-netty-buffer-patch:19.0.0
 - org.apache.arrow:arrow-vector:19.0.0
-- org.apache.beam:beam-model-fn-execution:2.54.0
-- org.apache.beam:beam-model-job-management:2.54.0
-- org.apache.beam:beam-model-pipeline:2.54.0
-- org.apache.beam:beam-runners-core-construction-java:2.54.0
-- org.apache.beam:beam-runners-core-java:2.54.0
-- org.apache.beam:beam-runners-java-fn-execution:2.54.0
-- org.apache.beam:beam-sdks-java-core:2.54.0
-- org.apache.beam:beam-sdks-java-fn-execution:2.54.0
-- org.apache.beam:beam-sdks-java-extensions-avro:2.54.0
-- org.apache.beam:beam-sdks-java-transform-service-launcher:2.54.0
+- org.apache.beam:beam-model-fn-execution:2.75.0
+- org.apache.beam:beam-model-job-management:2.75.0
+- org.apache.beam:beam-model-pipeline:2.75.0
+- org.apache.beam:beam-runners-core-construction-java:2.75.0
+- org.apache.beam:beam-runners-core-java:2.75.0
+- org.apache.beam:beam-runners-java-fn-execution:2.75.0
+- org.apache.beam:beam-sdks-java-core:2.75.0
+- org.apache.beam:beam-sdks-java-fn-execution:2.75.0
+- org.apache.beam:beam-sdks-java-extensions-avro:2.75.0
+- org.apache.beam:beam-sdks-java-transform-service-launcher:2.75.0
 - org.apache.beam:beam-vendor-guava-32_1_2-jre:0.1
-- org.apache.beam:beam-vendor-grpc-1_60_1:0.1
+- org.apache.beam:beam-vendor-grpc-1_69_0:0.1
 - com.alibaba:pemja:0.5.7
 
 This project bundles the following dependencies under the BSD license.
diff --git 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonAggregateFunctionRunner.java
 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonAggregateFunctionRunner.java
index f6ef62eaa51..8b52aea4842 100644
--- 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonAggregateFunctionRunner.java
+++ 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonAggregateFunctionRunner.java
@@ -34,7 +34,7 @@ import 
org.apache.flink.table.runtime.runners.python.beam.BeamTablePythonFunctio
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.beam.runners.fnexecution.control.JobBundleFactory;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.Struct;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.Struct;
 
 import java.util.ArrayList;
 import java.util.LinkedList;
diff --git 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonScalarFunctionRunner.java
 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonScalarFunctionRunner.java
index 30fd500705f..0a020804024 100644
--- 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonScalarFunctionRunner.java
+++ 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonScalarFunctionRunner.java
@@ -27,7 +27,7 @@ import 
org.apache.flink.table.runtime.runners.python.beam.BeamTablePythonFunctio
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.beam.runners.fnexecution.control.JobBundleFactory;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.Struct;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.Struct;
 
 import java.util.LinkedList;
 import java.util.List;
diff --git 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonTableFunctionRunner.java
 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonTableFunctionRunner.java
index 56e93ce7de0..2b7f7f5c3c3 100644
--- 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonTableFunctionRunner.java
+++ 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughPythonTableFunctionRunner.java
@@ -27,7 +27,7 @@ import 
org.apache.flink.table.runtime.runners.python.beam.BeamTablePythonFunctio
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.beam.runners.fnexecution.control.JobBundleFactory;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.Struct;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.Struct;
 
 import java.util.LinkedList;
 import java.util.List;
diff --git 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamAggregatePythonFunctionRunner.java
 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamAggregatePythonFunctionRunner.java
index 091704616bd..832eb685c3e 100644
--- 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamAggregatePythonFunctionRunner.java
+++ 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamAggregatePythonFunctionRunner.java
@@ -29,7 +29,7 @@ import 
org.apache.flink.table.runtime.runners.python.beam.BeamTablePythonFunctio
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.beam.runners.fnexecution.control.JobBundleFactory;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.Struct;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.Struct;
 
 import java.util.LinkedList;
 import java.util.List;
diff --git 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamGroupWindowAggregatePythonFunctionRunner.java
 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamGroupWindowAggregatePythonFunctionRunner.java
index 35b1016e5fd..a74221bfeb1 100644
--- 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamGroupWindowAggregatePythonFunctionRunner.java
+++ 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamGroupWindowAggregatePythonFunctionRunner.java
@@ -29,7 +29,7 @@ import 
org.apache.flink.table.runtime.runners.python.beam.BeamTablePythonFunctio
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.beam.runners.fnexecution.control.JobBundleFactory;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.Struct;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.Struct;
 
 import static 
org.apache.flink.python.util.ProtoUtils.createFlattenRowTypeCoderInfoDescriptorProto;
 
diff --git 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamTableAggregatePythonFunctionRunner.java
 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamTableAggregatePythonFunctionRunner.java
index 51540fb26a6..bf88de83602 100644
--- 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamTableAggregatePythonFunctionRunner.java
+++ 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PassThroughStreamTableAggregatePythonFunctionRunner.java
@@ -29,7 +29,7 @@ import 
org.apache.flink.table.runtime.runners.python.beam.BeamTablePythonFunctio
 import org.apache.flink.table.types.logical.RowType;
 
 import org.apache.beam.runners.fnexecution.control.JobBundleFactory;
-import org.apache.beam.vendor.grpc.v1p60p1.com.google.protobuf.Struct;
+import org.apache.beam.vendor.grpc.v1p69p0.com.google.protobuf.Struct;
 
 import java.util.Arrays;
 import java.util.LinkedList;
diff --git 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PythonTestUtils.java
 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PythonTestUtils.java
index 9054e71a0c5..8c6e0ccc59e 100644
--- 
a/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PythonTestUtils.java
+++ 
b/flink-python/src/test/java/org/apache/flink/table/runtime/utils/PythonTestUtils.java
@@ -36,7 +36,7 @@ import 
org.apache.beam.runners.fnexecution.control.StageBundleFactory;
 import org.apache.beam.runners.fnexecution.control.TimerReceiverFactory;
 import org.apache.beam.runners.fnexecution.state.StateRequestHandler;
 import org.apache.beam.sdk.fn.data.FnDataReceiver;
-import org.apache.beam.sdk.util.WindowedValue;
+import org.apache.beam.sdk.values.WindowedValue;
 
 import java.util.HashMap;
 import java.util.Map;
diff --git 
a/flink-table/flink-sql-client/src/test/resources/cli/all-mode-help.out 
b/flink-table/flink-sql-client/src/test/resources/cli/all-mode-help.out
index 3d99e43adbb..e160504fba8 100644
--- a/flink-table/flink-sql-client/src/test/resources/cli/all-mode-help.out
+++ b/flink-table/flink-sql-client/src/test/resources/cli/all-mode-help.out
@@ -85,7 +85,7 @@ Mode "embedded" (default) submits Flink jobs from the local 
machine.
                                                 /usr/local/bin/python3). The
                                                 python UDF worker depends on
                                                 Python 3.9+, Apache Beam
-                                                (version >= 2.54.0, <= 2.61.0),
+                                                (version >= 2.69.0, <= 2.75.0),
                                                 Pip (version >= 20.3) and
                                                 SetupTools (version >= 37.0.0).
                                                 Please ensure that the 
specified
diff --git 
a/flink-table/flink-sql-client/src/test/resources/cli/embedded-mode-help.out 
b/flink-table/flink-sql-client/src/test/resources/cli/embedded-mode-help.out
index 491df3a8f56..04fe8f7bd3d 100644
--- a/flink-table/flink-sql-client/src/test/resources/cli/embedded-mode-help.out
+++ b/flink-table/flink-sql-client/src/test/resources/cli/embedded-mode-help.out
@@ -82,7 +82,7 @@ Mode "embedded" (default) submits Flink jobs from the local 
machine.
                                                 /usr/local/bin/python3). The
                                                 python UDF worker depends on
                                                 Python 3.9+, Apache Beam
-                                                (version >= 2.54.0, <= 2.61.0),
+                                                (version >= 2.69.0, <= 2.75.0),
                                                 Pip (version >= 20.3) and
                                                 SetupTools (version >= 37.0.0).
                                                 Please ensure that the 
specified
diff --git a/pom.xml b/pom.xml
index b67166326c5..883febb9b82 100644
--- a/pom.xml
+++ b/pom.xml
@@ -161,7 +161,7 @@ under the License.
                <hamcrest.version>1.3</hamcrest.version>
                <assertj.version>3.27.7</assertj.version>
                <py4j.version>0.10.9.7</py4j.version>
-               <beam.version>2.54.0</beam.version>
+               <beam.version>2.75.0</beam.version>
                <protoc.version>4.32.1</protoc.version>
                <okhttp.version>3.14.9</okhttp.version>
                <testcontainers.version>2.0.5</testcontainers.version>

Reply via email to