https://pgbouncer.github.io/usage.html
https://pgbouncer.github.io/config.html#description
W Twoim przypadku, jeśli transakcja nigdy nie zostanie zakończona (zatwierdzona, wycofana), trafi idle_transaction_timeout
(domyślnie wyłączone) i idle in transaction
połączenie wróci do puli, umożliwiając innym połączenie. Jeśli masz dla niego domyślną wartość, w pewnym momencie cała pula połączeń zostanie zapełniona, więc nowe zostaną odrzucone. Od tego momentu pojedyncze instrukcje nie będą działać - będą czekać na bezpłatne połączenie, które nigdy się nie pojawi.
Odnośnie pojedynczych wyciągów - nie są one "transformowane do transakcji przez pgbounce" ani "w pulowaniu transakcji każde polecenie jest transakcją samą w sobie". Jest to kontrolowane przez AUTOCOMMIT
dla każdej sesji.