srkukarni closed pull request #2937: Infer missing arguments before starting localrun URL: https://github.com/apache/pulsar/pull/2937
This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/pulsar-functions/runtime/src/main/java/org/apache/pulsar/functions/runtime/LocalRunner.java b/pulsar-functions/runtime/src/main/java/org/apache/pulsar/functions/runtime/LocalRunner.java index e85a45d593..958dbcf2f3 100644 --- a/pulsar-functions/runtime/src/main/java/org/apache/pulsar/functions/runtime/LocalRunner.java +++ b/pulsar-functions/runtime/src/main/java/org/apache/pulsar/functions/runtime/LocalRunner.java @@ -47,6 +47,7 @@ import org.apache.pulsar.functions.utils.io.ConnectorUtils; import org.apache.pulsar.functions.utils.io.Connectors; +import static org.apache.pulsar.common.functions.Utils.inferMissingArguments; import static org.apache.pulsar.functions.utils.Utils.*; @Slf4j @@ -94,6 +95,7 @@ void start() throws Exception { int parallelism; if (!StringUtils.isEmpty(functionConfigString)) { FunctionConfig functionConfig = new Gson().fromJson(functionConfigString, FunctionConfig.class); + FunctionConfigUtils.inferMissingArguments(functionConfig); ClassLoader classLoader = null; parallelism = functionConfig.getParallelism(); if (functionConfig.getRuntime() == FunctionConfig.Runtime.JAVA) { @@ -113,6 +115,7 @@ void start() throws Exception { functionDetails = FunctionConfigUtils.convert(functionConfig, classLoader); } else if (!StringUtils.isEmpty(sourceConfigString)) { SourceConfig sourceConfig = new Gson().fromJson(sourceConfigString, SourceConfig.class); + inferMissingArguments(sourceConfig); String builtInSource = isBuiltInSource(sourceConfig.getArchive()); if (builtInSource != null) { sourceConfig.setArchive(builtInSource); @@ -132,6 +135,7 @@ void start() throws Exception { functionDetails = SourceConfigUtils.convert(sourceConfig, classLoader); } else { SinkConfig sinkConfig = new Gson().fromJson(sinkConfigString, SinkConfig.class); + inferMissingArguments(sinkConfig); String builtInSink = isBuiltInSource(sinkConfig.getArchive()); if (builtInSink != null) { sinkConfig.setArchive(builtInSink); ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services