PostgreSQL 9.6.1 で dblink 拡張機能を使用してタスクを並列実行すると奇妙な問題が発生します。場合によっては、接続中のタスクが既に終了していることを拡張機能が認識できず、結果を待っているようです。したがって、PG 9.5 で完全に実行されていたプログラムが、PG 9.6 では無期限にハングし続けることがあります。
手順:
- 「perform dblink_connect」を使用して接続が開かれます
- クエリは「dblink_send_query」を使用して送信されます
- 他のタスクは別の接続に送信されます
- プログラムは最初の接続を取得し、「dblink_get_result」を発行して出力を待ちます
- 2 番目の接続などの後 - これらの接続の一部は既に終了しているため、「dblink_get_result」の開始直後に結果が得られるはずですが、場合によっては PG 9.6 では機能せず、チェックがハングするだけです...
私が認識していない PG 9.6 での dblink 動作の変更はありますか?