You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by yh...@apache.org on 2025/04/24 22:40:24 UTC
(beam) branch master updated: Fix IndexOutOfBoundsException invoking expansion service (#34428)
This is an automated email from the ASF dual-hosted git repository.
yhu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git
The following commit(s) were added to refs/heads/master by this push:
new 1540776dc30 Fix IndexOutOfBoundsException invoking expansion service (#34428)
1540776dc30 is described below
commit 1540776dc3031aba15b229732ec9d552d4372d9f
Author: Yi Hu <ya...@google.com>
AuthorDate: Thu Apr 24 18:40:17 2025 -0400
Fix IndexOutOfBoundsException invoking expansion service (#34428)
---
.../beam/sdk/expansion/service/ExpansionService.java | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/sdks/java/expansion-service/src/main/java/org/apache/beam/sdk/expansion/service/ExpansionService.java b/sdks/java/expansion-service/src/main/java/org/apache/beam/sdk/expansion/service/ExpansionService.java
index 4b0457320dd..2bd45067918 100644
--- a/sdks/java/expansion-service/src/main/java/org/apache/beam/sdk/expansion/service/ExpansionService.java
+++ b/sdks/java/expansion-service/src/main/java/org/apache/beam/sdk/expansion/service/ExpansionService.java
@@ -580,10 +580,8 @@ public class ExpansionService extends ExpansionServiceGrpc.ExpansionServiceImplB
@VisibleForTesting
/*package*/ ExpansionApi.ExpansionResponse expand(ExpansionApi.ExpansionRequest request) {
- LOG.info(
- "Expanding '{}' with URN '{}'",
- request.getTransform().getUniqueName(),
- request.getTransform().getSpec().getUrn());
+ final String urn = request.getTransform().getSpec().getUrn();
+ LOG.info("Expanding '{}' with URN '{}'", request.getTransform().getUniqueName(), urn);
LOG.debug("Full transform: {}", request.getTransform());
Set<String> existingTransformIds = request.getComponents().getTransformsMap().keySet();
@@ -625,8 +623,6 @@ public class ExpansionService extends ExpansionServiceGrpc.ExpansionServiceImplB
}
}));
- String urn = request.getTransform().getSpec().getUrn();
-
TransformProvider transformProvider = getRegisteredTransforms().get(urn);
if (transformProvider == null) {
if (getUrn(ExpansionMethods.Enum.JAVA_CLASS_LOOKUP).equals(urn)) {
@@ -649,8 +645,7 @@ public class ExpansionService extends ExpansionServiceGrpc.ExpansionServiceImplB
? transformProvider
: ExpansionServiceSchemaTransformProvider.of();
} else {
- throw new UnsupportedOperationException(
- "Unknown urn: " + request.getTransform().getSpec().getUrn());
+ throw new UnsupportedOperationException("Unknown urn: " + urn);
}
}
@@ -814,6 +809,10 @@ public class ExpansionService extends ExpansionServiceGrpc.ExpansionServiceImplB
}
public static void main(String[] args) throws Exception {
+ if (args.length < 1) {
+ printUsage();
+ System.exit(1);
+ }
int port = Integer.parseInt(args[0]);
System.out.println("Starting expansion service at localhost:" + port);
@@ -874,6 +873,10 @@ public class ExpansionService extends ExpansionServiceGrpc.ExpansionServiceImplB
server.awaitTermination();
}
+ private static void printUsage() {
+ System.err.println("Usage: java -jar <expansion-service-jar> port [pipeline-options]");
+ }
+
private static class NotRunnableRunner extends PipelineRunner<PipelineResult> {
public static NotRunnableRunner fromOptions(PipelineOptions opts) {
return new NotRunnableRunner();