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