| From: | Ashutosh Bapat <ashutosh(dot)bapat(dot)oss(at)gmail(dot)com> |
|---|---|
| To: | assam258(at)gmail(dot)com |
| Cc: | Peter Eisentraut <peter(at)eisentraut(dot)org>, Amit Langote <amitlangote09(at)gmail(dot)com>, Junwang Zhao <zhjwpku(at)gmail(dot)com>, Vik Fearing <vik(at)postgresfriends(dot)org>, Ajay Pal <ajay(dot)pal(dot)k(at)gmail(dot)com>, Imran Zaheer <imran(dot)zhir(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: SQL Property Graph Queries (SQL/PGQ) |
| Date: | 2025-12-30 09:50:09 |
| Message-ID: | CAExHW5t_-x03CEzN+DeUhBt6Ur9j-_NENqPGj2zFzPMP7D_X7A@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi Henson,
Thanks a lot for your interest in SQL/PGQ patches. Your expertise will
certainly help.
On Fri, Dec 26, 2025 at 6:03 PM Henson Choi <assam258(at)gmail(dot)com> wrote:
>
> Following up on my Dec 24 email - three features completed:
>
> 1. LABELS() function
> - Returns text[] of element labels
> - Fixed privilege checking from previous version
> - Enables optimizer pushdown for branch pruning
>
> 2. PROPERTY_NAMES() function
> - Returns text[] of property names
> - Similar approach to LABELS()
>
I could not find specification of these functions in SQL/PGQ standard.
It's a large document and I might be missing something. Can you please
point me to the relevant sections?
> 3. Multiple path patterns
> - Syntax: MATCH (a)->(b), (b)->(c)
> - Implements SQL/PGQ standard feature (was TODO)
>
This path pattern list feature is discussed in section 10.4 of the
standard. I think supporting this feature would be a good addition to
SQL/PGQ compliance. The current patchset is already large. I (and
AFAIK Peter as well) am focusing on getting that patchset in a
committable shape. Once committed, it will facilitate adding features
like path pattern list, quantified path patterns, label conjunction
etc. as incremental relatively smaller commits.
Since you could build one of the complex features without changing a
lot of earlier implementation, it validates that the basic
implementation is extensible and yet robust. Thanks for that
validation.
The way you have implemented it, it can lead to a path pattern with
two vertex patterns next to each other without an interleaving edge
pattern. That would throw an error or assertion. If you try path
patterns without a common vertex, you will get that error. That is not
covered by your tests. In such cases, the paths should end up being
full-joined rather than concatenated. I don't see it being implemented
that way. I think more work is needed here.
--
Best Wishes,
Ashutosh Bapat
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Yugo Nagata | 2025-12-30 10:01:45 | Fix comments on _bt_skiparray_strat_increment/decrement |
| Previous Message | Ashutosh Bapat | 2025-12-30 09:44:02 | Re: SQL Property Graph Queries (SQL/PGQ) |