Re: SQL Property Graph Queries (SQL/PGQ)
Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix some typos and make small stylistic improvements
- 5282bf535e47 19 (unreleased) landed
-
Cleanup users and roles in graph_table_rls test
- 040a56be4bcc 19 (unreleased) landed
-
Dump labels in reproducible order
- c9babbc8816a 19 (unreleased) landed
-
SQL Property Graph Queries (SQL/PGQ)
- 2f094e7ac691 19 (unreleased) landed
-
Factor out constructSetOpTargetlist() from transformSetOperationTree()
- 8c2b30487cc7 19 (unreleased) landed
-
Sort out table_open vs. relation_open in rewriter
- d537f59fbbfc 19 (unreleased) landed
-
Rename grammar nonterminal to simplify reuse
- 8080f44f96a9 19 (unreleased) landed
-
Make ecpg parse.pl more robust with braces
- 7f88553ceaca 19 (unreleased) landed
-
Don't lock partitions pruned by initial pruning
- 525392d5727f 18.0 cited
-
Remove pg_regex_collation
- 792b2c7e6d92 18.0 cited
-
Use auxv to check for CRC32 instructions on ARM.
- aac831cafa6f 18.0 cited
-
Fix inappropriate uses of atol()
- f5a1311fccd2 18.0 cited
-
Remove unnecessary array object_classes[] in dependency.c
- ef5e2e90859a 17.0 cited
Attachments
- 0002-support-WHERE-clause-in-graph-pattern-20250101.patch (text/x-patch) patch 0002
- 0005-Access-permissions-on-property-graph-20250101.patch (text/x-patch) patch 0005
- 0003-Support-cyclic-path-pattern-20250101.patch (text/x-patch) patch 0003
- 0004-Fixes-following-issues-20250101.patch (text/x-patch) patch 0004
- 0001-WIP-SQL-Property-Graph-Queries-SQL-PGQ-20250101.patch (text/x-patch) patch 0001
- 0007-RLS-tests-20250101.patch (text/x-patch) patch 0007
- 0006-Property-collation-and-edge-vertex-link-sup-20250101.patch (text/x-patch) patch 0006
- 0008-Document-fixes-20250101.patch (text/x-patch) patch 0008
- 0009-WIP-Do-not-print-empty-columns-table-for-a--20250101.patch (text/x-patch) patch 0009
On Sat, Dec 21, 2024 at 6:21 PM Junwang Zhao <zhjwpku@gmail.com> wrote:
Thanks Junwang for your review.
> Here are some review opinions for 0001, I haven't seen the other
> patches, forgive me if some of the opinions have already been
> addressed.
>
> 1. In propgraph_edge_get_ref_keys, when finding a matching foreign key,
> the fk pointer will always point to last ForeignKeyCacheInfo of
> the edge relation, which is wrong. We should add another pointer
> that remembers the matched ForeignKeyCacheInfo to ref_rel. See
> attached 0001.
Nice catch. I fixed it in a slightly different way reducing overall
code by using foreach_node(). I have merged this as part of 0004 which
has fixes for several other issues. Interestingly there was a SQL that
had revealed the problem in create_property_graph.sql. But we had
accepted a wrong output. Corrected that as well.
>
> 2. Some of the TODOs seem easy to address, attached 0002 does this.
From a cursory glance those changes look useful and mostly correct. It
will be good if you can provide a SQL test for those, covering that
part of the code. Please post the whole patch-set with your changes as
a separate commit/patch.
>
> 3. Since property name and label name are unique in property graph
> scope, some of the wording are not accurate. See attached 0003.
<para>
- For each property graph element, all properties with the same name must
- have the same expression for each label. For example, this would be
+ For each property graph, all properties with the same name must
+ have the same expression. For example, this would be
Each property graph element may have a property with the same name
associated with multiple labels. But each of those properties should
have the same expression. You may see that as the same property being
defined multiple times once in each label it is associated with OR
multiple properties with the same name. Current wording uses the
latter notion, so it looks fine to me. The changes made to error
messages are not needed with this notion.
--
Best Wishes,
Ashutosh Bapat