O Postgres aborta transações atuais em caso de erro? Em qualquer caso, você pode fornecer uma referência?
Pesquisar no Google "site:postgres.org transaction abort rollback error" não produziu resultados, e o GPT tem alucinações.
Encontrei essa afirmação no StackOverflow, mas ela não é apoiada por nada.
O Postgres aborta automaticamente as transações sempre que qualquer instrução SQL termina com um erro
Também encontrei isto . É semelhante, mas diferente, pois não lanço exceções (além disso, esse "normalmente" o torna confuso).
A opção level especifica a gravidade do erro. Os níveis permitidos são DEBUG, LOG, INFO, NOTICE, WARNING e EXCEPTION, com EXCEPTION sendo o padrão. EXCEPTION gera um erro (que normalmente aborta a transação atual ); os outros níveis geram apenas mensagens de diferentes níveis de prioridade. Se mensagens de uma prioridade específica são reportadas ao cliente, gravadas no log do servidor ou ambas, é controlado pelas variáveis de configuração log_min_messages e client_min_messages. Veja o Capítulo 19 para mais informações.