http://www.postgresql.org/docs/9.0/static /sql-createtable.html в раздел „Ограничения за неотложена уникалност“ – „Когато ограничение за УНИКАЛЕН или ПЪРВИЧЕН КЛЮЧ не може да бъде отложено, PostgreSQL проверява за уникалност веднага, когато ред бъде вмъкнат или модифициран.“
Промяната на вашето уникално ограничение на отлагаемо ще задържи проверката до края на актуализацията. Или използвайте SET CONSTRAINTS, за да деактивирате на ниво сесия (което е досадно повтарящо се), или премахнете и създайте отново ограничението за уникалност с опцията за отлагане (не ми е известна конструкция ALTER, която да прави това без изпускане).