Re: Beta 10 parser error for CREATE STATISTICS IF NOT EXISTS

Amit Langote <langote_amit_f8@lab.ntt.co.jp>

From: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>
To: Bruno Wolff III <bruno@wolff.to>, pgsql-bugs@postgresql.org
Date: 2017-06-21T01:15:28Z
Lists: pgsql-bugs, pgsql-hackers
On 2017/06/21 9:42, Bruno Wolff III wrote:
> I'm not seeing an obvious error in my attempt to use CREATE STATISTICS IF
> NOT EXISTS. Given this is new, maybe there is a bug in the parser.
> 
> Sample output:
> psql (10beta1)
> Type "help" for help.
> 
> o365logs=# select version();
>                                                 
> version                                                 
> --------------------------------------------------------------------------------
> 
> ----------------------------
> PostgreSQL 10beta1 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5
> 20150623
> (Red Hat 4.8.5-11), 64-bit
> (1 row)
> 
> o365logs=# CREATE STATISTICS IF NOT EXISTS logs_corrtest (dependencies) ON
> record_type, operation FROM logs;
> ERROR:  syntax error at or near "NOT"
> LINE 1: CREATE STATISTICS IF NOT EXISTS logs_corrtest (dependencies)...

Looks like a documentation bug if the authors of the feature actually
meant to implement the following syntax:

  CREATE [ IF NOT EXISTS ] STATISTICS

create if not exists statistics words_stats on a, b from words;
CREATE STATISTICS

create if not exists statistics words_stats on a, b from words;
NOTICE:  statistics object "words_stats" already exists, skipping
CREATE STATISTICS

If that's really what's intended, it seems a bit inconsistent with most
other commands and with DROP STATISTICS [ IF NOT EXISTS ] itself.

Thanks,
Amit



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Fix IF NOT EXISTS in CREATE STATISTICS