diff --git a/presto-native-execution/presto_cpp/main/PrestoTask.cpp b/presto-native-execution/presto_cpp/main/PrestoTask.cpp index 7a5c2c11ab3be..d15e8dddffa3c 100644 --- a/presto-native-execution/presto_cpp/main/PrestoTask.cpp +++ b/presto-native-execution/presto_cpp/main/PrestoTask.cpp @@ -440,9 +440,22 @@ protocol::TaskInfo PrestoTask::updateInfoLocked() { std::unordered_map taskRuntimeStats; + if (taskStats.memoryReclaimCount > 0) { + taskRuntimeStats["memoryReclaimCount"].addValue( + taskStats.memoryReclaimCount); + taskRuntimeStats.insert( + {"memoryReclaimWallNanos", + RuntimeMetric( + taskStats.memoryReclaimMs * 1'000'000, + RuntimeCounter::Unit::kNanos)}); + } + if (taskStats.endTimeMs >= taskStats.executionEndTimeMs) { - taskRuntimeStats["outputConsumedDelayInNanos"].addValue( - (taskStats.endTimeMs - taskStats.executionEndTimeMs) * 1'000'000); + taskRuntimeStats.insert( + {"outputConsumedDelayInNanos", + RuntimeMetric( + (taskStats.endTimeMs - taskStats.executionEndTimeMs) * 1'000'000, + RuntimeCounter::Unit::kNanos)}); taskRuntimeStats["createTime"].addValue(taskStats.executionStartTimeMs); taskRuntimeStats["endTime"].addValue(taskStats.endTimeMs); }