[
https://issues.apache.org/jira/browse/FLINK-24555?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Junfan Zhang updated FLINK-24555:
---------------------------------
Description:
h2. Why
As I found some warn logs in our production flink jobs, like as follows(the
detail logs attached at the end)
{code:java}
2021-10-14 17:46:41 WARN - [main] -
org.apache.flink.configuration.GlobalConfiguration(186) - Error while trying to
split key and value in configuration file
/data8/yarn/local/usercache/pizza/appcache/application_1633896099002_1043646/container_e429_1633896099002_1043646_01_000001/flink-conf.yaml:11:
"pipeline.classpaths: "
{code}
I dig the flink code and found it put the empty list into configuration by
{{ConfigUtils.encodeCollectionToConfig}}.
h2. How
So it's better to ignore the empty collection to put in the configuration.
Because these configuration will be written to the flink-conf.yaml and Flink
jobmanager will read but fail to read the corresponding key's value as the warn
log described.
h2. Appendix
{code:java}
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: internal.jobgraph-path, job.graph
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: restart-strategy.failure-rate.max-failures-per-interval, 3
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: jobmanager.execution.failover-strategy, region
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: high-availability.cluster-id, application_1633896099002_1043646
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: jobmanager.rpc.address, localhost
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: execution.runtime-mode, AUTOMATIC
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: security.kerberos.fetch.delegation-token, false
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: execution.savepoint.ignore-unclaimed-state, false
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: parallelism.default, 2
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: taskmanager.numberOfTaskSlots, 1
2021-10-14 17:46:41 WARN - [main] -
org.apache.flink.configuration.GlobalConfiguration(186) - Error while trying to
split key and value in configuration file
/data8/yarn/local/usercache/pizza/appcache/application_1633896099002_1043646/container_e429_1633896099002_1043646_01_000001/flink-conf.yaml:11:
"pipeline.classpaths: "
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: restart-strategy.failure-rate.failure-rate-interval, 1 d
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: yarn.application.name, app_StreamEngine_Prod_jiandan_beat_rec_test_all
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: yarn.application.queue, talos.job_streaming
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: taskmanager.memory.process.size, 1728m
{code}
was:
h2. Why
As I found some warn logs in our production flink jobs, like as follows(the
detail logs attached at the end)
{code:java}
2021-10-14 17:46:41 WARN - [main] -
org.apache.flink.configuration.GlobalConfiguration(186) - Error while trying to
split key and value in configuration file
{code}
I dig the flink code and found it put the empty list into configuration by
{{ConfigUtils.encodeCollectionToConfig}}.
h2. How
So it's better to ignore the empty collection to put in the configuration.
Because these configuration will be written to the flink-conf.yaml and Flink
jobmanager will read but fail to read the corresponding key's value as the warn
log described.
h2. Appendix
{code:java}
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: internal.jobgraph-path, job.graph
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: restart-strategy.failure-rate.max-failures-per-interval, 3
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: jobmanager.execution.failover-strategy, region
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: high-availability.cluster-id, application_1633896099002_1043646
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: jobmanager.rpc.address, localhost
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: execution.runtime-mode, AUTOMATIC
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: security.kerberos.fetch.delegation-token, false
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: execution.savepoint.ignore-unclaimed-state, false
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: parallelism.default, 2
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: taskmanager.numberOfTaskSlots, 1
2021-10-14 17:46:41 WARN - [main] -
org.apache.flink.configuration.GlobalConfiguration(186) - Error while trying to
split key and value in configuration file
/data8/yarn/local/usercache/pizza/appcache/application_1633896099002_1043646/container_e429_1633896099002_1043646_01_000001/flink-conf.yaml:11:
"pipeline.classpaths: "
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: restart-strategy.failure-rate.failure-rate-interval, 1 d
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: yarn.application.name, app_StreamEngine_Prod_jiandan_beat_rec_test_all
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: yarn.application.queue, talos.job_streaming
2021-10-14 17:46:41 INFO - [main] -
org.apache.flink.configuration.GlobalConfiguration(213) - Loading configuration
property: taskmanager.memory.process.size, 1728m
{code}
> Incorrectly put empty list to flink configuration
> -------------------------------------------------
>
> Key: FLINK-24555
> URL: https://issues.apache.org/jira/browse/FLINK-24555
> Project: Flink
> Issue Type: Bug
> Reporter: Junfan Zhang
> Priority: Major
>
> h2. Why
> As I found some warn logs in our production flink jobs, like as follows(the
> detail logs attached at the end)
> {code:java}
> 2021-10-14 17:46:41 WARN - [main] -
> org.apache.flink.configuration.GlobalConfiguration(186) - Error while trying
> to split key and value in configuration file
> /data8/yarn/local/usercache/pizza/appcache/application_1633896099002_1043646/container_e429_1633896099002_1043646_01_000001/flink-conf.yaml:11:
> "pipeline.classpaths: "
> {code}
> I dig the flink code and found it put the empty list into configuration by
> {{ConfigUtils.encodeCollectionToConfig}}.
> h2. How
> So it's better to ignore the empty collection to put in the configuration.
> Because these configuration will be written to the flink-conf.yaml and Flink
> jobmanager will read but fail to read the corresponding key's value as the
> warn log described.
> h2. Appendix
> {code:java}
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: internal.jobgraph-path, job.graph
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property:
> restart-strategy.failure-rate.max-failures-per-interval, 3
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: jobmanager.execution.failover-strategy, region
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: high-availability.cluster-id,
> application_1633896099002_1043646
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: jobmanager.rpc.address, localhost
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: execution.runtime-mode, AUTOMATIC
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: security.kerberos.fetch.delegation-token, false
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: execution.savepoint.ignore-unclaimed-state, false
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: parallelism.default, 2
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: taskmanager.numberOfTaskSlots, 1
> 2021-10-14 17:46:41 WARN - [main] -
> org.apache.flink.configuration.GlobalConfiguration(186) - Error while trying
> to split key and value in configuration file
> /data8/yarn/local/usercache/pizza/appcache/application_1633896099002_1043646/container_e429_1633896099002_1043646_01_000001/flink-conf.yaml:11:
> "pipeline.classpaths: "
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: restart-strategy.failure-rate.failure-rate-interval,
> 1 d
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: yarn.application.name,
> app_StreamEngine_Prod_jiandan_beat_rec_test_all
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: yarn.application.queue, talos.job_streaming
> 2021-10-14 17:46:41 INFO - [main] -
> org.apache.flink.configuration.GlobalConfiguration(213) - Loading
> configuration property: taskmanager.memory.process.size, 1728m
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)