"Khamneian, Mahtaj" <[EMAIL PROTECTED]> writes:

Not sure if it is relevant here (I couldn't find mention of the Perl
version in the thread), bu signal handling has changed between Perl 5.6
and 5.8. In Perl 5.6 signals are asynchronous (as in C), while in Perl
5.8 they are synchronous and only handled between Perl bytecode
instructions.

So unless DBD::Oracle does something special, I would expect in Perl 5.8
that signal handling is delayed until the XS code (such as execute) has
finished, which matches the behaviour you are seeing.

It should be possible in Perl 5.8 to switch back to the old 5.6 (unsafe)
signal handling mode for immediate signal handling (not sure of the
details).

What would be interesting is if DBD::Oracle could be extended to handle
signals explicitly to enable safe aborting of DBI operations. Not sure
what that would involve, though.

 - Kristian.

-- 
Kristian Nielsen   [EMAIL PROTECTED]
Development Manager, Sifira A/S

Reply via email to