On Wed, Nov 03, 2010 at 10:29:18PM +0100, Jens Rehsack wrote:
> 2010/11/3 Martin J. Evans <martin.ev...@easysoft.com>:
> [...]
> > From time to time something similar to Brian's post turns up on this list 
> > although it is usually something to do with pipes not working as you expect.
> >
> > I have to say I would be strongly against returning all signals to
> > their original state after a connect call. I know for a fact that
> > some oracle clients (depending on how you connect to Oracle) install
> > a SIGCHLD handler for instance. Who is to say what operations in the
> > Oracle client library might be rendered useless if we destroy any
> > signal handlers it has set up.
>
> There is an entry in Oracle Knowledge Base about this. I had trouble
> with this in a project around a year ago - and under specific
> circumstances it's safe to restore the handlers and in others you
> should chain them (when you need them, too).
> 
> Search for SIGCHLD in the knowledge base (I didn't took the URI with
> me when I left the contractor).

The topic has also come up on the dbi mailing lists several times over
the years. Both for SIGCHLD and SIGINT.

> > Is it really worth changing DBD::Oracle for what effectively is a one liner?
> 
> No, because it's not safe for each Oracle configuration. It must keep up to 
> the
> developer to figure out when it's safe.

I think we should try to fix/workaround at least the SIGINT issue.
The default behaviour should be to act in the most reasonable/useful way.
An option could be provided to restore the current unreasonable way.

Tim.

Reply via email to