On Friday, February 24, 2017, Tom Lane <t...@sss.pgh.pa.us> wrote:

> Justin Pryzby <pry...@telsasoft.com <javascript:;>> writes:
> > Is this expected behavior ?
> >       ts=# SELECT x'00000000F'::int;
> >       ERROR:  22003: integer out of range
> >       LOCATION:  bittoint4, varbit.c:1575
>
> Yes.  The provided operation is "convert a bitstring of up to 32 bits
> to an integer".  It's not "guess whether it's okay to throw away some
> bits to make an integer".
>
>
IME The error message itself is to blame here - we are checking for a
malformed (too many characters) integer varbit representation but then
reporting that the we somehow got a valid integer but that it is "out of
range".

David J.

Reply via email to