Row Locks With Joins Can Produce Surprising Results in PostgreSQL

4 points by Haki


michae2

Nice article. Moving the locking statement into a CTE or subquery is a great solution.

When implementing read committed isolation in CockroachDB we debated for a long time about whether to add EvalPlanQual behavior. We ended up adding a statement-level retry mechanism instead, which hides these anomalies from the application, at the cost of extra latency.