Exception: Pgbus::Client::WedgedReadTimeout
- Inherits:
-
ReadTimeoutError
- Object
- StandardError
- Error
- ReadTimeoutError
- Pgbus::Client::WedgedReadTimeout
- Defined in:
- lib/pgbus/client.rb
Overview
Raised (instead of plain ReadTimeoutError) when the Ruby Timeout last resort fires — i.e. Thread#raise interrupted a read mid-flight on a socket libpq couldn't bound (issue #354). IS-A Pgbus::ReadTimeoutError, so the public contract is unchanged; the distinct class lets with_read_timeout tell "wedged socket — reload the pool" (this) apart from "clean server-side statement_timeout cancel — connection healthy" (plain ReadTimeoutError), where reloading would churn a healthy pool on every slow query. Internal signal carried on the unwind path itself (no thread-local/ivar state around a Thread#raise interrupt); application code should rescue Pgbus::ReadTimeoutError.