http://qs321.pair.com?node_id=755641

manoj_speed has asked for the wisdom of the Perl Monks concerning the following question:

I executed the following code.
use strict; use warnings; use DBI; my $DSN = 'dbi:Pg:dbname=manojkumar'; my $username = 'manojkumar'; my $password = 'manojkumar'; my $TABLE_NAME = "fork_log"; my $DBH = DBI->connect($DSN,$username,$password); if(fork()==0) { my $result = "insert into $TABLE_NAME(method) values('Child Su +ccess');"; if($DBH->do("$result")) { my $result = "insert into query_log(message) values('Q +uery success in fork child.');"; } else { my $result = "insert into query_log(message) values('Q +uery failed in fork child.');"; } exit; } wait(); my $result = "insert into $TABLE_NAME(method) values('Parent Success') +;"; my $STH = $DBH->do("$result");

In the above code, child process inserting values into the fork_log table and it is working fine. But in the parent the query is not executing and printing the following error.

DBD::Pg::db do failed: server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request.

Why it is printing the above error and how can I solve this?