Zhiting Guo created KYLIN-5646:
----------------------------------
Summary: The build job reports an error at the step of detecting
time partition columns in the Yarn Cluster mode
Key: KYLIN-5646
URL: https://issues.apache.org/jira/browse/KYLIN-5646
Project: Kylin
Issue Type: Bug
Components: Tools, Build and Test
Affects Versions: 5.0-alpha
Reporter: Zhiting Guo
Fix For: 5.0-alpha
When building Spark YARN-Cluster mode, when detecting incremental time
partition columns, initializing KylinConfig reports an error Didn't find
KYLIN_HOME or KYLIN_HOME
*Reproduce method*
Build the partition table model incrementally using Spark YARN_Cluster mode,
and set kylin.engine.check-partition-col-enabled=true (the default value is
true)
*Root Cause*
Modified the autoSetShufflePartitions of the pushdown query in [KYLIN-5571], no
need to execute when the pre-modification build task detects the delta time
column format (only the pushdown query is executed)
After modification, autoSetShufflePartitions is executed asynchronously, the
following two methods will get KylinConfig through
KylinConfig.getInstanceFromEnv,
At this time, the asynchronous execution of the new thread cannot use the built
KylinConfig, so the KylinConfig will be initialized,
However, the build task jvm and the KE main process are not the same machine,
and KYLIN_CONF and KYLIN_HOME cannot be obtained, so the build task fails to run
* ResourceDetectUtils.getResourceSizeWithTimeoutByConcurrency
* ResourceDetectUtils.getResourceSizBySerial
*fix design*
In all the logic of newly opened threads, if KylinConfig is used, this method
KylinConfig.getInstanceFromEnv() is not used. Unified is obtained by an
external thread and passed to the place where it needs to be used
--
This message was sent by Atlassian Jira
(v8.20.10#820010)