Re: Negative LIMIT and OFFSET?
Simon Riggs <simon@2ndquadrant.com>
From: Simon Riggs <simon@2ndquadrant.com>
To: Neil Conway <neilc@samurai.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Andrew Sullivan <ajs@crankycanuck.ca>, pgsql-hackers@postgresql.org
Date: 2007-12-14T14:41:49Z
Lists: pgsql-hackers
Attachments
- error_if_negative.v1.patch (text/x-patch) patch v1
On Thu, 2007-12-13 at 22:23 -0800, Neil Conway wrote: > On Thu, 2007-12-13 at 22:06 -0500, Tom Lane wrote: > > I guess that on purely philosophical grounds, it's not an unreasonable > > behavior. For example, "LIMIT n" means "output at most n tuples", > > not "output exactly n tuples". So when it outputs no tuples in the face > > of a negative limit, it's meeting its spec. > > If "LIMIT n" means "emit at most n tuples", then a query that produces 0 > rows with n < 0 is arguably violating its spec, since it has produced > more tuples than the LIMIT specified (0 > n). Interpreted this way, no > result set can be consistent with a negative limit, so I'd vote for > throwing an error. I even found an existing, unused error message called ERRCODE_INVALID_LIMIT_VALUE so here's a patch. -- Simon Riggs 2ndQuadrant http://www.2ndQuadrant.com