> > However, that fix seems to have the same kind of layering > > violation that Andres complained about for the first version of the > > patch on this thread -- predicate locking should be in heapam code, > > not in execIndexing.c. > > It's not just the layering violation, that solution also has a leftover > issue, similarly to my first patch in this thread. When I looked at this my > initial conclusion was that we can't fix the two at the same place without > layering violations / remaining issues, so my idea was to apply the same fix > as I did for SELECT to those paths, but I'll take another look at it.
And I was wrong, this approach is simple and works for all reported cases, I attached v4 which uses this approach.
v4-0001-Fix-missing-SIREAD-lock-on-the-row-found-by-ON-CO.patch
Description: Binary data
