Hi 2016-02-15 10:16 GMT+01:00 Dean Rasheed <dean.a.rash...@gmail.com>:
> > On 12/02/16 10:19, Dean Rasheed wrote: > >> This seems like a reasonable first patch for me as a committer, so > >> I'll take it unless anyone else was planning to do so. > > > > So looking at this, it seems that for the most part pg_size_bytes() > will parse any output produced by pg_size_pretty(). The exception is > that there are 2 versions of pg_size_pretty(), one that takes bigint > and one that takes numeric, whereas pg_size_bytes() returns bigint, so > it can't handle all inputs. Is there any reason not to make > pg_size_bytes() return numeric? > It would still be compatible with the example use cases, but it would > be a better inverse of both variants of pg_size_pretty() and would be > more future-proof. It already works internally using numeric, so it's > a trivial change to make now, but impossible to change in the future > without introducing a new function with a different name, which is > messy. > > Thoughts? > This is a question. I have not a strong opinion about it. There are no any technical objection - the result will be +/- same. But you will enforce Numeric into outer expression evaluation. The result will not be used together with function pg_size_pretty, but much more with functions pg_relation_size, pg_relation_size, .. and these functions doesn't return Numeric. These functions returns bigint. Bigint is much more natural type for this purpose. Is there any use case for Numeric? Regards Pavel > > Regards, > Dean >