diff --git a/src/backend/catalog/dependency.c b/src/backend/catalog/dependency.c
index fdb8e67e1f5..6a73b74fc9b 100644
--- a/src/backend/catalog/dependency.c
+++ b/src/backend/catalog/dependency.c
@@ -2247,6 +2247,22 @@ find_expr_references_walker(Node *node,
                                                           context->addrs);
                /* fall through to examine substructure */
        }
+       if (IsA(node, GraphLabelRef))
+       {
+               GraphLabelRef *lref = (GraphLabelRef *) node;
+
+               add_object_address(PropgraphLabelRelationId, lref->labelid, 0,
+                                                  context->addrs);
+               return false;
+       }
+       if (IsA(node, GraphPropertyRef))
+       {
+               GraphPropertyRef *gpr = (GraphPropertyRef *) node;
+
+               add_object_address(PropgraphPropertyRelationId, gpr->propid, 0,
+                                                  context->addrs);
+               return false;
+       }
        else if (IsA(node, Query))
        {
                /* Recurse into RTE subquery or not-yet-planned sublink subquery */
@@ -2277,9 +2293,31 @@ find_expr_references_walker(Node *node,
                        switch (rte->rtekind)
                        {
                                case RTE_RELATION:
+                                       add_object_address(RelationRelationId, rte->relid, 0,
+                                                                          context->addrs);
+                                       break;
                                case RTE_GRAPH_TABLE:
                                        add_object_address(RelationRelationId, rte->relid, 0,
                                                                           context->addrs);
+
+                                       if (rte->graph_pattern)
+                                       {
+                                               GraphPattern *gp = rte->graph_pattern;
+                                               ListCell   *lc1;
+
+                                               foreach(lc1, gp->path_pattern_list)
+                                               {
+                                                       List       *path_term = lfirst_node(List, lc1);
+                                                       ListCell   *lc2;
+
+                                                       foreach(lc2, path_term)
+                                                       {
+                                                               GraphElementPattern *gep = lfirst_node(GraphElementPattern, lc2);
+
+                                                               find_expr_references_walker(gep->labelexpr, context);
+                                                       }
+                                               }
+                                       }
                                        break;
                                case RTE_JOIN:

