我在OrientDB中看到了这个有趣的行为。
架构定义在这里。我希望“id”字段作为序列自动生成。如果我一次只生成一个顶点,它工作正常,但如果我有生成其中多个顶点的代码,它会中断。我写了两个测试用例来重现这种行为。
CREATE CLASS BV EXTENDS V;
CREATE PROPERTY BV.createdDate DATETIME (MANDATORY TRUE, default
sysdate("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"));
CREATE PROPERTY BV.updatedDate DATETIME (MANDATORY FALSE);
CREATE CLASS User EXTENDS BV;
CREATE SEQUENCE userIdSequence TYPE ORDERED;
CREATE PROPERTY User.id LONG (MANDATORY TRUE, default
"sequence('userIdSequence').next()");
CREATE PROPERTY User.name STRING (MANDATORY TRUE, MIN 4, MAX 50);
第一次测试,虽然通过(因为没有添加断言),但会生成具有相同id的所有顶点(这是错误的)。
我认为代码应该正常工作,但看起来它不起作用。
答案 0 :(得分:1)
使用3.0版本的最新快照在orientDB中解决此错误。它工作正常。 在这里更新票证,以便其他遇到此jira票的人注意到这一点。