From ad81ca595450d52a4bbaa0af7a655cbf3bc7d8fc Mon Sep 17 00:00:00 2001 From: liningrui Date: Mon, 17 May 2021 19:48:36 +0800 Subject: [PATCH] Fix npe because missing edge mapping struct Change-Id: I79e0c2a2d3e232cd2a5adb945214cbe3cbfe3b43 --- .../com/baidu/hugegraph/loader/HugeGraphLoader.java | 1 + .../baidu/hugegraph/loader/metrics/LoadSummary.java | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/baidu/hugegraph/loader/HugeGraphLoader.java b/src/main/java/com/baidu/hugegraph/loader/HugeGraphLoader.java index 76d7155dc..7471172d4 100644 --- a/src/main/java/com/baidu/hugegraph/loader/HugeGraphLoader.java +++ b/src/main/java/com/baidu/hugegraph/loader/HugeGraphLoader.java @@ -164,6 +164,7 @@ private void loadInputs() { Printer.printRealtimeProgress(this.context); LoadOptions options = this.context.options(); LoadSummary summary = this.context.summary(); + summary.initMetrics(this.mapping); summary.startTotalTimer(); try { diff --git a/src/main/java/com/baidu/hugegraph/loader/metrics/LoadSummary.java b/src/main/java/com/baidu/hugegraph/loader/metrics/LoadSummary.java index 6619440a5..73c799fcb 100644 --- a/src/main/java/com/baidu/hugegraph/loader/metrics/LoadSummary.java +++ b/src/main/java/com/baidu/hugegraph/loader/metrics/LoadSummary.java @@ -28,6 +28,7 @@ import com.baidu.hugegraph.loader.constant.ElemType; import com.baidu.hugegraph.loader.mapping.InputStruct; +import com.baidu.hugegraph.loader.mapping.LoadMapping; import com.baidu.hugegraph.util.InsertionOrderUtil; public final class LoadSummary { @@ -53,14 +54,18 @@ public LoadSummary() { this.inputMetricsMap = InsertionOrderUtil.newMap(); } + public void initMetrics(LoadMapping mapping) { + for (InputStruct struct : mapping.structs()) { + this.inputMetricsMap.put(struct.id(), new LoadMetrics(struct)); + } + } + public Map inputMetricsMap() { return this.inputMetricsMap; } public LoadMetrics metrics(InputStruct struct) { - return this.inputMetricsMap.computeIfAbsent(struct.id(), k -> { - return new LoadMetrics(struct); - }); + return this.inputMetricsMap.get(struct.id()); } public long vertexLoaded() {