Eu não acho que há uma quantidade máxima de trabalho que pode ser realizada em uma transação. Os dados continuam sendo adicionados aos arquivos da tabela e, eventualmente, a transação é confirmada ou revertida:AIUI esse resultado é armazenado em pg_clog; se retroceder, o espaço será eventualmente recuperado pelo vácuo. Portanto, não é como se o trabalho de transação em andamento fosse mantido na memória e liberado no momento do commit, por exemplo.