Batch loading -java.lang.IllegalArgumentException


"Suriya.Rajasekar" <suriya.ja...@...>
 

Hi, I have configured batch loading (storage.batch-loading=true,schema.default = none,ids.block-size=100000). While importing data, I get the following exception :

java.lang.IllegalArgumentException: Property Key with given name does not exist: createdAt
        at org.janusgraph.graphdb.types.typemaker.DisableDefaultSchemaMaker.makePropertyKey(DisableDefaultSchemaMaker.java:46)
        at org.janusgraph.core.schema.DefaultSchemaMaker.makePropertyKey(DefaultSchemaMaker.java:73)
        at org.janusgraph.graphdb.transaction.StandardJanusGraphTx.getOrCreatePropertyKey(StandardJanusGraphTx.java:936)
        at org.janusgraph.graphdb.vertices.AbstractVertex.property(AbstractVertex.java:148)
        at org.janusgraph.core.JanusGraphVertex.property(JanusGraphVertex.java:72)
        at org.janusgraph.graphdb.util.ElementHelper.attachProperties(ElementHelper.java:80)
        at org.janusgraph.graphdb.tinkerpop.JanusGraphBlueprintsTransaction.addVertex(JanusGraphBlueprintsTransaction.java:124)
        at com.fujitsu.fnc.mlpce.tetopology.impl.GraphDBService.addVertex(GraphDBService.java:398)
        at com.fujitsu.fnc.mlpce.tetopology.impl.TeTopologyImpl.createNode(TeTopologyImpl.java:408)
        at com.fujitsu.fnc.mlpce.tetopology.impl.GraphTransactionWrapper.createNode(GraphTransactionWrapper.java:30)
        at com.fujitsu.fnc.mlpce.topology.mgr.impl.metaengine.WDMMetaEngineImpl.buildGDBNodes(WDMMetaEngineImpl.java:511)
        at com.fujitsu.fnc.mlpce.topology.mgr.impl.metaengine.WDMMetaEngineImplResyncWorker.call(WDMMetaEngineImplResyncWorker.java:43)
        at com.fujitsu.fnc.mlpce.topology.mgr.impl.metaengine.WDMMetaEngineImplResyncWorker.call(WDMMetaEngineImplResyncWorker.java:18)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748).

And due to this, the total number of vertices and edges populated are lesser than it supposed to be. Why do we get this exception  only in batch loading and any suggestions to resolve?


HadoopMarc <bi...@...>
 

Hi Suriya,


schema.default=none means property keys are not automatically created in the schema. You first have to add the createdAt property to the schema or choose a different schema option.

HTH,    Marc


Op woensdag 17 juni 2020 03:38:01 UTC+2 schreef Suriya.Rajasekar:

Hi, I have configured batch loading (storage.batch-loading=true,schema.default = none,ids.block-size=100000). While importing data, I get the following exception :

java.lang.IllegalArgumentException: Property Key with given name does not exist: createdAt
        at org.janusgraph.graphdb.types.typemaker.DisableDefaultSchemaMaker.makePropertyKey(DisableDefaultSchemaMaker.java:46)
        at org.janusgraph.core.schema.DefaultSchemaMaker.makePropertyKey(DefaultSchemaMaker.java:73)
        at org.janusgraph.graphdb.transaction.StandardJanusGraphTx.getOrCreatePropertyKey(StandardJanusGraphTx.java:936)
        at org.janusgraph.graphdb.vertices.AbstractVertex.property(AbstractVertex.java:148)
        at org.janusgraph.core.JanusGraphVertex.property(JanusGraphVertex.java:72)
        at org.janusgraph.graphdb.util.ElementHelper.attachProperties(ElementHelper.java:80)
        at org.janusgraph.graphdb.tinkerpop.JanusGraphBlueprintsTransaction.addVertex(JanusGraphBlueprintsTransaction.java:124)
        at com.fujitsu.fnc.mlpce.tetopology.impl.GraphDBService.addVertex(GraphDBService.java:398)
        at com.fujitsu.fnc.mlpce.tetopology.impl.TeTopologyImpl.createNode(TeTopologyImpl.java:408)
        at com.fujitsu.fnc.mlpce.tetopology.impl.GraphTransactionWrapper.createNode(GraphTransactionWrapper.java:30)
        at com.fujitsu.fnc.mlpce.topology.mgr.impl.metaengine.WDMMetaEngineImpl.buildGDBNodes(WDMMetaEngineImpl.java:511)
        at com.fujitsu.fnc.mlpce.topology.mgr.impl.metaengine.WDMMetaEngineImplResyncWorker.call(WDMMetaEngineImplResyncWorker.java:43)
        at com.fujitsu.fnc.mlpce.topology.mgr.impl.metaengine.WDMMetaEngineImplResyncWorker.call(WDMMetaEngineImplResyncWorker.java:18)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748).

And due to this, the total number of vertices and edges populated are lesser than it supposed to be. Why do we get this exception  only in batch loading and any suggestions to resolve?


Oleksandr Porunov <alexand...@...>
 

Hi,

Notice that you cannot use automatic schema creation feature and storage.batch-loading=true.
If you enable storage.batch-loading than automatic schema creation feature disables.
So, either disable storage.batch-loading or don't use automatic schema creation (explicitly define your schema).

Best regards,
Oleksandr