| From: | Doug McNaught <doug(at)wireboard(dot)com> |
|---|---|
| To: | Michael Meskes <meskes(at)postgresql(dot)org> |
| Cc: | PostgreSQL Hacker <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: fork() while connected |
| Date: | 2002-01-06 14:24:21 |
| Message-ID: | m3zo3rd0bu.fsf@varsoon.denali.to |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Michael Meskes <meskes(at)postgresql(dot)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
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bruce Momjian | 2002-01-06 18:01:41 | Re: pgbench -i spends all its time doing CHECKPOINT |
| Previous Message | Michael Meskes | 2002-01-06 12:09:49 | fork() while connected |