2017-03-08 10 views
0

単純なalter tableの追加列が実行されると、アプリケーションが接続プールを使用して接続やおそらくテーブルをロックしている可能性があります。アプリケーションがまだ動作している間に、まだpostgresでalter tableコマンドを実行できる方法はありますか?postgres alter table接続プールでハングする

答えて

1

ビューpg_locksをチェックして、どの同時トランザクションがロックを保持しているかを確認してください。ALTER TABLE

トランザクション”(チェックpg_stat_activity)で状態“アイドル状態で接続プールがハングアップしている場合は、接続プールまたはアプリケーションにバグがあります。 VACUUMはその仕事をすることができないので、テーブル膨張のような他の問題も発生するので、それを修正する必要があります。

ロックを監視するためのステートメントのコレクションは、Postgresのウィキで利用可能です: