postgresql 9.1 failed insert occupies increasing disk space
Error on inserting data due to FK constraint violation will leave dead tuple on the target table. That's the nature of Postgres. This dead tuple of course will occupy disk space. Things to prevent this filling up disk space :


A well tuned autovacuum can handle this wasted space.
Do a manual FK constraint check (on application side perhaps) prior to inserting data to the target tables.