[ 
https://issues.apache.org/jira/browse/BEAM-14343?focusedWorklogId=762081&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-762081
 ]

ASF GitHub Bot logged work on BEAM-14343:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 26/Apr/22 01:52
            Start Date: 26/Apr/22 01:52
    Worklog Time Spent: 10m 
      Work Description: ihji commented on code in PR #17418:
URL: https://github.com/apache/beam/pull/17418#discussion_r858163647


##########
sdks/java/extensions/python/src/main/java/org/apache/beam/sdk/extensions/python/ExternalPythonTransform.java:
##########
@@ -268,20 +268,31 @@ public OutputT expand(InputT input) {
     Row argsRow = buildOrGetArgsRow();
     Row kwargsRow = buildOrGetKwargsRow();
     try {
-      Schema payloadSchema =
-          Schema.of(
-              Schema.Field.of("constructor", Schema.FieldType.STRING),
-              Schema.Field.of("args", 
Schema.FieldType.row(argsRow.getSchema())),
-              Schema.Field.of("kwargs", 
Schema.FieldType.row(kwargsRow.getSchema())));
+      Schema.Builder schemaBuilder = Schema.builder();
+      schemaBuilder.addStringField("constructor");
+      if (argsRow.getValues().size() > 0) {
+        schemaBuilder.addRowField("args", argsRow.getSchema());
+      }
+      if (kwargsRow.getValues().size() > 0) {
+        schemaBuilder.addRowField("kwargs", kwargsRow.getSchema());
+      }
+      Schema payloadSchema = schemaBuilder.build();
       payloadSchema.setUUID(UUID.randomUUID());
-      Row payloadRow =
-          Row.withSchema(payloadSchema).addValues(fullyQualifiedName, argsRow, 
kwargsRow).build();
+      Row.Builder payloadRowBuilder = Row.withSchema(payloadSchema);
+      payloadRowBuilder.addValue(fullyQualifiedName);
+      if (argsRow.getValues().size() > 0) {

Review Comment:
   Done.



##########
sdks/java/extensions/python/src/main/java/org/apache/beam/sdk/extensions/python/ExternalPythonTransform.java:
##########
@@ -65,8 +66,10 @@
   private @Nullable Object @NonNull [] argsArray;
   private @Nullable Row providedKwargsRow;
 
-  private ExternalPythonTransform(String fullyQualifiedName, int 
expansionPort) {
+  private ExternalPythonTransform(
+      String fullyQualifiedName, String expansionHost, int expansionPort) {

Review Comment:
   Done.





Issue Time Tracking
-------------------

    Worklog Id:     (was: 762081)
    Time Spent: 1h 50m  (was: 1h 40m)

> Allow expansion service override in ExternalPythonTransform
> -----------------------------------------------------------
>
>                 Key: BEAM-14343
>                 URL: https://issues.apache.org/jira/browse/BEAM-14343
>             Project: Beam
>          Issue Type: Bug
>          Components: cross-language, sdk-java-core
>            Reporter: Heejong Lee
>            Assignee: Heejong Lee
>            Priority: P2
>          Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> Allow expansion service override in ExternalPythonTransform



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to