Skip to content

Commit 4495d51

Browse files
committedFeb 19, 2025
Change from dataSize to long to avoid unnecessary creation
1 parent 9c4b683 commit 4495d51

File tree

10 files changed

+279
-275
lines changed

10 files changed

+279
-275
lines changed
 

‎presto-main/src/main/java/com/facebook/presto/execution/BasicStageExecutionStats.java

+37-35
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,13 @@
1515

1616
import com.facebook.presto.operator.BlockedReason;
1717
import com.google.common.collect.ImmutableSet;
18-
import io.airlift.units.DataSize;
1918
import io.airlift.units.Duration;
2019

2120
import java.util.HashSet;
2221
import java.util.OptionalDouble;
2322
import java.util.Set;
2423

25-
import static io.airlift.units.DataSize.Unit.BYTE;
26-
import static io.airlift.units.DataSize.succinctBytes;
24+
import static com.google.common.base.Preconditions.checkArgument;
2725
import static io.airlift.units.Duration.succinctDuration;
2826
import static java.lang.Math.min;
2927
import static java.util.Objects.requireNonNull;
@@ -39,21 +37,21 @@ public class BasicStageExecutionStats
3937
0,
4038
0,
4139

42-
new DataSize(0, BYTE),
40+
0L,
4341
0,
4442

4543
0.0,
4644
0.0,
47-
new DataSize(0, BYTE),
48-
new DataSize(0, BYTE),
45+
0L,
46+
0L,
4947

5048
new Duration(0, MILLISECONDS),
5149
new Duration(0, MILLISECONDS),
5250

5351
false,
5452
ImmutableSet.of(),
5553

56-
new DataSize(0, BYTE),
54+
0L,
5755

5856
OptionalDouble.empty());
5957

@@ -62,17 +60,17 @@ public class BasicStageExecutionStats
6260
private final int queuedDrivers;
6361
private final int runningDrivers;
6462
private final int completedDrivers;
65-
private final DataSize rawInputDataSize;
63+
private final long rawInputDataSizeInBytes;
6664
private final long rawInputPositions;
6765
private final double cumulativeUserMemory;
6866
private final double cumulativeTotalMemory;
69-
private final DataSize userMemoryReservation;
70-
private final DataSize totalMemoryReservation;
67+
private final long userMemoryReservationInBytes;
68+
private final long totalMemoryReservationInBytes;
7169
private final Duration totalCpuTime;
7270
private final Duration totalScheduledTime;
7371
private final boolean fullyBlocked;
7472
private final Set<BlockedReason> blockedReasons;
75-
private final DataSize totalAllocation;
73+
private final long totalAllocationInBytes;
7674
private final OptionalDouble progressPercentage;
7775

7876
public BasicStageExecutionStats(
@@ -83,21 +81,21 @@ public BasicStageExecutionStats(
8381
int runningDrivers,
8482
int completedDrivers,
8583

86-
DataSize rawInputDataSize,
84+
long rawInputDataSizeInBytes,
8785
long rawInputPositions,
8886

8987
double cumulativeUserMemory,
9088
double cumulativeTotalMemory,
91-
DataSize userMemoryReservation,
92-
DataSize totalMemoryReservation,
89+
long userMemoryReservationInBytes,
90+
long totalMemoryReservationInBytes,
9391

9492
Duration totalCpuTime,
9593
Duration totalScheduledTime,
9694

9795
boolean fullyBlocked,
9896
Set<BlockedReason> blockedReasons,
9997

100-
DataSize totalAllocation,
98+
long totalAllocationInBytes,
10199

102100
OptionalDouble progressPercentage)
103101
{
@@ -106,17 +104,21 @@ public BasicStageExecutionStats(
106104
this.queuedDrivers = queuedDrivers;
107105
this.runningDrivers = runningDrivers;
108106
this.completedDrivers = completedDrivers;
109-
this.rawInputDataSize = requireNonNull(rawInputDataSize, "rawInputDataSize is null");
107+
checkArgument(rawInputDataSizeInBytes >= 0, "rawInputDataSizeInBytes is negative");
108+
this.rawInputDataSizeInBytes = rawInputDataSizeInBytes;
110109
this.rawInputPositions = rawInputPositions;
111110
this.cumulativeUserMemory = cumulativeUserMemory;
112111
this.cumulativeTotalMemory = cumulativeTotalMemory;
113-
this.userMemoryReservation = requireNonNull(userMemoryReservation, "userMemoryReservation is null");
114-
this.totalMemoryReservation = requireNonNull(totalMemoryReservation, "totalMemoryReservation is null");
112+
checkArgument(userMemoryReservationInBytes >= 0, "userMemoryReservationInBytes is negative");
113+
this.userMemoryReservationInBytes = userMemoryReservationInBytes;
114+
checkArgument(totalMemoryReservationInBytes >= 0, "totalMemoryReservationInBytes is negative");
115+
this.totalMemoryReservationInBytes = totalMemoryReservationInBytes;
115116
this.totalCpuTime = requireNonNull(totalCpuTime, "totalCpuTime is null");
116117
this.totalScheduledTime = requireNonNull(totalScheduledTime, "totalScheduledTime is null");
117118
this.fullyBlocked = fullyBlocked;
118119
this.blockedReasons = ImmutableSet.copyOf(requireNonNull(blockedReasons, "blockedReasons is null"));
119-
this.totalAllocation = requireNonNull(totalAllocation, "totalAllocation is null");
120+
checkArgument(totalAllocationInBytes >= 0, "totalAllocationInBytes is negative");
121+
this.totalAllocationInBytes = totalAllocationInBytes;
120122
this.progressPercentage = requireNonNull(progressPercentage, "progressPercentage is null");
121123
}
122124

@@ -145,9 +147,9 @@ public int getCompletedDrivers()
145147
return completedDrivers;
146148
}
147149

148-
public DataSize getRawInputDataSize()
150+
public long getRawInputDataSizeInBytes()
149151
{
150-
return rawInputDataSize;
152+
return rawInputDataSizeInBytes;
151153
}
152154

153155
public long getRawInputPositions()
@@ -165,14 +167,14 @@ public double getCumulativeTotalMemory()
165167
return cumulativeTotalMemory;
166168
}
167169

168-
public DataSize getUserMemoryReservation()
170+
public long getUserMemoryReservationInBytes()
169171
{
170-
return userMemoryReservation;
172+
return userMemoryReservationInBytes;
171173
}
172174

173-
public DataSize getTotalMemoryReservation()
175+
public long getTotalMemoryReservationInBytes()
174176
{
175-
return totalMemoryReservation;
177+
return totalMemoryReservationInBytes;
176178
}
177179

178180
public Duration getTotalCpuTime()
@@ -195,9 +197,9 @@ public Set<BlockedReason> getBlockedReasons()
195197
return blockedReasons;
196198
}
197199

198-
public DataSize getTotalAllocation()
200+
public long getTotalAllocationInBytes()
199201
{
200-
return totalAllocation;
202+
return totalAllocationInBytes;
201203
}
202204

203205
public OptionalDouble getProgressPercentage()
@@ -238,8 +240,8 @@ public static BasicStageExecutionStats aggregateBasicStageStats(Iterable<BasicSt
238240

239241
cumulativeUserMemory += stageStats.getCumulativeUserMemory();
240242
cumulativeTotalMemory += stageStats.getCumulativeTotalMemory();
241-
userMemoryReservation += stageStats.getUserMemoryReservation().toBytes();
242-
totalMemoryReservation += stageStats.getTotalMemoryReservation().toBytes();
243+
userMemoryReservation += stageStats.getUserMemoryReservationInBytes();
244+
totalMemoryReservation += stageStats.getTotalMemoryReservationInBytes();
243245

244246
totalScheduledTimeMillis += stageStats.getTotalScheduledTime().roundTo(MILLISECONDS);
245247
totalCpuTime += stageStats.getTotalCpuTime().roundTo(MILLISECONDS);
@@ -249,9 +251,9 @@ public static BasicStageExecutionStats aggregateBasicStageStats(Iterable<BasicSt
249251
fullyBlocked &= stageStats.isFullyBlocked();
250252
blockedReasons.addAll(stageStats.getBlockedReasons());
251253

252-
totalAllocation += stageStats.getTotalAllocation().toBytes();
254+
totalAllocation += stageStats.getTotalAllocationInBytes();
253255

254-
rawInputDataSize += stageStats.getRawInputDataSize().toBytes();
256+
rawInputDataSize += stageStats.getRawInputDataSizeInBytes();
255257
rawInputPositions += stageStats.getRawInputPositions();
256258
}
257259

@@ -268,21 +270,21 @@ public static BasicStageExecutionStats aggregateBasicStageStats(Iterable<BasicSt
268270
runningDrivers,
269271
completedDrivers,
270272

271-
succinctBytes(rawInputDataSize),
273+
rawInputDataSize,
272274
rawInputPositions,
273275

274276
cumulativeUserMemory,
275277
cumulativeTotalMemory,
276-
succinctBytes(userMemoryReservation),
277-
succinctBytes(totalMemoryReservation),
278+
userMemoryReservation,
279+
totalMemoryReservation,
278280

279281
succinctDuration(totalCpuTime, MILLISECONDS),
280282
succinctDuration(totalScheduledTimeMillis, MILLISECONDS),
281283

282284
fullyBlocked,
283285
blockedReasons,
284286

285-
succinctBytes(totalAllocation),
287+
totalAllocation,
286288

287289
progressPercentage);
288290
}

‎presto-main/src/main/java/com/facebook/presto/execution/QueryStateMachine.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -388,13 +388,13 @@ public BasicQueryInfo getBasicQueryInfo(Optional<BasicStageExecutionStats> rootS
388388
stageStats.getRunningDrivers(),
389389
stageStats.getCompletedDrivers(),
390390

391-
stageStats.getRawInputDataSize(),
391+
succinctBytes(stageStats.getRawInputDataSizeInBytes()),
392392
stageStats.getRawInputPositions(),
393393

394394
stageStats.getCumulativeUserMemory(),
395395
stageStats.getCumulativeTotalMemory(),
396-
stageStats.getUserMemoryReservation(),
397-
stageStats.getTotalMemoryReservation(),
396+
succinctBytes(stageStats.getUserMemoryReservationInBytes()),
397+
succinctBytes(stageStats.getTotalMemoryReservationInBytes()),
398398
succinctBytes(getPeakUserMemoryInBytes()),
399399
succinctBytes(getPeakTotalMemoryInBytes()),
400400
succinctBytes(getPeakTaskTotalMemory()),
@@ -406,7 +406,7 @@ public BasicQueryInfo getBasicQueryInfo(Optional<BasicStageExecutionStats> rootS
406406
stageStats.isFullyBlocked(),
407407
stageStats.getBlockedReasons(),
408408

409-
stageStats.getTotalAllocation(),
409+
succinctBytes(stageStats.getTotalAllocationInBytes()),
410410

411411
stageStats.getProgressPercentage());
412412

0 commit comments

Comments
 (0)