Gabriel, primero que todo, yo haria un update directo sin for, luego como dice alvaro, si sales del procedimiento a mitad del proceso, postgres no te gaurdará los registro que ya pasaron, recuerda que solo si se termina con exito el procedimiento postgres te actualiza de lo contrario hace un rollback de todo o anterior..
-- Cesar Erices Vergara Ingeniero en Gestión Informática Analista de Sistema Santiago - Chile