RedshiftにJDBC接続する時、[Amazon](500150) Error setting/closing connection: Not Connected.で切断される

テクニカルサポートノート。サービス名:Amazon Redshift
2020.04.09

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

困っていた内容

Redshift用のJDBCでRedshiftに接続しており、連続して処理を実行すると以下のエラーメッセージが記録され処理が停止してしまう。

[java.sql.SQLException: [Amazon](500150) Error setting/closing connection: Not Connected.]

どう対応すればいいの?

本エラーは、クライアントとしてはDB接続オブジェクトがあるものの、無効となった接続上で処理を継続した場合に出力されます。 接続が無効となる例としては、Redshiftのサーバ側が再起動したといった理由が考えられます。 対策としては、処理毎にDB接続を新規に作成する方法が考えられます。 また、コネクションプーリングを利用している場合、close()メソッドを呼び出したとしても、実際には接続オブジェクトがプールに戻されるだけであり、次のgetConnection()では実際には物理接続は再作成されていない場合があることをご留意ください。

参考情報

amazon-redshift-management-guide