JanusGraph/janusgraph

An ambiguous error message【Vertex with given id already exists:xxx】

Open

#3.013 geöffnet am 17. Apr. 2022

Auf GitHub ansehen
 (1 Kommentar) (0 Reaktionen) (0 zugewiesene Personen)Java (1.137 Forks)batch import
area/docsgood first issue

Repository-Metriken

Stars
 (4.985 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 3T 18h) (12 gemergte PRs in 30 T)

Beschreibung

  • Version: 0.6.1

  • Storage Backend: cql

    When I insert this data repeatedly, it prompts me: Vertex with given id already exists: 256, actually myID is 1, I think this hint is ambiguous, and it interferes with debugging by myID

    long vertexId = ((StandardJanusGraph) graph).getIDManager().toVertexId(1L);
    g.addV().property(T.id, vertexId).next();
    g.tx().commit();

... at org.janusgraph.graphdb.transaction.StandardJanusGraphTx.addVertex(StandardJanusGraphTx.java:584) ...

Line 582 tells you that the vertexId belongs to NormalVertex, and if it can be converted to myID instead of vertexId when prompted by line 584

582  Preconditions.checkArgument(vertexId == null || IDManager.VertexIDType.NormalVertex.is(vertexId), "Not a valid vertex id: %s", vertexId);
583  Preconditions.checkArgument(vertexId == null || ((InternalVertexLabel)label).hasDefaultConfiguration(), "Cannot only use default vertex labels: %s",label);
584  Preconditions.checkArgument(vertexId == null || !config.hasVerifyExternalVertexExistence() || !containsVertex(vertexId), "Vertex with given id already exists: %s", vertexId);

Thanks to the development team for their contribution!

Contributor Guide