Citus 5.0 で分散結合のパフォーマンス テストを試みています。マスター ノードと 2 つのワーカー ノードがあり、デフォルトの構成で期待どおりに動作するいくつかのハッシュ分散テーブルがあります。再パーティション化が必要なクエリをテストするには、タスク トラッカー エグゼキュータを使用する必要があります。
ただし、 に設定citus.task_executor_type
するとtask-tracker
、分散テーブルを含むすべてのクエリが失敗します。例えば:
postgres=# SET citus.task_executor_type TO "task-tracker";
SET
postgres=# SELECT 1 FROM distrib_mcuser_car LIMIT 1;
ERROR: failed to execute job 39
DETAIL: Too many task tracker failures
に設定citus.task_executor_type
しpostgresql.conf
ても同じ効果があります。
タスク エグゼキューターを切り替えるために必要な、他に欠けている構成変更はありますか?
編集、詳細:
- PostGIS はすべてのノードにインストールされています
- postgres_fdw がマスターにインストールされている
- 他のすべての構成は元のままです
これまでのすべてのテーブルは次のように分散されていました。
SELECT master_create_distributed_table('table_name', 'id', 'hash');
SELECT master_create_worker_shards('table_name', 8, 2);
のスキーマdistrib_mcuser_car
はかなり大きいので、より単純な例を次に示します。
postgres=# \d+ distrib_test_int
Table "public.distrib_test_int"
Column | Type | Modifiers | Storage | Stats target | Description
--------+---------+-----------+---------+--------------+-------------
num | integer | | plain | |
postgres=# select * from distrib_test_int;
ERROR: failed to execute job 76
DETAIL: Too many task tracker failures