View Single Post

   
  #8 (permalink)  
Old 05-10-2008, 03:05 PM
Bruce Momjian
 
Posts: n/a
Default Re: pgsql: Have numeric 0 ^ 4.3 return 1, ratherthan an error, and have 0 ^

Tom Lane wrote:
> Simon Riggs <simon@2ndquadrant.com> writes:
> > Wikipedia says that exponentiation of zero to a negative power implies
> > division by zero, so shouldn't we throw a "division by zero" error?

>
> I think it should be a specific message like "zero raised to a negative
> power is undefined". It's not like it's going to take us any extra code
> to know that we are faced with that case.
>
> BTW, I realized that SQL:2003 spells it all out for us in explicit
> detail:


....

> b) If VB is 0 (zero) and VE is negative, then an exception condition is
> raised: data exception Ñ invalid argument for power function.


Well, this indicates we shouldn't return "zero raised to a negative
power is undefined", but rather the power error we are giving now, or
are you saying we should return the "power" error code but an error
message mentioning zero?

> c) If VB is 0 (zero) and VE is 0 (zero), then the result is 1 (one).


I have updated the C comments to mention the spec also requires we
return 1 in this case.

C comment updated attached and applied.

--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +


--
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers

Reply With Quote