

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 更新 Python 应用程序
<a name="troubleshooting-async-deadlock-update-python-apps"></a>

Python 应用程序可以通过两种不同的方式使用连接器：将连接器和其他 Java 依赖项打包为单个 uber-jar 的一部分，或者直接使用连接器 jar。要修复受 Async Sink 死锁影响的应用程序，请执行以下操作：
+ 如果应用程序使用 uber jar，请按照中的说明进行操作[更新 Java 应用程序](troubleshooting-async-deadlock-update-java-apps.md)。
+ 要从源代码重建连接器 jar，请使用以下步骤：

**从源头构建连接器：**

先决条件，类似于 Flink [编译要求](https://nightlies.apache.org/flink/flink-docs-release-1.15/docs/flinkdev/building/#build-flink)：
+ Java 11
+ Maven 3.2.5

## flink-sql-connector-kinesis
<a name="troubleshooting-async-deadlock-update-python-apps-flink-sql-connector-kinesis"></a>

1. 下载 Flink 1.15.4 源代码：

   ```
   wget https://archive.apache.org/dist/flink/flink-1.15.4/flink-1.15.4-src.tgz
   ```

1. 解压缩源代码：

   ```
   tar -xvf flink-1.15.4-src.tgz
   ```

1. 导航到 kinesis 连接器目录

   ```
   cd flink-1.15.4/flink-connectors/flink-connector-kinesis/
   ```

1. 编译并安装连接器 jar，指定所需的 AWS SDK 版本。要加快构建速度`-DskipTests`，请使用跳过测试执行和`-Dfast`跳过其他源代码检查：

   ```
   mvn clean install -DskipTests -Dfast -Daws.sdkv2.version=2.20.144
   ```

1. 导航到 kinesis 连接器目录

   ```
   cd ../flink-sql-connector-kinesis
   ```

1. 编译并安装 sql 连接器 jar：

   ```
   mvn clean install -DskipTests -Dfast
   ```

1. 生成的罐子将在以下网址发售：

   ```
   target/flink-sql-connector-kinesis-1.15.4.jar
   ```

## flink-sql-connector-aws-kinesis-streams
<a name="troubleshooting-async-deadlock-update-python-apps-flink-sql-connector-aws-kinesis-streams"></a>

1. 下载 Flink 1.15.4 源代码：

   ```
   wget https://archive.apache.org/dist/flink/flink-1.15.4/flink-1.15.4-src.tgz
   ```

1. 解压缩源代码：

   ```
   tar -xvf flink-1.15.4-src.tgz
   ```

1. 导航到 kinesis 连接器目录

   ```
   cd flink-1.15.4/flink-connectors/flink-connector-aws-kinesis-streams/
   ```

1. 编译并安装连接器 jar，指定所需的 AWS SDK 版本。要加快构建速度`-DskipTests`，请使用跳过测试执行和`-Dfast`跳过其他源代码检查：

   ```
   mvn clean install -DskipTests -Dfast -Daws.sdk.version=2.20.144
   ```

1. 导航到 kinesis 连接器目录

   ```
   cd ../flink-sql-connector-aws-kinesis-streams
   ```

1. 编译并安装 sql 连接器 jar：

   ```
   mvn clean install -DskipTests -Dfast
   ```

1. 生成的罐子将在以下网址发售：

   ```
   target/flink-sql-connector-aws-kinesis-streams-1.15.4.jar
   ```

## flink-sql-connector-aws-kinesis-firehose
<a name="troubleshooting-async-deadlock-update-python-apps-flink-sql-connector-kinesis-firehose"></a>

1. 下载 Flink 1.15.4 源代码：

   ```
   wget https://archive.apache.org/dist/flink/flink-1.15.4/flink-1.15.4-src.tgz
   ```

1. 解压缩源代码：

   ```
   tar -xvf flink-1.15.4-src.tgz
   ```

1. 导航到连接器目录

   ```
   cd flink-1.15.4/flink-connectors/flink-connector-aws-kinesis-firehose/
   ```

1. 编译并安装连接器 jar，指定所需的 AWS SDK 版本。要加快构建速度`-DskipTests`，请使用跳过测试执行和`-Dfast`跳过其他源代码检查：

   ```
   mvn clean install -DskipTests -Dfast -Daws.sdk.version=2.20.144
   ```

1. 导航到 sql 连接器目录

   ```
   cd ../flink-sql-connector-aws-kinesis-firehose
   ```

1. 编译并安装 sql 连接器 jar：

   ```
   mvn clean install -DskipTests -Dfast
   ```

1. 生成的罐子将在以下网址发售：

   ```
   target/flink-sql-connector-aws-kinesis-firehose-1.15.4.jar
   ```

## flink-sql-connector-dynamodb
<a name="troubleshooting-async-deadlock-update-python-apps-flink-sql-connector-dynamodb"></a>

1. 下载 Flink 1.15.4 源代码：

   ```
   wget https://archive.apache.org/dist/flink/flink-connector-aws-3.0.0/flink-connector-aws-3.0.0-src.tgz
   ```

1. 解压缩源代码：

   ```
   tar -xvf flink-connector-aws-3.0.0-src.tgz
   ```

1. 导航到连接器目录

   ```
   cd flink-connector-aws-3.0.0
   ```

1. 编译并安装连接器 jar，指定所需的 AWS SDK 版本。要加快构建速度`-DskipTests`，请使用跳过测试执行和`-Dfast`跳过其他源代码检查：

   ```
   mvn clean install -DskipTests -Dfast -Dflink.version=1.15.4 -Daws.sdk.version=2.20.144
   ```

1. 生成的罐子将在以下网址发售：

   ```
   flink-sql-connector-dynamodb/target/flink-sql-connector-dynamodb-3.0.0.jar
   ```