Re: Report error position in partition bound check - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Report error position in partition bound check
Date
Msg-id 28553.1586441035@sss.pgh.pa.us
Whole thread Raw
In response to Re: Report error position in partition bound check  (Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>)
Responses Re: Report error position in partition bound check  (Amit Langote <amitlangote09@gmail.com>)
List pgsql-hackers
While I'm quite on board with providing useful error cursors,
the example cases in this patch don't seem all that useful:

 -- trying to create range partition with empty range
 CREATE TABLE fail_part PARTITION OF range_parted2 FOR VALUES FROM (1) TO (0);
 ERROR:  empty range bound specified for partition "fail_part"
+LINE 1: ...E fail_part PARTITION OF range_parted2 FOR VALUES FROM (1) T...
+                                                             ^
 DETAIL:  Specified lower bound (1) is greater than or equal to upper bound (0).

As best I can tell from these examples, the cursor will always
point at the FROM keyword, making it pretty unhelpful.  It seems
like in addition to getting the query string passed down, you
need to do some work on the code that's actually reporting the
error position.  I'd expect at a minimum that the pointer allows
identifying which column of a multi-column partition key is
giving trouble.  The phrasing of this particular message, for
example, suggests that it ought to point at the "1" expression.

            regards, tom lane



pgsql-hackers by date:

Previous
From: Fujii Masao
Date:
Subject: Re: Planning counters in pg_stat_statements (using pgss_store)
Next
From: Ashutosh Bapat
Date:
Subject: Re: [HACKERS] advanced partition matching algorithm forpartition-wise join