Skip to content

Commit 4e5dcaf

Browse files
committed
And mnemonic and label to remote metadata
This reflects bazelbuild/remote-apis#186
1 parent c903cf9 commit 4e5dcaf

16 files changed

+165
-45
lines changed

src/main/java/com/google/devtools/build/lib/remote/ByteStreamBuildEventArtifactUploader.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ private static List<PathMetadata> processQueryResult(
159159
private ListenableFuture<ImmutableIterable<PathMetadata>> queryRemoteCache(
160160
ImmutableList<ListenableFuture<PathMetadata>> allPaths) throws Exception {
161161
RequestMetadata metadata =
162-
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "bes-upload");
162+
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "bes-upload", null);
163163
RemoteActionExecutionContext context = RemoteActionExecutionContext.create(metadata);
164164

165165
List<PathMetadata> knownRemotePaths = new ArrayList<>(allPaths.size());
@@ -195,7 +195,7 @@ private ListenableFuture<ImmutableIterable<PathMetadata>> queryRemoteCache(
195195
private ListenableFuture<List<PathMetadata>> uploadLocalFiles(
196196
ImmutableIterable<PathMetadata> allPaths) {
197197
RequestMetadata metadata =
198-
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "bes-upload");
198+
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "bes-upload", null);
199199
RemoteActionExecutionContext context = RemoteActionExecutionContext.create(metadata);
200200

201201
ImmutableList.Builder<ListenableFuture<PathMetadata>> allPathsUploaded =

src/main/java/com/google/devtools/build/lib/remote/RemoteActionInputFetcher.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ private ListenableFuture<Void> downloadFileAsync(Path path, FileArtifactValue me
163163
ListenableFuture<Void> download = downloadsInProgress.get(path);
164164
if (download == null) {
165165
RequestMetadata requestMetadata =
166-
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, metadata.getActionId());
166+
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, metadata.getActionId(), null);
167167
RemoteActionExecutionContext context = RemoteActionExecutionContext.create(requestMetadata);
168168

169169
Digest digest = DigestUtil.buildDigest(metadata.getDigest(), metadata.getSize());

src/main/java/com/google/devtools/build/lib/remote/RemoteRepositoryRemoteExecutor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ public ExecutionResult execute(
106106
Duration timeout)
107107
throws IOException, InterruptedException {
108108
RequestMetadata metadata =
109-
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "repository_rule");
109+
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "repository_rule", null);
110110
RemoteActionExecutionContext context = RemoteActionExecutionContext.create(metadata);
111111

112112
Platform platform = PlatformUtils.buildPlatformProto(executionProperties);

src/main/java/com/google/devtools/build/lib/remote/RemoteServerCapabilities.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ private CapabilitiesBlockingStub capabilitiesBlockingStub(RemoteActionExecutionC
6969
public ServerCapabilities get(String buildRequestId, String commandId)
7070
throws IOException, InterruptedException {
7171
RequestMetadata metadata =
72-
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "capabilities");
72+
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "capabilities", null);
7373
RemoteActionExecutionContext context = RemoteActionExecutionContext.create(metadata);
7474
try {
7575
GetCapabilitiesRequest request =

src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnCache.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ public CacheHandle lookup(Spawn spawn, SpawnExecutionContext context)
154154

155155
RequestMetadata metadata =
156156
TracingMetadataUtils.buildMetadata(
157-
buildRequestId, commandId, actionKey.getDigest().getHash());
157+
buildRequestId, commandId, actionKey.getDigest().getHash(), spawn.getResourceOwner());
158158
RemoteActionExecutionContext remoteActionExecutionContext =
159159
RemoteActionExecutionContext.create(metadata);
160160

src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnRunner.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ public SpawnResult exec(Spawn spawn, SpawnExecutionContext context)
253253

254254
RequestMetadata metadata =
255255
TracingMetadataUtils.buildMetadata(
256-
buildRequestId, commandId, actionKey.getDigest().getHash());
256+
buildRequestId, commandId, actionKey.getDigest().getHash(), spawn.getResourceOwner());
257257
RemoteActionExecutionContext remoteActionExecutionContext =
258258
RemoteActionExecutionContext.create(metadata);
259259
Profiler prof = Profiler.instance();

src/main/java/com/google/devtools/build/lib/remote/downloader/GrpcRemoteDownloader.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ public void download(
114114
com.google.common.base.Optional<String> type)
115115
throws IOException, InterruptedException {
116116
RequestMetadata metadata =
117-
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "remote_downloader");
117+
TracingMetadataUtils.buildMetadata(buildRequestId, commandId, "remote_downloader", null);
118118
RemoteActionExecutionContext remoteActionExecutionContext =
119119
RemoteActionExecutionContext.create(metadata);
120120

src/main/java/com/google/devtools/build/lib/remote/util/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ java_library(
1919
"//src/main/java/com/google/devtools/build/lib/actions:execution_requirements",
2020
"//src/main/java/com/google/devtools/build/lib/analysis:blaze_version_info",
2121
"//src/main/java/com/google/devtools/build/lib/authandtls",
22+
"//src/main/java/com/google/devtools/build/lib/cmdline",
2223
"//src/main/java/com/google/devtools/build/lib/concurrent",
2324
"//src/main/java/com/google/devtools/build/lib/remote:ExecutionStatusException",
2425
"//src/main/java/com/google/devtools/build/lib/remote/common",

src/main/java/com/google/devtools/build/lib/remote/util/TracingMetadataUtils.java

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,9 @@
1717
import build.bazel.remote.execution.v2.ToolDetails;
1818
import com.google.common.annotations.VisibleForTesting;
1919
import com.google.common.base.Preconditions;
20+
import com.google.devtools.build.lib.actions.ActionExecutionMetadata;
2021
import com.google.devtools.build.lib.analysis.BlazeVersionInfo;
22+
import com.google.devtools.build.lib.cmdline.Label;
2123
import com.google.devtools.build.lib.remote.options.RemoteOptions;
2224
import io.grpc.ClientInterceptor;
2325
import io.grpc.Context;
@@ -46,19 +48,24 @@ private TracingMetadataUtils() {}
4648
ProtoUtils.keyForProto(RequestMetadata.getDefaultInstance());
4749

4850
public static RequestMetadata buildMetadata(
49-
String buildRequestId, String commandId, String actionId) {
51+
String buildRequestId, String commandId, String actionId, @Nullable ActionExecutionMetadata actionMetadata) {
5052
Preconditions.checkNotNull(buildRequestId);
5153
Preconditions.checkNotNull(commandId);
5254
Preconditions.checkNotNull(actionId);
53-
return RequestMetadata.newBuilder()
55+
RequestMetadata.Builder builder = RequestMetadata.newBuilder()
5456
.setCorrelatedInvocationsId(buildRequestId)
5557
.setToolInvocationId(commandId)
5658
.setActionId(actionId)
5759
.setToolDetails(
5860
ToolDetails.newBuilder()
5961
.setToolName("bazel")
60-
.setToolVersion(BlazeVersionInfo.instance().getVersion()))
61-
.build();
62+
.setToolVersion(BlazeVersionInfo.instance().getVersion()));
63+
if (actionMetadata != null) {
64+
builder.setActionMnemonic(actionMetadata.getMnemonic());
65+
builder.setTargetId(actionMetadata.getOwner().getLabel().getCanonicalForm());
66+
builder.setConfigurationId(actionMetadata.getOwner().getConfigurationChecksum());
67+
}
68+
return builder.build();
6269
}
6370

6471
/**

src/test/java/com/google/devtools/build/lib/remote/ByteStreamUploaderTest.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,8 @@ public final void setUp() throws Exception {
119119
TracingMetadataUtils.buildMetadata(
120120
"none",
121121
"none",
122-
DIGEST_UTIL.asActionKey(Digest.getDefaultInstance()).getDigest().getHash());
122+
DIGEST_UTIL.asActionKey(Digest.getDefaultInstance()).getDigest().getHash(),
123+
null);
123124
context = RemoteActionExecutionContext.create(metadata);
124125

125126
retryService = MoreExecutors.listeningDecorator(Executors.newScheduledThreadPool(1));
@@ -668,7 +669,8 @@ public void queryWriteStatus(
668669
TracingMetadataUtils.buildMetadata(
669670
"build-req-id",
670671
"command-id",
671-
DIGEST_UTIL.asActionKey(actionDigest).getDigest().getHash());
672+
DIGEST_UTIL.asActionKey(actionDigest).getDigest().getHash(),
673+
null);
672674
RemoteActionExecutionContext remoteActionExecutionContext =
673675
RemoteActionExecutionContext.create(metadata);
674676
uploads.add(

src/test/java/com/google/devtools/build/lib/remote/GrpcCacheClientTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ public final void setUp() throws Exception {
153153
FileSystemUtils.createDirectoryAndParents(stderr.getParentDirectory());
154154
outErr = new FileOutErr(stdout, stderr);
155155
RequestMetadata metadata =
156-
TracingMetadataUtils.buildMetadata("none", "none", Digest.getDefaultInstance().getHash());
156+
TracingMetadataUtils.buildMetadata("none", "none", Digest.getDefaultInstance().getHash(), null);
157157
context = RemoteActionExecutionContext.create(metadata);
158158
retryService = MoreExecutors.listeningDecorator(Executors.newScheduledThreadPool(1));
159159
}

src/test/java/com/google/devtools/build/lib/remote/RemoteCacheTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ public class RemoteCacheTests {
115115
public void setUp() throws Exception {
116116
MockitoAnnotations.initMocks(this);
117117
RequestMetadata metadata =
118-
TracingMetadataUtils.buildMetadata("none", "none", Digest.getDefaultInstance().getHash());
118+
TracingMetadataUtils.buildMetadata("none", "none", Digest.getDefaultInstance().getHash(), null);
119119
context = RemoteActionExecutionContext.create(metadata);
120120
fs = new InMemoryFileSystem(new JavaClock(), DigestHashFunction.SHA256);
121121
execRoot = fs.getPath("/execroot/main");

src/test/java/com/google/devtools/build/lib/remote/downloader/GrpcRemoteDownloaderTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,8 @@ public final void setUp() throws Exception {
9696
TracingMetadataUtils.buildMetadata(
9797
"none",
9898
"none",
99-
DIGEST_UTIL.asActionKey(Digest.getDefaultInstance()).getDigest().getHash());
99+
DIGEST_UTIL.asActionKey(Digest.getDefaultInstance()).getDigest().getHash(),
100+
null);
100101
context = RemoteActionExecutionContext.create(metadata);
101102

102103
retryService = MoreExecutors.listeningDecorator(Executors.newScheduledThreadPool(1));

src/test/java/com/google/devtools/build/lib/remote/http/HttpCacheClientTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -301,7 +301,7 @@ public void setUp() throws Exception {
301301
remoteActionExecutionContext =
302302
RemoteActionExecutionContext.create(
303303
TracingMetadataUtils.buildMetadata(
304-
"none", "none", Digest.getDefaultInstance().getHash()));
304+
"none", "none", Digest.getDefaultInstance().getHash(), null));
305305
}
306306

307307
@Test

third_party/remoteapis/BUILD.bazel

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,10 @@ proto_library(
5454
srcs = ["build/bazel/remote/execution/v2/remote_execution.proto"],
5555
deps = [
5656
":build_bazel_semver_semver_proto",
57+
"@com_google_protobuf//:any_proto",
5758
"@com_google_protobuf//:duration_proto",
5859
"@com_google_protobuf//:timestamp_proto",
60+
"@com_google_protobuf//:wrappers_proto",
5961
"@googleapis//:google_api_annotations_proto",
6062
"@googleapis//:google_api_http_proto",
6163
"@googleapis//:google_longrunning_operations_proto",

0 commit comments

Comments
 (0)