PostgreSQLプロセスが「アイドル状態のトランザクション」であるとはどういう意味ですか?


83

PostgreSQLプロセスが「アイドル状態のトランザクション」であるとはどういう意味ですか?

私が見ているサーバーでは、「ps ax | greppostgres」の出力に次のような9つのPostgreSQLプロセスが表示されます。

postgres: user db 127.0.0.1(55658) idle in transaction

これは、トランザクションがコミットされるのを待って、一部のプロセスがハングしていることを意味しますか?関連するドキュメントへのポインタをいただければ幸いです。

回答:


53

PostgreSQLのマニュアルでは、このトランザクションがオープン(内部BEGIN)、アイドルであることを意味していることを示しています。考えたり入力したりしているモニターを使用して接続しているユーザーである可能性があります。私のシステムにもたくさんあります。

ただし、レプリケーションにSlonyを使用している場合、Slony-I FAQidle in transaction、ネットワーク接続が突然終了したことを意味している可能性があることを示唆しています。詳細については、そのFAQの説明を確認してください。


9
「アイドル」だけはどういう意味ですか?「アイドル」状態のトランザクションも開いていますか?
Yousuf Sultan

2
モニターとはどういう意味ですか?
アブドゥル2016年

2
@Abdullpsqlクライアント。「モニター」は、データベースの制御に使用されるソフトウェアの(明らかに)古風な用語です。
匿名ムース2017


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.