Add the JvmCompileIsolatedStrategy

Review Request #1898 - Created March 11, 2015 and submitted

Stu Hood
benjyw, fkorotkov, jsirois, nhoward_tw, tejal

Adds an isolated compile strategy, which sequentially compiles targets from a chunk and passes upstream classpaths to downstream compilation. This hasn't had large scale testing internally yet, but it already compiles and caches medium-sized java and scala targets successfully.

  • Edits to the ABC to support isolation
  • Implement JvmCompileIsolatedStrategy
  • Select the compile strategy with a JvmCompile flag. Side-effect: you can run any of apt/java/scala with any combination of isolated/global
  • Incorporate the strategy into the platform_version_info, to give artifacts for each strategy different cache keys
  • Add a decorator to support parameterizing the strategy into unit tests

There are a few known issues with this strategy that affect this review:
1. Should gain back support for "--unnecessary-deps" and "--missing-direct-deps" (doesn't need "--missing-deps")
2. It's (probably?) very slow
3. Options for both strategies are registered, regardless of which strategy is selected (could be fixed with subsystems?)


  • 0
  • 2
  • 1
  • 3
Description From Last Updated
Stu Hood
Eric Ayers
Andy Reitz
Benjy Weinberger
Stu Hood
Stu Hood
Stu Hood
Stu Hood
Stu Hood
John Sirois
Stu Hood
Review request changed

Status: Closed (submitted)