が戻らない pg_trigger の tgdeferrable 列と tginitdeferred 列が必ず f になる( t に戻 らない) pg_constraint の condeferrable 列と condeferred 列は t に戻る SET CONSTRAINTS <fkname> DEFERRED をおこなっても参照整合性制約をみたさない レコードがINSERT時点でエラーになってしまう ERROR: insert or update on table "child" violates foreign key constraint "child_parent_fk" DEFERRED なので、commit時点まで参照整合性制約の評価は遅延されるべき https://gist.github.com/yahonda/8d0b62b591055072dab78adf39ea0023