Description
The DiskBackedPartitionStore is throwing an NPE when trying to load a partition from disk. It seems to be related to the call to ImmutableClassesGiraphConfiguration.createOutEdges() which doesn't initialize the OutEdges before it attempts to populate them via Vertex.initialize(). Simply switching to ImmutableClassesGiraphConfiguration.createAndInitializeOutEdges() seems to correct the following stack trace:
Caused by: java.lang.NullPointerException
at org.apache.giraph.edge.HashMapEdges.write(HashMapEdges.java:130)
at org.apache.giraph.utils.WritableUtils.writeVertexToDataOutput(WritableUtils.java:578)
at org.apache.giraph.utils.WritableUtils.writeVertexToByteArray(WritableUtils.java:409)
at org.apache.giraph.utils.WritableUtils.writeVertexToByteArray(WritableUtils.java:436)
at org.apache.giraph.partition.ByteArrayPartition.putVertex(ByteArrayPartition.java:92)
at org.apache.giraph.partition.DiskBackedPartitionStore.loadPartition(DiskBackedPartitionStore.java:457)
at org.apache.giraph.partition.DiskBackedPartitionStore.access$1000(DiskBackedPartitionStore.java:74)
at org.apache.giraph.partition.DiskBackedPartitionStore$GetPartition.call(DiskBackedPartitionStore.java:695)
at org.apache.giraph.partition.DiskBackedPartitionStore$GetPartition.call(DiskBackedPartitionStore.java:631)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
at java.util.concurrent.FutureTask.run(FutureTask.java:149)
at org.apache.giraph.partition.DiskBackedPartitionStore$DirectExecutorService.execute(DiskBackedPartitionStore.java:943)
at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:103)