hi,

Which verison do you use? Could you share the whole exception stack?

Best,
Shengkai

李 琳 <leili...@outlook.com> 于2025年7月8日周二 23:06写道:

>
> Hi all,
>
> I used the following code to create an applicationConfiguration for
> submitting a Flink job to a YARN cluster in application mode:
>
> *ApplicationConfiguration applicationConfiguration =                 new
> ApplicationConfiguration(userProgramArguments, userMainClass);*
>
> However, I encountered an issue when userProgramArguments contains special
> characters such as single quotation marks (') or the sequence $#. In such
> cases, Flink fails to parse the arguments correctly.
>
> For example, when the userProgramArguments string is:
> *kuser='log' kpwd='log@123$#sM' groupId=group-trace-source*
>
> Flink parses it incorrectly as:
> *'kuser=\'log\'';'kpwd=\'log@123\$'*
>
> This leads to an exception at runtime, as shown below:
> *2025-07-08 20:04:01,336 WARN
>  org.apache.flink.configuration.Configuration                 [] - Config
> uses deprecated configuration key 'web.port' instead of proper key
> 'rest.bind-port'*
> *2025-07-08 20:04:01,343 INFO  org.apache.flink.yarn.Utils
>                  [] - Resolved keytab path:
> /data/hadoop/yarn/local2/usercache/etl_03/appcache/application_1749118442714_1372/container_e63_1749118442714_1372_02_000001/krb5.keytab*
> *2025-07-08 20:04:01,346 INFO
>  org.apache.flink.runtime.clusterframework.BootstrapTools     [] - Setting
> directories for temporary files to:
> /data/hadoop/yarn/local2/usercache/etl_03/appcache/application_1749118442714_1372*
> *2025-07-08 20:04:01,348 ERROR
> org.apache.flink.runtime.entrypoint.ClusterEntrypoint        [] - Could not
> create application program.*
> *java.lang.IllegalArgumentException: Could not parse value
> 'kbs=fullchain01:9092,fullchain02:'kuser=\'log\'';'kpwd=\'log@123\$' for
> key '$internal.application.program-args'.*
> *    ...*
> *Caused by: java.lang.IllegalArgumentException: Could not split string.
> Quoting was not closed properly.*
> *    ...*
>
> It seems that the Flink CLI modifies or escapes the input, resulting in
> malformed arguments.
>
> Is there a recommended way to pass such userProgramArguments to the user’s
> main function without being altered by the CLI?
>
> Thanks in advance for your help in resolving this issue.
>
> Best regards,
>
> leilinee
>
>

Reply via email to