Re: BUG #15459: no connection to the server - Mailing list pgsql-bugs

From Jeff Janes
Subject Re: BUG #15459: no connection to the server
Date
Msg-id CAMkU=1xLOjz=aM_YSANNhyzU2B04PrKzp0Z0dcUJe=8AHavhEg@mail.gmail.com
Whole thread Raw
In response to BUG #15459: no connection to the server  (PG Bug reporting form <noreply@postgresql.org>)
List pgsql-bugs
On Fri, Oct 26, 2018 at 1:34 AM PG Bug reporting form <noreply@postgresql.org> wrote:
The following bug has been logged on the website:

Bug reference:      15459
Logged by:          medivhJay
Email address:      jay.medivh@gmail.com
PostgreSQL version: 9.6.8
Operating system:   debian
Description:       

Hello

I used php7.1 + PDO connect to postgresql

when I use fork , like this

<?php
$pid = pcntl_fork();
            if ( $pid === 1 ) {
                TaskManager::log('error');
            } elseif ( $pid ) {
                pcntl_wait($status);
            } else {
                try {
                    call_user_func_array($func, $argv);
                } catch ( \Exception $e ) {
                    TaskManager::log($e);
                }
                exit(0);
            }


PDO throw an exception

You shouldn't have a database handle open over a fork call.  Open it after the fork.  I have no idea how to do that, since it seems to be happening implicitly, or at least in part of your code not shown.  You might want to ask in a forum specific to php PDO.  Also, shouldn't you be testing $pid against -1, not +1?

Cheers,

Jeff

pgsql-bugs by date:

Previous
From: hubert depesz lubaczewski
Date:
Subject: Re: BUG #15462: WITH ORDINALITY and CTEs don't work
Next
From: Dmitry Molotkov
Date:
Subject: Re: BUG #15446: Crash on ALTER TABLE