| From: | Ashutosh Bapat <ashutosh(dot)bapat(dot)oss(at)gmail(dot)com> |
|---|---|
| To: | Sami Imseih <samimseih(at)gmail(dot)com> |
| Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Fix GRAPH TABLE label and property error reporting |
| Date: | 2026-08-19 13:24:47 |
| Message-ID: | CAExHW5vCk7c9_sNggt-4eR6x84piBT3m9r-pK4oK2jpne5Gehg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Tue, Aug 18, 2026 at 9:16 PM Sami Imseih <samimseih(at)gmail(dot)com> wrote:
>
> Hi,
>
> While looking at GRAPH_TABLE parsing, I found that in
> transformGraphTablePropertyRef(), a property reference whose name does
> not exist in the property graph is reported with ERRCODE_SYNTAX_ERROR:
>
> ```
> pgptup = SearchSysCache2(PROPGRAPHPROPNAME, ...);
> if (!HeapTupleIsValid(pgptup))
> ereport(ERROR,
> errcode(ERRCODE_SYNTAX_ERROR),
> errmsg("property \"%s\" does not exist", propname));
> ```
>
> Unlike the A_Star cases just above, which are genuine syntax errors, here
> the statement parses fine but the property does not resolve. It should use
> ERRCODE_UNDEFINED_OBJECT. The unknown label check in
> transformLabelExpr() already does this, so these should be consistent.
I don't have access to SQL/PGQ standard right now, but I think this
error has been specified as a syntax error in the standard. Will
confirm once I have access to it.
>
> ERRCODE_UNDEFINED_COLUMN could also fit, but a property is an object of
> the graph, not a column of a relation, so I went with UNDEFINED_OBJECT to
> match the label check. Maybe others have a different opinion on the exact
> code, but this clearly should not be a syntax error.
>
> While at it, neither the property nor the label lookup supplied an error
> position. The attached patch adds one to both.
I think that's desirable. Will review the code soon.
--
Best Wishes,
Ashutosh Bapat
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Andres Freund | 2026-08-19 13:27:04 | Re: aio: Don't silently drop wait_event_info |
| Previous Message | Andres Freund | 2026-08-19 13:19:47 | Re: Thread-safe stringToNode() / pg_strtok() |