isCallerBug
Whether this failure says the calling code is wrong, so that the result style throws it rather than returning it. Decided by the exception's type, never by its reason.
A fetch*Strict that found no row is thrown: Strict asserted the row was there. RoutineAssertionException is the same assertion written in PL/pgSQL, while a routine's RAISE EXCEPTION is a business rule and is returned. TransactionStateException IN_FAILED_TRANSACTION means an earlier failure was turned into a value and the work went on. InitializationException comes before any operation a result would describe. Every type not listed is returned, those the driver gains later included.