Re: fork() while connected - Mailing list pgsql-hackers

From Doug McNaught
Subject Re: fork() while connected
Date
Msg-id m3zo3rd0bu.fsf@varsoon.denali.to
Whole thread Raw
In response to fork() while connected  (Michael Meskes <meskes@postgresql.org>)
Responses Re: fork() while connected  (Michael Meskes <meskes@postgresql.org>)
List pgsql-hackers
Michael Meskes <meskes@postgresql.org> writes:

> I was just asked if there are problems if a program forks() while connected
> to the backend. Of course both processes will try to access the DB after the
> fork. Is this possible at all? If so does it create timing problems? Or
> others? I think I never tried.

This will definitely not work.  The two processes will stomp all over
each other.  They'll be sharing one socket and one backend and both
writing/reading from the socket at random times.

You can open a second connection in the child (don't close the first
one there, or it'll mess up the parent).  It's probably best to try to
avoid fork()ing with an open connection altogether.

-Doug
-- 
Let us cross over the river, and rest under the shade of the trees.  --T. J. Jackson, 1863


pgsql-hackers by date:

Previous
From: Ashley Cambrell
Date:
Subject: Re: LWLock contention: I think I understand the problem
Next
From: Bruce Momjian
Date:
Subject: Re: pgbench -i spends all its time doing CHECKPOINT