è perché tu apri UNA transazione all'inizio e poi tenti di committarla n volte dentro un ciclo. La prima va bene. le altre ovviamente falliscono