Hi
I've updated mvcc.sgml to explain the new serialization conflict rules for row-level locks, and added a paragraph to
backend/executor/READMEthat explains the implementation of those. I've chosen backend/executor/README because it
alreadycontains a description of UPDATE handling in READ COMMITTED mode, which seemed at least somewhat related.
The patch now removes all code dealing with the crosscheck_snapshot, since the RI triggers should now be safe without
that.
I've also fixed the formatting of multi-line comments to match the coding style. I kept the braces around single-line
"if"or "else" statements wherever both "if" and "else" blocks were present and one of them wasn't a single-line block.
I think, in addition to the documentation changes this patch contains, that a section on how to write RI triggers in
pl/pgsqlwould be nice to have. It's not strictly part of the documentation of this feature though, more a potential
use-case,so I didn't tackle it for the moment. I do hope to find the time to write such a section, though, and if that
happensI'll post it as a separate documentation-only patch.
I've pushed the changes to the branch serializable_row_locks on git://github.com/fgp/postgres.git and also attached a
patch.
best regards,
Florian Pflug