Search Postgresql Archives

Re: Perl script is killed by SIGPIPE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Sep 13, 2017 at 11:04 AM, Yogesh Sharma <yogeshraj95@xxxxxxxxx> wrote:
> Dear Daniel,
> Yes , we are using DBI for connection.
>
> Basically we observed that after dbh->do() return nothing if we are trying
> to insert duplicate entry.
> But it is not occurred always.
> It return exit 1 if try to insert duplicate entry into Db.
> But sometime it return nothing and child script is killed.
>
> On Tuesday, September 12, 2017, Daniel Verite <daniel@xxxxxxxxxxxxxxxx>
> wrote:
>>
>>         Yogesh Sharma wrote:
>>
>> > We have found child script is killed by signal 13 SIGPIPE. When
>> > duplicate
>> > key violates error occured, script is killed but not all time.
>>
>> "child script" and this kind of error suggests that a forked process
>> inherits a database connection opened by a parent process.
>>
>> When the database handle goes out of scope, it might
>> close the connection to the database, affecting the
>> parent process too, since it's the same connection.
>>
>> If you're using DBI, it has a setting to avoid that issue:
>> https://metacpan.org/pod/DBI#InactiveDestroy
>>
>> Aside from that, inherited connections can't be used
>> simultaneously by parent and child process.
>> In general, a child process should open and close
>> its own connection.
>>
>> Best regards,
>> --
>> Daniel Vérité
>> PostgreSQL-powered mailer: http://www.manitou-mail.org
>> Twitter: @DanielVerite


Yes, running your code under try-catch might help you in diagnosing the issue.
Example:

#------
use TryCatch;

try
  {
      $rs_foo->insert($href_zoo);
  }
    catch($error)
    {
     print "Error: $error \n";
    };

#------

-- 
Regards,

Tirveni Yadav
www.udyansh.org
www.bael.io

What is this Universe ? From what it arises ? Into what does it go?
In freedom it arises, In freedom it rests and into freedom it melts away.
Upanishads.


-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux