| Type: | integer |
| Default: | 0 (0ms) |
| Min: | 0 (0ms) |
| Max: | 2147483647 (2147483647ms) |
| Unit: | milliseconds (ms) |
| Context: | user |
| Restart: | false |
| Since: | 14 |
Terminate any session that has been idle (that is, waiting for a client query), but not within an open transaction, for longer than the specified amount of time. If this value is specified without units, it is taken as milliseconds. A value of zero (the default) disables the timeout.
Unlike the case with an open transaction, an idle session without a transaction imposes no large costs on the server, so there is less need to enable this timeout than idle_in_transaction_session_timeout.
Be wary of enforcing this timeout on connections made through connection-pooling software or other middleware, as such a layer may not react well to unexpected connection closure. It may be helpful to enable this timeout only for interactive sessions, perhaps by applying it only to particular users.
