> Uh ... the interesting question is usually not "does this backend hold
> any row locks", it is "is this row locked by any backends". If the
> latter question is not *exceedingly* cheap to answer, at least in the
> normal case where the answer is no, you don't have a workable solution,
> because you'll be adding nontrivial overhead to every row update.
OK, what I mean is to know if a row is locked by any backend, why can't
we just put a reference count of the number of locks on that row,
instead of recording each backend separately? Wouldn't that require a
fixed amount of shared mem?
Chris