Skip to content

Commit dfcc4ca

Browse files
committed
Optimize the merging of operator stats
1 parent 07b9896 commit dfcc4ca

File tree

1 file changed

+8
-15
lines changed

1 file changed

+8
-15
lines changed

presto-main/src/main/java/com/facebook/presto/execution/StageExecutionInfo.java

+8-15
Original file line numberDiff line numberDiff line change
@@ -73,11 +73,8 @@ public static StageExecutionInfo create(
7373
{
7474
TaskStatsAggregator taskStatsAggregator = new TaskStatsAggregator();
7575
taskStatsAggregator.increaseTotalTaskCount(taskInfos.size());
76-
7776
taskStatsAggregator.mergeRuntimeStats(stageRuntimeStats);
7877

79-
List<TaskStats> allTaskStats = new ArrayList<>();
80-
8178
for (TaskInfo taskInfo : taskInfos) {
8279
TaskState taskState = taskInfo.getTaskStatus().getState();
8380
if (taskState.isDone()) {
@@ -88,7 +85,6 @@ public static StageExecutionInfo create(
8885
}
8986

9087
TaskStats taskStats = taskInfo.getStats();
91-
allTaskStats.add(taskStats);
9288

9389
if (state == FINISHED && taskInfo.getTaskStatus().getState() == TaskState.FAILED) {
9490
taskStatsAggregator.increaseRetriedCpuTime(taskStats.getTotalCpuTimeInNanos());
@@ -100,9 +96,6 @@ public static StageExecutionInfo create(
10096
}
10197

10298
taskStatsAggregator.increaseBufferedDataSize(taskInfo.getOutputBuffers().getTotalBufferedBytes());
103-
}
104-
105-
for (TaskStats taskStats : allTaskStats) {
10699
taskStatsAggregator.processTaskStats(taskStats);
107100
}
108101

@@ -221,13 +214,13 @@ public static StageExecutionInfo unscheduledExecutionInfo(int stageId, boolean i
221214
private static class TaskStatsAggregator
222215
{
223216
private int totalTasks;
224-
int runningTasks = 0;
225-
int completedTasks = 0;
226-
long retriedCpuTime = 0;
227-
long bufferedDataSize = 0;
217+
private int runningTasks;
218+
private int completedTasks;
219+
private long retriedCpuTime;
220+
private long bufferedDataSize;
228221

229-
boolean fullyBlocked = true;
230-
Set<BlockedReason> blockedReasons = new HashSet<>();
222+
private boolean fullyBlocked = true;
223+
private final Set<BlockedReason> blockedReasons = new HashSet<>();
231224

232225
private int totalDrivers;
233226
private int queuedDrivers;
@@ -263,8 +256,8 @@ private static class TaskStatsAggregator
263256
private int maxFullGcSec;
264257
private int totalFullGcSec;
265258

266-
Map<String, OperatorStats> operatorToStats = new HashMap<>();
267-
RuntimeStats mergedRuntimeStats = new RuntimeStats();
259+
private final Map<String, OperatorStats> operatorToStats = new HashMap<>();
260+
private final RuntimeStats mergedRuntimeStats = new RuntimeStats();
268261

269262
public void processTaskStats(TaskStats taskStats)
270263
{

0 commit comments

Comments
 (0)