Thread: Re: [BUGS] bug in windows xp

Re: [BUGS] bug in windows xp

From
Martijn van Oosterhout
Date:
[Re: Uncaught exception when dividing integers]

On Tue, Apr 18, 2006 at 10:50:24PM -0400, Bruce Momjian wrote:
>
> Is anyone working on this?

Not that I know of. However, the first step is to add this regression
test for SIGFPE [-patches CCed]. Note that this will probably redline
windows on the buildfarm. Once this has been added and all
architechures are in compliance, we can deal with the integer overflow
problem.

Triggering a SIGFPE is a bit tricky. On my i386 system the integer
divide will do it, but the rest just return +inf. Given there are
systems that don't SIGFPE the integer divide, I hope one of the others
will trigger... For UNIX systems I've made it try kill() first, that
seems the most reliable.

Have a nice day,
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> From each according to his ability. To each according to his ability to litigate.

Attachment

Re: [BUGS] bug in windows xp

From
Tom Lane
Date:
Martijn van Oosterhout <kleptog@svana.org> writes:
> Not that I know of. However, the first step is to add this regression
> test for SIGFPE [-patches CCed].

This seems completely pointless.  The question is not about whether the
SIGFPE catcher works when fired, it's about what conditions trigger it.

            regards, tom lane

Re: [BUGS] bug in windows xp

From
Martijn van Oosterhout
Date:
On Wed, Apr 19, 2006 at 10:15:54AM -0400, Tom Lane wrote:
> Martijn van Oosterhout <kleptog@svana.org> writes:
> > Not that I know of. However, the first step is to add this regression
> > test for SIGFPE [-patches CCed].
>
> This seems completely pointless.  The question is not about whether the
> SIGFPE catcher works when fired, it's about what conditions trigger it.

Well, depends how you look at it. The original bug report was about a
backend crash, which is what happens if you don't catch the SIGFPE. Can
we guarentee that we know every situation that might generate a SIGFPE?

Besides, isn't this what you were referring to here:

http://archives.postgresql.org/pgsql-bugs/2006-04/msg00091.php

Otherwise we should just fix int4div.
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> From each according to his ability. To each according to his ability to litigate.

Attachment

Re: [BUGS] bug in windows xp

From
Tom Lane
Date:
Martijn van Oosterhout <kleptog@svana.org> writes:
> Well, depends how you look at it. The original bug report was about a
> backend crash, which is what happens if you don't catch the SIGFPE. Can
> we guarentee that we know every situation that might generate a SIGFPE?

The point here is that under Windows int4div seems to be generating
something other than a SIGFPE --- if it were actually generating that
particular signal then the existing SIGFPE catcher would catch it.

It's barely possible that int4div *is* generating a SIGFPE and there's
some other breakage preventing FloatExceptionHandler from catching it,
but that's a question that deserves a one-shot test, not permanent
memorialization in a regression test.  Besides, if that's the situation
then testing that the handler catches kill(SIGFPE) proves exactly zero
about what the int4div problem is.

            regards, tom lane