On Thu, Apr 23, 2026 at 12:23 PM SATYANARAYANA NARLAPURAM <satyanarlapuram@gmail.com> wrote: > > Hi hackers, > > When a table column is referenced by a property graph, the property > name stored in pg_propgraph_property.pgpname would become stale after > a column rename. This caused GRAPH_TABLE queries to fail with the new > column name ("property does not exist") while the old (dead) name > continued to work. pg_get_propgraphdef() would also emit confusing > output like "new_col AS old_col".
This behaviour is inline with the behaviour of view.
#create view vt as select a from t1; CREATE VIEW #\d+ vt View "public.vt" Column | Type | Collation | Nullable | Default | Storage | Description --------+---------+-----------+----------+---------+---------+------------- a | integer | | | | plain | View definition: SELECT a FROM t1;
#alter table t1 rename column a TO aa; ALTER TABLE #\d+ vt View "public.vt" Column | Type | Collation | Nullable | Default | Storage | Description --------+---------+-----------+----------+---------+---------+------------- a | integer | | | | plain | View definition: SELECT aa AS a FROM t1;
Name of the property is derived from the name of the column it references if the property name is not specified at the time of creating the property. But these two are different. Changing column name can not be expected to change the property name automatically. If two elements have the same label, the set of property names associated with that label is expected to be the same for those two elements as well.
Ashutosh, should we document this or it is a well known fact and not needed? Asking in the context of Graphs, not views.