Apache AGE - Postgres在遍历所有子oid时崩溃



我编写了这段代码,以便在名为load_edge_hashtable的函数中获取Apache AGE文件中名为age_global_graph.c的所有儿童oid

child_edges_oid = find_inheritance_children(edge_label_table_oid, NoLock);

//loop through all the child edges
ListCell *lc1;
foreach (lc1, child_edges_oid)
{
Oid child_edge_oid = lfirst_oid(lc1);

}

这里child_edges_oid获取所有子oid,在for循环中,我试图获取每个子oid。但是当我运行这个时,我的postgres崩溃了。

我想要的是我应该能够得到所有子元素的oid

检查find_inheritance_children()函数是否返回有效列表。此函数可能返回NULL或无效数据,当您尝试遍历它时可能会导致崩溃。

您将'NoLock'参数传递给find_inheritance_children。如果多个事务并发访问数据,可能会导致并发性问题。请尝试更改锁以确保数据一致性。

最新更新