On 1/4/16, Robert Haas <robertmhaas@gmail.com> wrote: > On Mon, Jan 4, 2016 at 10:17 AM, Pavel Stehule <pavel.stehule@gmail.com> > wrote: >> [ new patch ] > > + case '-': > + ereport(ERROR, > + (errcode(ERRCODE_INVALID_PARAMETER_VALUE), > + errmsg("size cannot be negative"))); > > Why not? I bet if you copy any - sign to the buffer, this will Just Work.
Hmm. The function's name is pg_size_bytes. How number of bytes can be negative? How any length can be negative? If anyone insert '-' sign to an argument, it is copy-paste error. I don't see any case where there is possible negatives as input value.
I prefer error message instead of getting all relations (by using comparison from the initial letter) just because of copy-paste mistake or incomplete checking of input values at app-level.
the last version of this patch support negative numbers.