TiCDC の互換性

このセクションでは、TiCDC に関連する互換性の問題とその対処方法について説明します。

CLIと設定ファイルの互換性

  • TiCDC v4.0.0 では、 ignore-txn-commit-tsが削除され、 ignore-txn-start-tsが追加され、start_ts を使用してトランザクションをフィルタリングします。
  • TiCDC v4.0.2 では、 db-dbs / db-tables / ignore-dbs / ignore-tablesが削除され、データベースとテーブルに新しいフィルター ルールを使用するrulesが追加されています。フィルター構文の詳細については、 テーブルフィルターを参照してください。
  • TiCDC v6.2.0 以降、TiCDC Open API を介して TiCDCサーバーと直接対話できるようになりましcdc cli--serverパラメータを使用して、TiCDCサーバーのアドレスを指定できます。 --pdは非推奨です。
  • v6.4.0 以降、TiCDC Syncpoint 機能を使用できるのは、 SYSTEM_VARIABLES_ADMINまたはSUPER権限を持つ変更フィードのみです。

互換性の問題を処理する

このセクションでは、TiCDC に関連する互換性の問題とその対処方法について説明します。

TiCDC v5.0.0-rc cdc cliツールを使用して v4.0.x クラスターを操作することによって発生する非互換性の問題

TiCDC v5.0.0-rc のcdc cliツールを使用して v4.0.x TiCDC クラスターを操作すると、次のような異常な状況が発生する可能性があります。

  • TiCDC クラスターが v4.0.8 以前のバージョンの場合、v5.0.0-rc cdc cliツールを使用してレプリケーション タスクを作成すると、クラスターに異常が発生し、レプリケーション タスクが停止する可能性があります。

  • TiCDC クラスターが v4.0.9 以降のバージョンの場合、v5.0.0-rc cdc cliツールを使用してレプリケーション タスクを作成すると、古い値と統合ソーター機能が予期せずデフォルトで有効になります。

解決策:

TiCDC クラスターのバージョンに対応するcdc実行可能ファイルを使用して、次の操作を実行します。

  1. v5.0.0-rc cdc cliツールを使用して作成された変更フィードを削除します。たとえば、 tiup cdc:v4.0.9 cli changefeed remove -c xxxx --pd=xxxxx --forceコマンドを実行します。
  2. レプリケーション タスクが停止した場合は、TiCDC クラスターを再起動します。たとえば、 tiup cluster restart <cluster_name> -R cdcコマンドを実行します。
  3. チェンジフィードを再作成します。たとえば、 tiup cdc:v4.0.9 cli changefeed create --sink-uri=xxxx --pd=xxxコマンドを実行します。

注記:

この問題は、 cdc cliが v5.0.0-rc の場合にのみ発生します。他の v5.0.x バージョンのcdc cliツールは、v4.0.x クラスターと互換性があります。

sort-dirdata-dirの互換性に関する注意事項

sort-dir構成は、TiCDC ソーターの一時ファイル ディレクトリを指定するために使用されます。その機能はバージョンによって異なる場合があります。次の表は、バージョン間のsort-dirの互換性の変更を示しています。

バージョンsort-engine機能注記おすすめ
v4.0.11 またはそれ以前の v4.0 バージョン、v5.0.0-rcこれはチェンジフィード設定項目であり、 fileソーターとunifiedソーターの一時ファイル ディレクトリを指定します。これらのバージョンでは、 fileソーターとunifiedソーターは実験的機能であり、本番環境には推奨されません

複数の変更フィードがunifiedソーターをsort-engineとして使用する場合、実際の一時ファイル ディレクトリは変更フィードのsort-dir構成になる可能性があり、各 TiCDC ノードで使用されるディレクトリは異なる可能性があります。
本番環境でunifiedソーターを使用することはお勧めできません。
v4.0.12、v4.0.13、v5.0.0、および v5.0.1これは、changefeed またはcdc serverの構成アイテムです。デフォルトでは、変更フィードのsort-dir構成は有効にならず、 cdc serversort-dir構成はデフォルトで/tmp/cdc_sortになります。本番環境ではcdc serverのみを構成することをお勧めします。

TiUPを使用して TiCDC を展開する場合は、最新のTiUPバージョンを使用し、TiCDCサーバー構成でsorter.sort-dirを設定することをお勧めします。

unifiedソーターは、v4.0.13、v5.0.0、および v5.0.1 ではデフォルトで有効になっています。クラスターをこれらのバージョンにアップグレードする場合は、TiCDCサーバー構成でsorter.sort-dirが正しく構成されていることを確認してください。
cdc serverコマンドライン パラメーター (またはTiUP) を使用してsort-dirを構成する必要があります。
v4.0.14 以降 v4.0 バージョン、v5.0.3 以降 v5.0 バージョン、以降の TiDB バージョンsort-dirは非推奨です。 data-dirを設定することをお勧めします。最新バージョンのTiUP を使用してdata-dirを設定できます。これらの TiDB バージョンでは、 unifiedソーターがデフォルトで有効になっています。クラスターをアップグレードするときは、 data-dir正しく構成されていることを確認してください。それ以外の場合は、デフォルトで/tmp/cdc_data一時ファイル ディレクトリとして使用されます。

ディレクトリが存在するデバイスのstorage容量が不足している場合、ハードディスクの空き容量が不足する問題が発生する可能性があります。この状況では、変更フィードの以前のsort-dir構成は無効になります。
cdc serverコマンドライン パラメーター (またはTiUP) を使用してdata-dirを構成する必要があります。
v6.0.0以降のバージョンdata-dirは、TiCDC によって生成された一時ファイルの保存に使用されます。v6.0.0 以降、TiCDC はデフォルトでソート エンジンとしてdb sorterを使用します。 data-dirは、このエンジンのディスク ディレクトリです。cdc serverコマンドライン パラメーター (またはTiUP) を使用してdata-dirを構成する必要があります。

一時テーブルとの互換性

v5.3.0 以降、TiCDC はグローバル一時テーブルをサポートします。 v5.3.0 より前のバージョンの TiCDC を使用してグローバル一時テーブルをダウンストリームにレプリケートすると、テーブル定義エラーが発生します。

アップストリーム クラスターにグローバル一時テーブルが含まれている場合、ダウンストリーム TiDB クラスターは v5.3.0 以降のバージョンであることが予想されます。そうしないと、レプリケーション プロセス中にエラーが発生します。

このページは役に立ちましたか?