Hi, Using a procedure for the first time to run some processing for each row in a table, generating output to a target table. The following works without COMMIT the example below gives: INFO: Error Name:cannot commit while a subtransaction is active INFO: Error State:2D000 Could someone point me in the right direction so i can understand why and how i might rework my methodology? CREATE OR REPLACE PROCEDURE my_functions.first_procedure( ) LANGUAGE 'plpgsql' AS $BODY$ DECLARE grd_geom geometry(Polygon,27700); grd_gid integer; rec data.areas%rowtype; BEGIN DELETE FROM data.output; DELETE FROM data.temp_output; FOR rec IN SELECT * FROM data.areas LOOP grd_geom := rec.geom; grd_gid := rec.gid; PERFORM my_functions.processing_function(grd_geom); DELETE FROM data.temp_output; COMMIT; END LOOP; RETURN; END; $BODY$; GRANT EXECUTE ON PROCEDURE my_functions.first_procedure() TO postgres; GRANT EXECUTE ON PROCEDURE my_functions.first_procedure() TO PUBLIC; Thanks Andy -- Sent from: http://www.postgresql-archive.org/PostgreSQL-general-f1843780.html