develooper Front page | perl.dbi.users | Postings from March 2005

hang with mysql in execute

Thread Next
From:
Chris Masters
Date:
March 19, 2005 09:37
Subject:
hang with mysql in execute
Message ID:
20050319173705.15634.qmail@web50509.mail.yahoo.com
Hi All,

A firewall is terminating my connection with a mysql
database after a period of inactivity. I've used the
following code (with ref to cpan docs and connect) and
it still causes a hang.

###################################################

my $result = 0;
my $alarm = 0;
eval
{
    #set alarm to timeout query hangs
    my $h = Sys::SigAction::set_sig_handler( 'ALRM'
,sub { $alarm = 1; } );
    alarm(2);

    my $sth = $dbh->prepare("SELECT 1");
    $sth->execute();
    $result = 1;

    alarm(0);
};

alarm(0);

if($@ || $alarm)
{
    syslog('err',"execute error: $@");
    $result = 0;
}

return $result;

###############################################

Am I using alarms wrongly with perl?

Would it be better to use a select(2) wrapper?

Any other ideas to prevent this hang?

Thanks for any help on this.

Chris

redhat 8.0
perl-5.8.0-88.3
perl-DBI-1.30-1
perl-DBD-MySQL-2.1017-3


		
__________________________________ 
Do you Yahoo!? 
Yahoo! Small Business - Try our new resources site!
http://smallbusiness.yahoo.com/resources/ 

Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About