diff --git a/client/src/main/java/com/vesoft/nebula/driver/graph/data/ExtraInfo.java b/client/src/main/java/com/vesoft/nebula/driver/graph/data/ExtraInfo.java index 0a785d28d..510fe0cd2 100644 --- a/client/src/main/java/com/vesoft/nebula/driver/graph/data/ExtraInfo.java +++ b/client/src/main/java/com/vesoft/nebula/driver/graph/data/ExtraInfo.java @@ -31,6 +31,8 @@ public class ExtraInfo { private long optimizeTimeUs; + private long executionTimeUs; + private long serializeTimeUs; private long numWarnings; @@ -74,6 +76,10 @@ public void setOptimizeTimeUs(long optimizeTimeUs) { this.optimizeTimeUs = optimizeTimeUs; } + public void setExecutionTimeUs(long executionTimeUs) { + this.executionTimeUs = executionTimeUs; + } + public void setSerializeTimeUs(long serializeTimeUs) { this.serializeTimeUs = serializeTimeUs; } @@ -107,6 +113,10 @@ public long getOptimizeTimeUs() { return optimizeTimeUs; } + public long getExecutionTimeUs() { + return executionTimeUs; + } + public long getSerializeTimeUs() { return serializeTimeUs; } @@ -147,6 +157,7 @@ public String toString() { + ", parseTimeUs=" + parseTimeUs + ", buildTimeUs=" + buildTimeUs + ", optimizeTimeUs=" + optimizeTimeUs + + ", executionTimeUs=" + executionTimeUs + ", serializeTimeUs=" + serializeTimeUs + ", numWarnings=" + numWarnings + ", numExportedRecords=" + numExportedRecords diff --git a/client/src/main/java/com/vesoft/nebula/driver/graph/data/ResultSet.java b/client/src/main/java/com/vesoft/nebula/driver/graph/data/ResultSet.java index ce1dd3a5a..55e5d8952 100644 --- a/client/src/main/java/com/vesoft/nebula/driver/graph/data/ResultSet.java +++ b/client/src/main/java/com/vesoft/nebula/driver/graph/data/ResultSet.java @@ -274,6 +274,7 @@ public ExtraInfo getExtraInfo() { extraInfo.setParseTimeUs(response.getSummary().getElapsedTime().getParseTimeUs()); extraInfo.setBuildTimeUs(response.getSummary().getElapsedTime().getBuildTimeUs()); extraInfo.setOptimizeTimeUs(response.getSummary().getElapsedTime().getOptimizeTimeUs()); + extraInfo.setExecutionTimeUs(response.getSummary().getElapsedTime().getExecutionTimeUs()); extraInfo.setSerializeTimeUs(response.getSummary().getElapsedTime().getSerializeTimeUs()); extraInfo.setTotalServerTimeUs(response.getSummary() .getElapsedTime() diff --git a/client/src/main/proto/graph.proto b/client/src/main/proto/graph.proto index a89a1c43e..b5ae57715 100644 --- a/client/src/main/proto/graph.proto +++ b/client/src/main/proto/graph.proto @@ -81,6 +81,7 @@ message ElapsedTime { int64 optimize_time_us = 3; int64 serialize_time_us = 4; int64 parse_time_us = 5; + int64 execution_time_us = 6; } message Summary { diff --git a/client/src/test/java/com/vesoft/nebula/driver/graph/data/DataTest.java b/client/src/test/java/com/vesoft/nebula/driver/graph/data/DataTest.java index caf9fd517..0ca3f0244 100644 --- a/client/src/test/java/com/vesoft/nebula/driver/graph/data/DataTest.java +++ b/client/src/test/java/com/vesoft/nebula/driver/graph/data/DataTest.java @@ -180,6 +180,7 @@ public void testResult() { .setTotalServerTimeUs(5000) .setBuildTimeUs(2000) .setOptimizeTimeUs(1000) + .setExecutionTimeUs(3000) .build())) .setStatus(Status.newBuilder() .setCode(ByteString.copyFrom("00000", Charsets.UTF_8)) @@ -190,6 +191,7 @@ public void testResult() { assert resultSet.getErrorCode() == ErrorCode.SUCCESSFUL_COMPLETION; assert !resultSet.isEmpty(); Assert.assertEquals(5000, resultSet.getLatency()); + Assert.assertEquals(3000, resultSet.getExtraInfo().getExecutionTimeUs()); List expectColNames = Arrays.asList("p1", "p2", "p3", "p4", "p5"); assert Objects.equals(resultSet.getColumnNames(), expectColNames);