我在我的模式约束中定义了基于一个或多个属性的给定顶点的唯一性。例如:
mgmt.buildIndex('byTenandIdUnique',Vertex.class).addKey(tenantId).unique().buildCompositeIndex()
正如现在预期的那样,当我尝试添加一个已经存在的顶点时,我收到如下错误:
aiogremlin.exception.GremlinServerError: 500: Adding this property for key [tenantId] and value [ACME2_AX2] violates a uniqueness constraint [byTenandIdUnique]
我正在编写一个 Python 应用程序来使用 Goblin OGM 加载日志文件,因此预计数据会重复,并且我不想要同一个 Vertex 的多个实例,因此存在约束。
TinkerPop 或 JanusGraph 有没有办法更新 Vertex 以防它已经存在而不是抛出这个异常?或者这是 OGM 应该处理的事情,或者可能是通过在任何事务之前查询图表来处理代码本身?