bazelbuild/bazel

execution crashes if --sandbox_writable_path argument is not absolute

Open

#10,304 opened on Nov 26, 2019

View on GitHub
 (2 comments) (0 reactions) (0 assignees)Java (25,384 stars) (4,465 forks)batch import
P3help wantednot staleteam-Local-Exectype: bug

Description

$ bazel test --sandbox_writable_path=blah //some/unbuilt:target
191126 00:52:14.137:XT 20 [com.google.devtools.build.lib.runtime.BlazeCommandDispatcher.execExclusively] Shutting down due to exception
java.lang.RuntimeException: Unrecoverable error while evaluating node 'ActionLookupData{actionLookupKey=//src/test/java/com/google/devtools/build/lib:java-rules-tests BuildConfigurationValue.Key[2ebd94f51c577db217a7f1a95d9e12d74f37a9c2f20f75cd1e97c094e39fbd48] false, actionIndex=10}' (requested by nodes 'TestCompletionKey{configuredTargetKey=//src/test/java/com/google/devtools/build/lib:java-rules-tests BuildConfigurationValue.Key[2ebd94f51c577db217a7f1a95d9e12d74f37a9c2f20f75cd1e97c094e39fbd48] false, topLevelArtifactContext=com.google.devtools.build.lib.analysis.TopLevelArtifactContext@500abbf6, exclusiveTesting=false}')
        at com.google.devtools.build.skyframe.AbstractParallelEvaluator$Evaluate.run(AbstractParallelEvaluator.java:531)
        at com.google.devtools.build.lib.concurrent.AbstractQueueVisitor$WrappedRunnable.run(AbstractQueueVisitor.java:399)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalArgumentException: Paths must be absolute: 'blah'
        at com.google.common.base.Preconditions.checkArgument(Preconditions.java:216)
        at com.google.devtools.build.lib.vfs.Path.<init>(Path.java:104)
        at com.google.devtools.build.lib.vfs.Path.createAlreadyNormalized(Path.java:99)
        at com.google.devtools.build.lib.vfs.Path.createAlreadyNormalized(Path.java:95)
        at com.google.devtools.build.lib.vfs.Path.create(Path.java:88)
        at com.google.devtools.build.lib.vfs.FileSystem.getPath(FileSystem.java:75)
        at com.google.devtools.build.lib.sandbox.AbstractSandboxSpawnRunner.getWritableDirs(AbstractSandboxSpawnRunner.java:270)
        at com.google.devtools.build.lib.sandbox.LinuxSandboxedSpawnRunner.getWritableDirs(LinuxSandboxedSpawnRunner.java:235)
        at com.google.devtools.build.lib.sandbox.LinuxSandboxedSpawnRunner.prepareSpawn(LinuxSandboxedSpawnRunner.java:159)
        at com.google.devtools.build.lib.sandbox.AbstractSandboxSpawnRunner.exec(AbstractSandboxSpawnRunner.java:81)
        at com.google.devtools.build.lib.sandbox.SandboxModule$SandboxFallbackSpawnRunner.exec(SandboxModule.java:430)
        at com.google.devtools.build.lib.exec.SpawnRunner.execAsync(SpawnRunner.java:225)
        at com.google.devtools.build.lib.exec.AbstractSpawnStrategy.exec(AbstractSpawnStrategy.java:122)
        at com.google.devtools.build.lib.exec.AbstractSpawnStrategy.exec(AbstractSpawnStrategy.java:87)
        at com.google.devtools.build.lib.actions.SpawnActionContext.beginExecution(SpawnActionContext.java:41)
        at com.google.devtools.build.lib.exec.ProxySpawnActionContext.beginExecution(ProxySpawnActionContext.java:60)
        at com.google.devtools.build.lib.exec.StandaloneTestStrategy.beginTestAttempt(StandaloneTestStrategy.java:309)
        at com.google.devtools.build.lib.exec.StandaloneTestStrategy.access$100(StandaloneTestStrategy.java:74)
        at com.google.devtools.build.lib.exec.StandaloneTestStrategy$StandaloneTestRunnerSpawn.beginExecution(StandaloneTestStrategy.java:452)
        at com.google.devtools.build.lib.analysis.test.TestRunnerAction.beginIfNotCancelled(TestRunnerAction.java:797)
        at com.google.devtools.build.lib.analysis.test.TestRunnerAction.beginExecution(TestRunnerAction.java:766)
        at com.google.devtools.build.lib.analysis.test.TestRunnerAction.execute(TestRunnerAction.java:822)
        at com.google.devtools.build.lib.analysis.test.TestRunnerAction.execute(TestRunnerAction.java:813)
        at com.google.devtools.build.lib.skyframe.SkyframeActionExecutor$4.execute(SkyframeActionExecutor.java:886)
        at com.google.devtools.build.lib.skyframe.SkyframeActionExecutor$ActionRunner.continueAction(SkyframeActionExecutor.java:1021)
        at com.google.devtools.build.lib.skyframe.SkyframeActionExecutor$ActionRunner.run(SkyframeActionExecutor.java:992)
        at com.google.devtools.build.lib.skyframe.ActionExecutionState.runStateMachine(ActionExecutionState.java:116)
        at com.google.devtools.build.lib.skyframe.ActionExecutionState.getResultOrDependOnFuture(ActionExecutionState.java:77)
        at com.google.devtools.build.lib.skyframe.SkyframeActionExecutor.executeAction(SkyframeActionExecutor.java:585)
        at com.google.devtools.build.lib.skyframe.ActionExecutionFunction.checkCacheAndExecuteIfNeeded(ActionExecutionFunction.java:856)
        at com.google.devtools.build.lib.skyframe.ActionExecutionFunction.compute(ActionExecutionFunction.java:288)
        at com.google.devtools.build.skyframe.AbstractParallelEvaluator$Evaluate.run(AbstractParallelEvaluator.java:454)
        ... 4 more

Contributor guide