Robert Haas <robertmhaas@gmail.com> writes:
> That's certainly a fair concern, and it might even be worse than
> O(n^2). On the other hand, the current approach involves scanning the
> entire ProcArray for every snapshot, even if nothing has changed and
> 90% of the backends are sitting around playing tiddlywinks, so I don't
> think I'm giving up something for nothing except perhaps in the case
> where there is only one active backend in the entire system. On the
> other hand, you could be entirely correct that the current
> implementation wins in the uncontended case. Without testing it, I
> just don't know...
Sure. Like I said, I don't know that this can't be made to work.
I'm just pointing out that we have to keep an eye on the single-backend
case as well as the many-backends case.
regards, tom lane