The following bug has been logged on the website:
Bug reference: 11638
Logged by: Casey Allen Shobe
Email address: cg(at)osss(dot)net
PostgreSQL version: 9.3.5
Operating system: Linux (RHEL 5)
Description:
Discovered on 8.4.5, reproducible on 9.3.5.
The paste pretty much explains it all:
http://pgsql.privatepaste.com/162682d176
When, within a transaction:
* I drop a foreign key (or any) constraint.
* Load some data to the table which won't fit the constraint.
* Analyze the table.
* Attempt to re-add the constraint which fails and should roll back the
whole transaction.
The constraint is still missing after rollback.
If I take out the analyze step, it works as expected.