Tomas Vondra <t...@fuzzy.cz> writes: > On 4.12.2011 22:16, Tom Lane wrote: >> Um ... why would you design it like that?
> The backends are added to pg_stat_activity after the auth hook finishes, > which means possible race conditions (backends executed at about the > same time don't see each other in pg_stat_activity). So I use an > exclusive lock that's acquired before reading pg_stat_activity and > released after the pg_stat_activity is updated. > That's the only thing the library loaded using local_preload_libraries > does - it releases the lock. That's an unbelievably ugly, and dangerous, kluge. All you need is one backend not loading the second library (and remember, local_preload_libraries is user-settable) and you've just locked up the system. Why are you using pg_stat_activity for this anyway? Searching the ProcArray seems much safer ... see CountDBBackends for an example. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers