From 06c1bcdc5da121954ce7d75cdfbda8d0344c8adc Mon Sep 17 00:00:00 2001 From: "Alexander.Likhachev" Date: Tue, 31 Oct 2023 00:02:33 +0100 Subject: [PATCH] [IC] Add filter on files for the `CACHE_DIRECTORY_SIZE` metric Without the filter, we were walking both through subdirectories and their files, so some files might be counted twice. Moreover, the behaviour of `File.length` is unspecified for directories. ^KT-63010 In Progress --- .../jetbrains/kotlin/incremental/IncrementalCompilerRunner.kt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalCompilerRunner.kt b/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalCompilerRunner.kt index 6c20d236849..ac82e630b87 100644 --- a/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalCompilerRunner.kt +++ b/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalCompilerRunner.kt @@ -421,7 +421,9 @@ abstract class IncrementalCompilerRunner< GradleBuildPerformanceMetric.SNAPSHOT_SIZE, (buildHistoryFile?.length() ?: 0) + lastBuildInfoFile.length() + abiSnapshotFile.length() ) - reporter.addMetric(GradleBuildPerformanceMetric.CACHE_DIRECTORY_SIZE, cacheDirectory.walk().sumOf { it.length() }) + reporter.addMetric( + GradleBuildPerformanceMetric.CACHE_DIRECTORY_SIZE, + cacheDirectory.walk().filter { it.isFile }.sumOf { it.length() }) } }