Neil Conway <neilc(at)samurai(dot)com> writes:
> [ various ideas about reimplementing LISTEN/NOTIFY ]
I really dislike the idea of pushing notifies out to the shared queue
before commit. That essentially turns "forever do notify foo" into
a global DOS tool: you can drive everybody else's backend into swap
hell along with your own.
The idea of blocking during commit until shmem becomes available might
work. There's some issues here about transaction atomicity, though:
how do you guarantee that all or none of your notifies get sent?
(Actually, supposing that the notifies ought to be sent post-commit,
"all" is the only acceptable answer. So maybe you just never give up.)
regards, tom lane