2016-08-08 3 views
0

私は、python sparkストリーミングジョブでdataprocジョブのkillシグナルをキャッチする方法を探しています。PostgreSQL DBへの複数の接続を開くdataprocに関する特定のジョブが1つあります。プール内の接続数は限られています。現在、ジョブが再開された場合、接続は正常に終了せず、その結果、このジョブの次のインスタンスには、正常に動作するのに十分な接続がありません。どうにかして、私が仕事中の殺す信号を捕まえることができれば、私は結局結局閉鎖を確実にすることができます。sparkストリーミングジョブでdataproc killシグナルをキャッチする可能性

答えて

2

あなたができることは、あなたのPythonドライバにatexit handlerを登録することです。それが正常に呼び出されるかどうかは、再起動または失敗の原因によって異なります。そのため、最初に再起動するケースで最初にテストすることで、動作しているかどうかを確認できます。

それ以外の方法で孤立した接続を何とか強制的にクリーンアップする方法がある場合は、起動時にそれらを探して、明示的に必要なクリーンアップ呼び出しを発行する方が簡単かもしれません。

関連する問題