Hi, We have a job that contains `#` as part of mainArgs and it used to work on Ververica. Now we are switching to our own control plane to deploy to flink-operaotor and the job started to fail due to the main args string getting truncated at `#` character when passed to flink application. I believe this is due to characters after `#` being interpreted as comments in yaml file. To support having `#` in the mainArgs, the flink operator needs to escape `#` when generating k8 yaml file.
Assuming the mainArgs contain '\"xyz#abc\". Here is the stack-trace: {"exception":{"exception_class":"java.lang.IllegalArgumentException","exception_message":"Could not parse value '\"xyz' *(Note: truncated by #)* for key '$internal.application.program-args'.\n\tat org.apache.flink.configuration.Configuration.getOptional(Configuration.java:720)\n\tat org.apache.flink.configuration.Configuration.get(Configuration.java:704)\n\tat org.apache.flink.configuration.ConfigUtils.decodeListFromConfig(ConfigUtils.java:123)\n\tat org.apache.flink.client.deployment.application.ApplicationConfiguration.fromConfiguration(ApplicationConfiguration.java:80)\n\tat org.apache.flink.kubernetes.entrypoint.KubernetesApplicationClusterEntrypoint.getPackagedProgram(KubernetesApplicationClusterEntrypoint.java:93)\n\tat org.apache.flink.kubernetes.entrypoint.KubernetesApplicationClusterEntrypoint.main(KubernetesApplicationClusterEntrypoint.java:70)\nCaused by: *java.lang.IllegalArgumentException: Could not split string. Quoting was not closed properly*.\n\tat org.apache.flink.configuration.StructuredOptionsSplitter.consumeInQuotes(StructuredOptionsSplitter.java:163)\n\tat org.apache.flink.configuration.StructuredOptionsSplitter.tokenize(StructuredOptionsSplitter.java:129)\n\tat org.apache.flink.configuration.StructuredOptionsSplitter.splitEscaped(StructuredOptionsSplitter.java:52)\n\tat org.apache.flink.configuration.ConfigurationUtils.convertToList(ConfigurationUtils.java:324)\n\tat org.apache.flink.configuration.Configuration.lambda$getOptional$2(Configuration.java:714)\n\tat java.base/java.util.Optional.map(Optional.java:265)\n\tat org.apache.flink.configuration.Configuration.getOptional(Configuration.java:714)\n\t... 5 more\n"},"@version":1,"source_host":"xxxxxx","message":"Could not create application program.","thread_name":"main","@timestamp":"2022-11-07T18:40:03.369+00:00","level":"ERROR","logger_name":"org.apache.flink.runtime.entrypoint.ClusterEntrypoint"} Can someone take a look and help fixing this issue? or I can help fixing this if someone can point me in the right direction. -- Best Wishes & Regards Shawn Xiangcao Liu