Re: BUG #15836: Casting 'of' to boolean type should throw an invalid input syntax

David G. Johnston <david.g.johnston@gmail.com>

From: "David G. Johnston" <david.g.johnston@gmail.com>
To: wgyumg@gmail.com, pgsql-bugs@lists.postgresql.org
Date: 2019-06-05T21:49:47Z
Lists: pgsql-bugs
On Wed, Jun 5, 2019 at 2:37 PM PG Bug reporting form <noreply@postgresql.org>
wrote:

> The following bug has been logged on the website:
>
> Bug reference:      15836
> Logged by:          Yuming Wang
> Email address:      wgyumg@gmail.com
> PostgreSQL version: 12beta1
> Operating system:   linux
> Description:
>
> Converting 'of' to a boolean type should throw an invalid input syntax.
> Because we said in the documentation that 'of' is not accepted as an input
> to the boolean data type:
> https://www.postgresql.org/docs/12/datatype-boolean.html
> ```
> postgres=# select cast('of' as boolean);
>  bool
> ------
>  f
> (1 row)
> ```
>

At this point raising a syntax error is undesirable, but the documentation
should be modified to match the source code, which does say:

src/utils/adt/bool.c
 * Try to interpret value as boolean value.  Valid values are: true,
 * false, yes, no, on, off, 1, 0; as well as unique prefixes thereof.

The unique prefix part needs to make it to user-facing documentation.

David J.

Commits

  1. Doc: improve description of allowed spellings for Boolean input.