| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rethrowing cause made sense a while ago, but now the only usages of this
method have a direct handle on the exception they want dealt with and
wrap the input with "new Exception(...)". Instead just pass the exception
along directly.
Also modified the comment in the unexpected case- the class referenced
does not exist anymore, from what I can tell, and thus the comment was
misleading.
--
MOS_MIGRATED_REVID=90623740
|
|
|
|
|
|
|
|
|
|
|
| |
ActionInputFileCache when given a digest to do a reverse lookup so that metadata can be more easily retrieved.
Discovered inputs are no longer ever put into SingleBuildFileCache, so it is safe to roll this forward now
Because of code changes (meant to ensure the safety of this change), there were conflicts that had to be manually resolved.
--
MOS_MIGRATED_REVID=90425783
|
|
|
|
|
|
|
| |
and fail hard in other cases.
--
MOS_MIGRATED_REVID=89720528
|
|
|
|
|
|
|
|
|
|
|
| |
for them can be retrieved with other inputs, avoiding a restart.
This also allows us to delete the UndeclaredInputsHandler, since we eagerly cache metadata before entering any ActionCacheChecker methods.
This should also allow us to split FileAndMetadataCache into two separate classes, as well as asserting that SingleBuildFileCache only sees non-artifact ActionInputs. To be done in follow-ups.
--
MOS_MIGRATED_REVID=89718712
|
|
|
|
|
|
|
|
|
| |
for allowing it to be restarted in case of missing deps.
Note that this means that action-cache writing is no longer part of the ACTION_COMPLETE profiling unit.
--
MOS_MIGRATED_REVID=89702039
|
|
|
|
|
|
|
|
|
|
| |
Here we additionally identify artifacts as orphaned if they are only
inputs to middleman actions whose outputs are unused. The middleman
actions are still part of the action graph, but we tolerate their
inputs being orphaned.
--
MOS_MIGRATED_REVID=89512745
|
|
|
|
|
|
|
| |
concurrently. We update the timing with the maximum elapsed time. This could prevent us from getting the critical path (because another smaller path could mask the critical path), but in practice we do not expect this to happen.
--
MOS_MIGRATED_REVID=89133458
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removing ActionMetadata#getInputCount instead of relying on all
implementations of ActionMetadata keeping getInputCount and
getInputs in sync. getInputCount is only used by a few tests
and has no applications in the main code at the moment, so it
is trivial to remove before we may come to rely on it more or its
semantics get more complicated.
--
MOS_MIGRATED_REVID=89130009
|
|
|
|
|
|
|
| |
IDE OOMing when a large action cache is in scope during debugging.
--
MOS_MIGRATED_REVID=89127817
|
|
|
|
|
|
|
| |
insert ActionInputs into SingleBuildFileCache.
--
MOS_MIGRATED_REVID=89032980
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=88992212
|
|
|
|
|
|
|
|
|
|
|
| |
is known that the action is a cache hit.
This adds momentary memory overhead when checking the action cache, but should prevent a host of potential errors.
Note that this cl assumes that an action that discovers its inputs does *not* take the names of its inputs into account when calculating its key, which is already stated as part of the javadoc of Action#getKey.
--
MOS_MIGRATED_REVID=88971626
|
|
|
|
|
|
|
| |
to do a reverse lookup so that metadata can be more easily retrieved.
--
MOS_MIGRATED_REVID=88733565
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We want to make it so configured targets can only see the configuration
fragments they have declared, which requires creating a customized
configuration for every configured target.
Therefore, this change moves the directories to a separate object, so
configurations that have the same output directories can share it.
Also change getBinFragment and getGenfilesFragment to call the corresponding
Root.getExecPath() on the fly. However, these are called _very_ often, so at
the same time change Root to cache the exec path.
Instead of keeping a map of all executables, only keep the shell executable,
which is the only value that was actually used anywhere.
Remove the cache key, but keep the short cache key. The cache key was only
used to check for duplicate cache keys in the BuildConfigurationCollection,
which is no longer necessary as we don't use the cache key for anything else
anymore. We should instead check for output directory conflicts, but we can't
do that quite yet (I'm working on it).
Also update the documentation in a couple of places.
--
MOS_MIGRATED_REVID=88712178
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We define unused artifacts as those that aren't consumed by any
action. This can be because an action produced more outputs than
a dependent action needed, or because it's a top level artifact
and we don't care about its contents, just that it was built
without issue. Actions may prevent outputs from being discarded
by declaring them as mandatory. This is particularly useful for
test outputs. The motivation behind this change is to reduce
storage overhead for things we can do without.
It is worth noting this change doesn't cover all cases. In particular
it has difficulty identifying *_binary artifacts as orphaned. This
is due to the insertion of a virtual runfiles artifact which depends
upon the rule's outputs.
--
MOS_MIGRATED_REVID=88467504
|
|
|
|
|
|
|
|
|
| |
probably want to store these and may declare dependencies in advance so all metadata is present in the graph.
Long-term, we may be able to use the returned set to make input-discovering actions immutable, which would be nice.
--
MOS_MIGRATED_REVID=88348068
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=87821306
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Users have asked for ways to control the concurrency level of their
local tests. They can do it right now using the --local_resources
option, but that is unintuitive and affects the parallelism of
non-test actions.
This option changes the kind of resources obtained for local tests. If
set, the CPU, RAM, and IO dimensions for local tests will not be used,
and a new localTestCount dimension will be used, where the capacity is
equal to the option's value, and each local test consumes one unit.
--
MOS_MIGRATED_REVID=87177698
|
|
|
|
|
|
|
|
|
|
| |
Most current invocations of the ResourceSet constructor shouldn't
care about any new dimensions we add to restrict test execution. This
change allows us to make those changes, keep the ResourceSet ctor
symmetrical, and avoid contaminating those ctor call sites with noise.
--
MOS_MIGRATED_REVID=86826112
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=86436572
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This enables the introduction of a third behavior mode when
RecursiveFilesystemTraversalFunction encounters a package boundary: on top of
the existing cross/no-cross behavior, it can now bail out with an error.
This is preparatory work to support Skyframe-native Filesets.
The CL also contains a couple of prettifying cleanups (in ActionCacheChecker
and in FilesetManifestAction).
--
MOS_MIGRATED_REVID=86185105
|
|
|
|
|
|
|
| |
execPath), with a skyframe native implementation ArtifactFactory.resolveSourceArtifact(Iterable<PathFragment> execPaths, PackageRootResolver resolver).
--
MOS_MIGRATED_REVID=86062289
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=85711276
|
|
--
MOE_MIGRATED_REVID=85702957
|