You can find something to run triggers on commit at
http://gorda.di.uminho.pt/community/pgsqlhooks/
It also allows to define triggers on begin, startup and shutdown.
It works fine with triggers written in C.
A patch will be available soon in order to allow to writte triggers in
other languages such as plgsql, perl, java, etc..
and also to allow triggers on [before | after] commit and [before |
after] abort.
Best regards,
Alfranio Junior