Thanks for the review! On Mon, Aug 31, 2026 at 4:38 PM Chao Li <[email protected]> wrote: > > > > > On Aug 31, 2026, at 15:32, Ewan Young <[email protected]> wrote: > > > > Hi > > > > The WHERE clauses inside a GRAPH_TABLE pattern -- both the element-level > > one (MATCH (c IS customers WHERE ...)) and the graph-pattern-level one > > (MATCH ... WHERE ...) -- are transformed with a bare transformExpr() > > and never go through coerce_to_boolean(). So a WHERE clause of any > > type is accepted, and its raw datum is used as the qual: > > > > create table customers (id int primary key, name text); > > insert into customers values (1,'alice'),(2,null),(3,'carol'); > > create property graph g > > vertex tables (customers key (id) label customer properties (id, > > name)); > > > > select * from graph_table (g match (c is customer where c.name) > > columns (c.id)); > > id > > ---- > > 1 > > 3 > > (2 rows) > > > > EXPLAIN shows "Filter: name". The never-null text pointer is always > > taken as true, so the condition silently degenerates to roughly > > "name IS NOT NULL": the NULL-name row disappears with no error. > > Numeric quals are evaluated by bit pattern ("WHERE 1" is true, > > "WHERE 0" is false), and even "WHERE row(1,2)" is accepted. The same > > clause outside GRAPH_TABLE gives the usual > > > > ERROR: argument of WHERE must be type boolean, not type text > > > > The attached patch routes both sites through transformWhereClause(), > > like every other WHERE clause, and adds regression tests for the > > element-level and pattern-level cases. make check passes. The code is > > the same in REL_19_STABLE, so v19 is affected as well. > > > > -- > > Regards, > > Ewan Young > > <v1-0001-Coerce-GRAPH_TABLE-pattern-WHERE-clauses-to-boolean.patch> > > The patch looks good to me. As this is a v19 bug, it might be worth noting in > the Open Items list.
Agreed -- I don't have wiki edit access though; could someone add it under "Open Issues"? > > Best regards, > -- > Chao Li (Evan) > HighGo Software Co., Ltd. > https://www.highgo.com/ > > > > -- Regards, Ewan Young
