Josh Berkus <josh(at)agliodbs(dot)com> writes:
> But even REPLACE requires predicate locking. There's no real way to get
> around it.
The point though is that REPLACE is restricted to a type of predicate
narrow enough to be enforced through a unique-index mechanism, and so
it's implementable without solving the general case of predicate
locking.
Predicate locking for narrow cases isn't very hard; it's the general
case of arbitrary predicates that's hard.
regards, tom lane