Re: division by zero - Mailing list pgsql-general

From Tom Lane
Subject Re: division by zero
Date
Msg-id 7695.1047147543@sss.pgh.pa.us
Whole thread Raw
In response to Re: division by zero  (Eric B.Ridge <ebr@tcdi.com>)
Responses Re: division by zero  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
List pgsql-general
"Eric B. Ridge" <ebr@tcdi.com> writes:
> select 1/0; fails as expected on my x86 Linux box, so yer right, it's
> just my little Mac.  "I switched because Mac's can divide by zero."

I checked into this, and indeed OS X 10.2 is behaving funny: integer
divide by zero doesn't raise any signal, it just returns a bogus answer.
They're within their rights to do so according to the ANSI C spec
(wherein division by zero is stated to have undefined behavior).
But since other BSD-derived Unixen all seem to raise SIGFPE, I can't
help wondering if this shouldn't be considered a bug.

I think we have three possible responses:

1. Put explicit tests for zero into the integer division SQL function
routines.

2. Consider this Apple's problem and file a bug report.

3. Both.

I don't care for answer #1 alone, because it would only catch zero
divides in the specific places we put in tests; internal errors would
likely go uncaught.  So I think a complaint to Apple is in order.
I'm not sure whether to also put in zero-divide guards.  Comments?

            regards, tom lane

pgsql-general by date:

Previous
From: "Raymond O'Donnell"
Date:
Subject: Re: Problems with pg_dump
Next
From: Bruce Momjian
Date:
Subject: Re: My contract has been renewed