Re: PGconn and fork

From: Rodrigo Barboza <rodrigombufrj(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-interfaces <pgsql-interfaces(at)postgresql(dot)org>
Subject: Re: PGconn and fork
Date: 2013-05-08 14:06:48
Message-ID: CANs8QJbYdhwVfVozntnKZUovqx69x0LtoQYFVNOtO9HTG0ZcvA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces

On Wed, May 8, 2013 at 11:03 AM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> Rodrigo Barboza <rodrigombufrj(at)gmail(dot)com> writes:
> > I have a program in C, the createas a connection, do stuff, fork, exit
> > child and continues life.
> > Supose that when I create de PGconn, I have 1 active connection in
> postgres.
> > When I fork, does it count as a second connection? I mean, will postrges
> > interpretate 2 active connections or they only share the same connection?
> > I know that if the child process execute some query, I can get unexpected
> > results, but it doesn't, so I am safe about that.
> > I'm only worried that this can increase the number of connections and
> reach
> > the limit of max_connections.
>
> No, the child process will just have another reference to the open
> socket that connects to the server. The reason why it's dangerous
> to send queries from such a process is exactly that, to the server,
> it looks like the same connection as the parent process.
>
> regards, tom lane
>

Perfect.
Thanks, Tom!

In response to

Browse pgsql-interfaces by date

  From Date Subject
Next Message Neeraj Rai 2013-05-22 01:26:08
Previous Message Tom Lane 2013-05-08 14:03:26 Re: PGconn and fork