]> granicus.if.org Git - postgresql/commit
Restore SIGFPE handler after initializing PL/Perl.
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 5 Sep 2012 20:43:48 +0000 (16:43 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 5 Sep 2012 20:43:48 +0000 (16:43 -0400)
commita05fa36ccf0dc7d6846564096d05b7c9bb86df45
tree7c5d5f6e6c2a86be8b4d3e4b51cf5820e9892397
parente62ad18663f0fcc37f9b4628bd244398b61aee67
Restore SIGFPE handler after initializing PL/Perl.

Perl, for some unaccountable reason, believes it's a good idea to reset
SIGFPE handling to SIG_IGN.  Which wouldn't be a good idea even if it
worked; but on some platforms (Linux at least) it doesn't work at all,
instead resulting in forced process termination if the signal occurs.
Given the lack of other complaints, it seems safe to assume that Perl
never actually provokes SIGFPE and so there is no value in the setting
anyway.  Hence, reset it to our normal handler after initializing Perl.

Report, analysis and patch by Andres Freund.
src/pl/plperl/plperl.c