| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Chris Withers <chris(at)simplistix(dot)co(dot)uk> |
| Cc: | Postgres General <pgsql-general(at)postgresql(dot)org> |
| Subject: | Re: connection file descriptors created with identical number after process fork on mac |
| Date: | 2016-08-03 23:20:00 |
| Message-ID: | 24744.1470266400@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Chris Withers <chris(at)simplistix(dot)co(dot)uk> writes:
> I'm writing some multi-process code in Python and trying to make sure I
> open a new connection for each process. Here's the really cut down code:
> ...
> What's really surpising to me is the output on a mac:
> $ python psycopg2_multiprocess.py
> 44276 child fd: 13
> 44277 child fd: 13
> 44278 child fd: 13
> 44279 child fd: 13
> The getpid() output indicates that the connec() call is being made
> inside a different process each time, yet the connection appears to
> still be using the same fd.
FD numbers are process-local in all flavors of Unix. The above only
proves that all of these processes had FDs 0..12 open already, which
doesn't seem terribly surprising.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Chris Withers | 2016-08-03 23:25:09 | Re: connection file descriptors created with identical number after process fork on mac |
| Previous Message | Chris Withers | 2016-08-03 22:48:52 | connection file descriptors created with identical number after process fork on mac |