Skip site navigation (1) Skip section navigation (2)

Re: limiting connections per user/database

From: Neil Conway <neilc(at)samurai(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Petr Jelínek <pjmodos(at)parba(dot)cz>,pgsql-patches(at)postgresql(dot)org
Subject: Re: limiting connections per user/database
Date: 2005-06-27 05:16:46
Message-ID: 42BF8BBE.6040102@samurai.com (view raw or flat)
Thread:
Lists: pgsql-patches
Tom Lane wrote:
> I looked at this but did not actually see the code path that requires
> forcing creation of the per-DB entry right at this spot.  The HASH_FIND
> calls for this hashtable seem to all happen on the backend side not the
> collector side.  Can you explain why we need this?

Yeah, I missed this when making the original change (this code is rather 
opaque :-\). The problem is that if we don't initialize the dbentry for 
the database we connect to, it won't get written out to the statsfile in 
pgstat_write_statsfile(). So the database won't be counted as having any 
backends connected to it in pgstat_read_statsfile() (see line 2558 of 
pgstat.c in HEAD).

BTW, the comment at line 2210 of pgstat.c is misleading: the n_backends 
in the entries of the dbentry hash table are explicitly ignored when 
reading in the stats file -- the value is instead derived from the 
number of beentries that are seen.

-Neil

In response to

Responses

pgsql-patches by date

Next:From: Tom LaneDate: 2005-06-27 05:42:00
Subject: Re: limiting connections per user/database
Previous:From: Tom LaneDate: 2005-06-27 05:00:56
Subject: Re: limiting connections per user/database

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group