Uw link naar de Psycopg2-documenten legt het zelf een beetje uit, niet?
Dus, tenzij je een ander isolatieniveau gebruikt, of PgBouncer gebruikt, zou je eerste voorbeeld prima moeten werken. Als u echter meer gedetailleerde controle wilt over wat er precies gebeurt tijdens een transactie, dan is de try/behalve-methode misschien het beste, omdat deze parallel loopt met de status van de databasetransactie zelf.