On 02/11/10 18:49, Brian Phillips wrote:
> Hello - I recently discovered that when we do a DBI->connect to an Oracle
> database, the process no longer responds to SIGINT signals.

I simply do not see this effect. The following program:

  #!/usr/local/bin/perl -w
  use DBI;
  my $dbh = DBI->connect("dbi:Oracle:", oralogin) or die "Failed\n";
  $| = 1;
  sleep 1, print('.') while 1;

prints dots every second until I press ^C, at which point it terminates.
This variant:

  #!/usr/local/bin/perl -w
  use DBI;
  $SIG{INT} = sub { die "Interrupted\n" };
  my $dbh = DBI->connect("dbi:Oracle:", oralogin) or die "Failed\n";
  $| = 1;
  sleep 1, print('.') while 1;

writes "Interrupted\n" when I press ^C.

There must be something different about your environment. For reference, I
have Oracle 10.2.0.4.6, Perl 5.10.1, DBI 1.609, DBD::Oracle 1.24. The
OS is SLES 10 SP 3. It makes no difference whether I use the bequeather
or a TNS connection.

-- 
Charles Jardine - Computing Service, University of Cambridge
c...@cam.ac.uk    Tel: +44 1223 334506, Fax: +44 1223 334679

Reply via email to