Robert Haas <robertmhaas@xxxxxxxxx> writes: > On Thu, Jul 22, 2010 at 5:29 PM, Andres Freund <andres@xxxxxxxxxxx> wrote: >>> The problem is harder for us because a backend can't switch identities >>> once it's been assigned to a database. I haven't heard an adequate >>> explanation of why that couldn't be changed, though. >> Possibly it might decrease the performance significantly enough by >> reducing the cache locality (syscache, prepared plans)? > Those things are backend-local. The worst case scenario is you've got > to flush them all when you reinitialize, in which case you still save > the overhead of creating a new process. "Flushing them all" is not zero-cost; it's not too hard to believe that it could actually be slower than forking a clean new backend. What's much worse, it's not zero-bug. We've got little bitty caches all over the backend, including (no doubt) some caching behavior in third-party code that wouldn't get the word about whatever API you invented to deal with this. regards, tom lane -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance