On 12/06/2010 04:41 AM, John R Pierce wrote:
>> If you want that level of isolation, you have to give each user his own
>> cluster.
>
> as postgresql is currently structured, yes, and further, each cluster
> needs its own listener port which is, IMHO, rather ugly.
>
> My idea of adding an 'instance' layer allows clusters to share ports.
How do you plan to handle the use of system V shared memory? Each
cluster needs its own reserved, pinned shm segment. You'll be wasting
memory on idle clusters while starving busy clusters for memory.
For shared hosting / multi-tenant DB needs, wouldn't it be better to
improve Pg's core to handle the job better? Per-user storage quotas,
database-scoped user IDs, age-limited transactions (though that can
already be done pretty easily with a simple script), access-filtered
views in pg_catalog, etc.
--
Craig Ringer