diff options
author | carmi <carmi@google.com> | 2017-12-20 18:03:46 -0800 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2017-12-20 18:05:47 -0800 |
commit | 16c36c3f15574a40e34e697f92fe86a4e44e9851 (patch) | |
tree | 1767896cc11555384bbdc0dba4bbe2fe7d5ba32e /src/main/java/com/google/devtools/build/lib/skyframe/packages | |
parent | bfd8157819b4bf0fe2a55f54e2081e2b5d4fc848 (diff) |
Enable syscall cache and eager sub-directory globbing in AbstractPackageLoader.
RELNOTES: None
PiperOrigin-RevId: 179757650
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/packages')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java b/src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java index a10deeb595..6d465784ae 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java @@ -60,6 +60,7 @@ import com.google.devtools.build.lib.skyframe.PackageFunction.CacheEntryWithGlob import com.google.devtools.build.lib.skyframe.PackageLookupFunction; import com.google.devtools.build.lib.skyframe.PackageLookupFunction.CrossRepositoryLabelViolationStrategy; import com.google.devtools.build.lib.skyframe.PackageValue; +import com.google.devtools.build.lib.skyframe.PerBuildSyscallCache; import com.google.devtools.build.lib.skyframe.PrecomputedFunction; import com.google.devtools.build.lib.skyframe.PrecomputedValue; import com.google.devtools.build.lib.skyframe.SkyFunctions; @@ -102,6 +103,10 @@ import javax.annotation.Nullable; * caching. */ public abstract class AbstractPackageLoader implements PackageLoader { + + // See {@link PackageFactory.setMaxDirectoriesToEagerlyVisitInGlobbing}. + private static final int MAX_DIRECTORIES_TO_EAGERLY_VISIT_IN_GLOBBING = 3000; + private final ImmutableDiff preinjectedDiff; private final Differencer preinjectedDifferencer = new Differencer() { @Override @@ -359,6 +364,9 @@ public abstract class AbstractPackageLoader implements PackageLoader { getName(), Package.Builder.DefaultHelper.INSTANCE); pkgFactory.setGlobbingThreads(legacyGlobbingThreads); + pkgFactory.setSyscalls(new AtomicReference<>(PerBuildSyscallCache.newBuilder().build())); + pkgFactory.setMaxDirectoriesToEagerlyVisitInGlobbing( + MAX_DIRECTORIES_TO_EAGERLY_VISIT_IN_GLOBBING); ImmutableMap.Builder<SkyFunctionName, SkyFunction> builder = ImmutableMap.builder(); builder .put(SkyFunctions.PRECOMPUTED, new PrecomputedFunction()) |