diff --git a/.gitignore b/.gitignore index b6e47617..362037ce 100644 --- a/.gitignore +++ b/.gitignore @@ -26,6 +26,9 @@ share/python-wheels/ .installed.cfg *.egg MANIFEST +.idea/ +.DS_Store +.vscode/ # PyInstaller # Usually these files are written by a python script from a template @@ -127,3 +130,40 @@ dmypy.json # Pyre type checker .pyre/ +#generationfile +app/ +core/run_ctest/run_ctest_result + +core/identify_param/results/kylin-common/logs +core/identify_param/results/kylin-common/param_getter_map.json +core/identify_param/results/kylin-common/param_setter_map.json +core/identify_param/results/kylin-common/param_unset_getter_map.json + + +core/identify_param/results/kylin-tool/logs +core/identify_param/results/kylin-tool/param_getter_map.json +core/identify_param/results/kylin-tool/param_setter_map.json +core/identify_param/results/kylin-tool/param_unset_getter_map.json + +core/identify_param/results/kylin-cube/logs +core/identify_param/results/kylin-cube/param_getter_map.json +core/identify_param/results/kylin-cube/param_setter_map.json +core/identify_param/results/kylin-cube/param_unset_getter_map.json + +core/identify_param/results/kylin-storage/logs +core/identify_param/results/kylin-storage/param_getter_map.json +core/identify_param/results/kylin-storage/param_setter_map.json +core/identify_param/results/kylin-storage/param_unset_getter_map.json + + + + +core/generate_ctest/test_result +core/run_ctest/sample-kylin-common +core/run_ctest/sample-kylin-tool + +core/generate_value/kylin-common-generated-values.tsv +core/generate_value/kylin-tool-generated-values.tsv +core/generate_ctest/sample-kylin-common.tsv +core/generate_ctest/sample-kylin-tool.tsv + diff --git a/core/add_project.sh b/core/add_project.sh index e5640839..bcd22ff4 100755 --- a/core/add_project.sh +++ b/core/add_project.sh @@ -48,6 +48,13 @@ function setup_alluxio() { mvn clean install -DskipTests -Dcheckstyle.skip -Dlicense.skip -Dfindbugs.skip -Dmaven.javadoc.skip=true } +function setup_kylin(){ + [ ! -d "app/ctest-kylin" ] && git clone https://github.com/rtao6/kylin.git app/ctest-kylin + cd app/ctest-kylin + git fetch && git checkout ctest-injection + mvn clean install -DskipTests -Dcheckstyle.skip -Dlicense.skip -Dfindbugs.skip -Dmaven.javadoc.skip=true +} + function usage() { echo "Usage: add_project.sh
" exit 1 @@ -64,7 +71,8 @@ function main() { hbase) setup_hbase ;; zookeeper) setup_zookeeper ;; alluxio) setup_alluxio ;; - *) echo "Unexpected project: $project - only support hadoop, hbase, zookeeper and alluxio." ;; + kylin) setup_kylin ;; + *) echo "Unexpected project: $project - only support hadoop, hbase, zookeeper, alluxio, and kylin." ;; esac fi } diff --git a/core/ctest_const.py b/core/ctest_const.py index d0820f43..a95ba962 100644 --- a/core/ctest_const.py +++ b/core/ctest_const.py @@ -12,11 +12,16 @@ HBASE = "hbase-server" ZOOKEEPER = "zookeeper-server" ALLUXIO = "alluxio-core" +KCOMMON = "kylin-common" +KTOOL = "kylin-tool" +KSTORAGE = "kylin-storage" +KCUBE = "kylin-cube" CTEST_HADOOP_DIR = os.path.join(APP_DIR, "ctest-hadoop") CTEST_HBASE_DIR = os.path.join(APP_DIR, "ctest-hbase") CTEST_ZK_DIR = os.path.join(APP_DIR, "ctest-zookeeper") CTEST_ALLUXIO_DIR = os.path.join(APP_DIR, "ctest-alluxio") +CTEST_KYLIN_DIR = os.path.join(APP_DIR, "ctest-kylin") PROJECT_DIR = { HCOMMON: CTEST_HADOOP_DIR, @@ -24,6 +29,10 @@ HBASE: CTEST_HBASE_DIR, ZOOKEEPER: CTEST_ZK_DIR, ALLUXIO: CTEST_ALLUXIO_DIR, + KCOMMON: CTEST_KYLIN_DIR, + KTOOL: CTEST_KYLIN_DIR, + KSTORAGE: CTEST_KYLIN_DIR, + KCUBE: CTEST_KYLIN_DIR, } @@ -34,11 +43,15 @@ HBASE: "hbase-server", ZOOKEEPER: "zookeeper-server", ALLUXIO: "core", + KCOMMON: "core-common", + KTOOL: "tool", + KSTORAGE: "core-storage", + KCUBE: "core-cube", } # surefire report -SUREFIRE_SUBDIR = "target/surefire-reports/" +SUREFIRE_SUBDIR = "../target/surefire-reports/" SUREFIRE_XML = "TEST-{}.xml" # slot is the classname SUREFIRE_TXT = "{}.txt" # testclass SUREFIRE_OUTTXT = "{}-output.txt" #testclass @@ -58,6 +71,10 @@ os.path.join(CTEST_ALLUXIO_DIR, MODULE_SUBDIR[ALLUXIO], "server/worker", SUREFIRE_SUBDIR), os.path.join(CTEST_ALLUXIO_DIR, MODULE_SUBDIR[ALLUXIO], "server/master", SUREFIRE_SUBDIR), ], + KCOMMON: [os.path.join(CTEST_KYLIN_DIR, MODULE_SUBDIR[KCOMMON], SUREFIRE_SUBDIR)], + KTOOL: [os.path.join(CTEST_KYLIN_DIR, MODULE_SUBDIR[KTOOL], SUREFIRE_SUBDIR)], + KSTORAGE: [os.path.join(CTEST_KYLIN_DIR, MODULE_SUBDIR[KSTORAGE], SUREFIRE_SUBDIR)], + KCUBE: [os.path.join(CTEST_KYLIN_DIR, MODULE_SUBDIR[KCUBE], SUREFIRE_SUBDIR)], } # default or deprecate conf path @@ -74,7 +91,11 @@ HDFS: os.path.join(DEFAULT_CONF_DIR, HDFS + "-default.tsv"), HBASE: os.path.join(DEFAULT_CONF_DIR, HBASE + "-default.tsv"), ALLUXIO: os.path.join(DEFAULT_CONF_DIR, ALLUXIO + "-default.tsv"), - ZOOKEEPER: os.path.join(DEFAULT_CONF_DIR, ZOOKEEPER + "-default.tsv") + ZOOKEEPER: os.path.join(DEFAULT_CONF_DIR, ZOOKEEPER + "-default.tsv"), + KCOMMON: os.path.join(DEFAULT_CONF_DIR, KCOMMON + "-default.tsv"), + KTOOL: os.path.join(DEFAULT_CONF_DIR, KTOOL + "-default.tsv"), + KSTORAGE: os.path.join(DEFAULT_CONF_DIR, KCOMMON + "-default.tsv"), # Same as KCOMMON + KCUBE: os.path.join(DEFAULT_CONF_DIR, KCOMMON + "-default.tsv"), # Same as KCOMMON } @@ -96,6 +117,22 @@ ], ALLUXIO: [ os.path.join(CTEST_ALLUXIO_DIR, "core/alluxio-ctest.properties") + ], + KCOMMON: [ + os.path.join(CTEST_KYLIN_DIR, "core-common/src/main/resources/ctest.properties") + # os.path.join(CTEST_KYLIN_DIR, "core-common/target/ctest.properties") + ], + KTOOL: [ + os.path.join(CTEST_KYLIN_DIR, "core-common/src/main/resources/ctest.properties") + # os.path.join(CTEST_KYLIN_DIR, "core-common/target/classes/ctest.properties") + ], + KSTORAGE: [ + os.path.join(CTEST_KYLIN_DIR, "core-common/src/main/resources/ctest.properties") + # os.path.join(CTEST_KYLIN_DIR, "core-common/target/classes/ctest.properties") + ], + KCUBE: [ + os.path.join(CTEST_KYLIN_DIR, "core-common/src/main/resources/ctest.properties") + # os.path.join(CTEST_KYLIN_DIR, "core-common/target/classes/ctest.properties") ] } diff --git a/core/default_configs/kylin-common-default.tsv b/core/default_configs/kylin-common-default.tsv new file mode 100644 index 00000000..a33a595a --- /dev/null +++ b/core/default_configs/kylin-common-default.tsv @@ -0,0 +1,283 @@ +kylin.env.hdfs-working-dir /kylin specifies the HDFS path used by Kylin service. The default value is /kylin. Make sure that the user who starts the Kylin instance has permission to read and write to this directory. +kylin.env PROD specifies the purpose of the Kylin deployment. Optional values include DEV, QA and PROD. The default value is DEV. Some developer functions will be enabled in DEV mode. +kylin.env.zookeeper-base-path /kylin specifies the ZooKeeper path used by the Kylin service. The default value is /kylin +kylin.env.zookeeper-connect-string specifies the ZooKeeper connection string. If it is empty, use HBase’s ZooKeeper +kylin.env.hadoop-conf-dir HADOOP_CONF_DIR specifies the Hadoop configuration file directory. If not specified, get HADOOP_CONF_DIR in the environment. +kylin.server.mode query Optional values include all, job and query, among them all is the default one. job mode means the instance schedules Cube job only; query mode means the instance serves SQL queries only; all mode means the instance handles both of them. +kylin.server.cluster-name specifies the cluster name +kylin.job.scheduler.default 2 to enable the distributed job scheduler. +kylin.job.lock org.apache.kylin.storage.hbase.util.ZookeeperJobLock to enable distributed job lock +kylin.job.scheduler.safemode TRUE to enable job scheduler safemode. In safemode, Newly submitted job will not be executed +kylin.job.scheduler.safemode.runable-projects project1,project2 provide list of projects as exceptional case in safemode. +kylin.storage.hbase.cluster-fs specifies the HDFS file system of the HBase cluster +kylin.storage.hbase.cluster-hdfs-config-file specifies HDFS configuration file pointing to the HBase cluster +kylin.web.timezone GMT+8 specifies the time zone used by Kylin’s REST service. The default value is GMT+8. +kylin.web.cross-domain-enabled TRUE whether cross-domain access is supported. The default value is TRUE +kylin.web.export-allow-admin TRUE whether to support administrator user export information. The default value is TRUE +kylin.web.export-allow-other TRUE whether to support other users to export information. The default value is TRUE +kylin.web.dashboard-enabled FALSE whether to enable Dashboard. The default value is FALSE +kylin.metadata.url kylin_metadata@hbase specifies the metadata path +kylin.metadata.dimension-encoding-max-length 256 specifies the maximum length when the dimension is used as Rowkeys with fix_length encoding. The default value is 256. +kylin.metadata.sync-retries 3 specifies the number of Metadata sync retries. The default value is 3. +kylin.metadata.sync-error-handler DefaultSyncErrorHandler The default value is DefaultSyncErrorHandler +kylin.metadata.check-copy-on-write FALSE whether clear metadata cache, default value is FALSE +kylin.metadata.hbase-client-scanner-timeout-period 10000 specifies the total timeout between the RPC call initiated by the HBase client. The default value is 10000 (ms). +kylin.metadata.hbase-rpc-timeout 5000 specifies the timeout for HBase to perform RPC operations. The default value is 5000 (ms). +kylin.metadata.hbase-client-retries-number 1 specifies the number of HBase retries. The default value is 1 (times). +kylin.metadata.resource-store-provider.jdbc org.apache.kylin.common.persistence.JDBCResourceStore specifies the class used by JDBC. The default value is org.apache.kylin.common.persistence.JDBCResourceStore +kylin.metadata.jdbc.dialect specifies JDBC dialect +kylin.metadata.jdbc.json-always-small-cell TRUE The default value is TRUE +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold 100 The default value is 100 (MB) +kylin.metadata.jdbc.small-cell-meta-size-error-threshold 1 The default value is 1 (GB) +kylin.metadata.jdbc.max-cell-size 1 The default value is 1 (MB) +kylin.source.hive.client cli specifies the Hive command line type. Optional values include cli or beeline. The default value is cli. +kylin.source.hive.beeline-shell specifies the absolute path of the Beeline shell. The default is beeline +kylin.source.hive.beeline-params when using Beeline as the Client tool for Hive, user need to configure this parameter to provide more information to Beeline +kylin.source.hive.enable-sparksql-for-table-ops TRUE the default value is FALSE, which needs to be set to TRUE when using SparkSQL +kylin.source.hive.sparksql-beeline-shell when using SparkSQL Beeline as the client tool for Hive, user need to configure this parameter as /path/to/spark-client/bin/beeline +kylin.source.hive.sparksql-beeline-params when using SparkSQL Beeline as the Client tool for Hive,user need to configure this parameter to provide more information to SparkSQL +kylin.source.default specifies the type of data source used by JDBC +kylin.source.jdbc.connection-url specifies JDBC connection string +kylin.source.jdbc.driver specifies JDBC driver class name +kylin.source.jdbc.dialect default specifies JDBC dialect. The default value is default +kylin.source.jdbc.user specifies JDBC connection username +kylin.source.jdbc.pass specifies JDBC connection password +kylin.source.jdbc.sqoop-home specifies Sqoop installation path +kylin.source.jdbc.sqoop-mapper-num 4 specifies how many slices should be split. Sqoop will run a mapper for each slice. The default value is 4. +kylin.source.jdbc.field-delimiter \ specifies the field separator. The default value is \ +kylin.source.hive.default-varchar-precision varchar specifies the maximum length of the varchar field. The default value is 256. +kylin.source.hive.default-char-precision 255 specifies the maximum length of the char field. The default value is 255. +kylin.source.hive.default-decimal-precision decimal specifies the precision of the decimal field. The default value is 19 +kylin.source.hive.default-decimal-scale decimal specifies the scale of the decimal field. The default value is 4. +kylin.cube.ignore-signature-inconsistency FALSE The signature in Cube desc ensures that the cube is not changed to a corrupt state. The default value is FALSE +kylin.cube.aggrgroup.max-combination 32768 specifies the max combination number of aggregation groups. The default value is 32768. +kylin.cube.aggrgroup.is-mandatory-only-valid TRUE whether to allow Cube contains only Base Cuboid. The default value is FALSE, set to TRUE when using Spark Cubing +kylin.cube.rowkey.max-size 63 specifies the maximum number of columns that can be set to Rowkeys. The default value is 63, and it can not be more than 63. +kylin.cube.allow-appear-in-multiple-projects whether to allow a cube to appear in multiple projects +kylin.cube.gtscanrequest-serialization-level 1 the default value is 1 +kylin.web.hide-measures RAW hides some measures that may not be needed, the default value is RAW. +kylin.cube.size-estimate-ratio 0.25 normal cube, default value is 0.25 +kylin.cube.size-estimate-memhungry-ratio Deprecated, default is 0.05 +kylin.cube.size-estimate-countdistinct-ratio 0.5 Cube Size Estimation with count distinct h= metric, default value is 0.5 +kylin.cube.size-estimate-topn-ratio 0.5 Cube Size Estimation with TopN metric, default value is 0.5 +kylin.cube.algorithm auto specifies the algorithm of the Build Cube. Optional values include auto, layer and inmem. The default value is auto, that is, Kylin will dynamically select an algorithm by collecting data ( Layer or inmem), if user knows Kylin, user data and cluster condition well, user can directly set the algorithm. +kylin.cube.algorithm.layer-or-inmem-threshold 7 the default value is 7 +kylin.cube.algorithm.inmem-split-limit 500 the default value is 500 +kylin.cube.algorithm.inmem-concurrent-threads 1 the default value is 1 +kylin.job.sampling-percentage 100 specifies the data sampling percentage. The default value is 100. +kylin.cube.is-automerge-enabled TRUE whether to enable auto-merge. The default value is TRUE. When this parameter is set to FALSE, the auto-merge function will be turned off, even if it is enabled in Cube Design. +kylin.snapshot.max-mb 300 specifies the max size of the snapshot. The default value is 300(M) +kylin.snapshot.max-cache-entry 500 The maximum number of snapshots that can be stored in the cache. The default value is 500. +kylin.snapshot.ext.shard-mb 500 specifies the size of HBase shard. The default value is 500(M). +kylin.snapshot.ext.local.cache.path lookup_cache specifies local cache path, default value is lookup_cache +kylin.snapshot.ext.local.cache.max-size-gb specifies local snapshot cache size, default is 200(M) +kylin.storage.default 2 specifies the default build engine. The default value is 2, which means HBase. +kylin.source.hive.keep-flat-table FALSE whether to keep the Hive intermediate table after the build job is complete. The default value is FALSE +kylin.source.hive.database-for-flat-table default specifies the name of the Hive database that stores the Hive intermediate table. The default is default. Make sure that the user who started the Kylin instance has permission to operate the database. +kylin.source.hive.flat-table-storage-format SEQUENCEFILE specifies the storage format of the Hive intermediate table. The default value is SEQUENCEFILE +kylin.source.hive.flat-table-field-delimiter \u001F specifies the delimiter of the Hive intermediate table. The default value is \u001F +kylin.source.hive.intermediate-table-prefix kylin_intermediate_ specifies the table name prefix of the Hive intermediate table. The default value is kylin_intermediate_ +kylin.source.hive.redistribute-flat-table TRUE whether to redistribute the Hive flat table. The default value is TRUE +kylin.source.hive.redistribute-column-count 3 number of redistributed columns. The default value is 3 +kylin.source.hive.table-dir-create-first FALSE the default value is FALSE +kylin.storage.partition.aggr-spill-enabled TRUE the default value is TRUE +kylin.engine.mr.lib-dir specifies the path to the jar package used by the MapReduce job +kylin.engine.mr.reduce-input-mb 500 used to estimate the number of Reducers. The default value is 500(MB). +kylin.engine.mr.reduce-count-ratio 1.0 used to estimate the number of Reducers. The default value is 1.0 +kylin.engine.mr.min-reducer-number specifies the minimum number of Reducers in the MapReduce job. The default is 1 +kylin.engine.mr.max-reducer-number specifies the maximum number of Reducers in the MapReduce job. The default is 500. +kylin.engine.mr.mapper-input-rows 1000000 specifies the number of rows that each Mapper can handle. The default value is 1000000. If user change this value, it will start more Mapper. +kylin.engine.mr.max-cuboid-stats-calculator-number 1 specifies the number of threads used to calculate Cube statistics. The default value is 1 +kylin.engine.mr.build-dict-in-reducer TRUE whether to build the dictionary in the Reduce phase of the build job Extract Fact Table Distinct Columns. The default value is TRUE +kylin.engine.mr.yarn-check-interval-seconds 10 How often the build engine is checked for the status of the Hadoop job. The default value is 10(s) +kylin.engine.mr.use-local-classpath TRUE whether to use local mapreduce application classpath. The default value is TRUE +kylin.dictionary.use-forest-trie TRUE The default value is TRUE +kylin.dictionary.forest-trie-max-mb 500 The default value is 500 +kylin.dictionary.max-cache-entry 3000 The default value is 3000 +kylin.dictionary.growing-enabled FALSE The default value is FALSE +kylin.dictionary.append-entry-size 10000000 The default value is 10000000 +kylin.dictionary.append-max-versions 3 The default value is 3 +kylin.dictionary.append-version-ttl 259200000 The default value is 259200000 +kylin.dictionary.resuable FALSE whether to reuse the dictionary. The default value is FALSE +kylin.dictionary.shrunken-from-global-enabled TRUE whether to reduce the size of global dictionary. The default value is TRUE +kylin.engine.mr.build-uhc-dict-in-additional-step TRUE the default value is FALSE, set to TRUE +kylin.engine.mr.uhc-reducer-count 1 the default value is 1, which can be set to 5 to allocate 5 Reducers for each super-high base column. +kylin.engine.spark-conf.spark.master yarn specifies the Spark operation mode. The default value is yarn +kylin.engine.spark-conf.spark.submit.deployMode cluster specifies the deployment mode of Spark on YARN. The default value is cluster +kylin.engine.spark-conf.spark.yarn.queue default specifies the Spark resource queue. The default value is default +kylin.engine.spark-conf.spark.driver.memory 2G specifies the Spark Driver memory The default value is 2G. +kylin.engine.spark-conf.spark.executor.memory 4G specifies the Spark Executor memory. The default value is 4G. +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead 1024 specifies the size of the Spark Executor heap memory. The default value is 1024(MB). +kylin.engine.spark-conf.spark.executor.cores 1 specifies the number of cores available for a single Spark Executor. The default value is 1 +kylin.engine.spark-conf.spark.network.timeout specifies the Spark network timeout period, 600 +kylin.engine.spark-conf.spark.executor.instances 1 specifies the number of Spark Executors owned by an Application. The default value is 1 +kylin.engine.spark-conf.spark.eventLog.enabled TRUE whether to record the Spark event. The default value is TRUE +kylin.engine.spark-conf.spark.hadoop.dfs.replication replication number of HDFS, default is 2 +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress TRUE whether to compress the output. The default value is TRUE +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec org.apache.hadoop.io.compress.DefaultCodec specifies Output compression, default is org.apache.hadoop.io.compress.DefaultCodec +kylin.engine.spark.rdd-partition-cut-mb 10 Kylin uses the size of this parameter to split the partition. The default value is 10 (MB) +kylin.engine.spark.min-partition 1 specifies the minimum number of partitions. The default value is 1 +kylin.engine.spark.max-partition specifies maximum number of partitions, default is 5000 +kylin.engine.spark.storage-level MEMORY_AND_DISK_SER specifies RDD partition data cache level, default value is MEMORY_AND_DISK_SER +kylin.engine.spark-conf-mergedict.spark.executor.memory 6G whether to request more memory for merging dictionary.The default value is 6G. +kylin.engine.spark-conf-mergedict.spark.memory.fraction 0.2 specifies the percentage of memory reserved for the system. The default value is 0.2 +kylin.engine.livy-conf.livy-enabled FALSE whether to enable Livy as submit Spark job service. The default value is FALSE +kylin.engine.livy-conf.livy-url http://127.0.0.1:8998 specifies the URL of Livy. Such as http +kylin.engine.spark-conf.spark.shuffle.service.enabled whether to enable shuffle service +kylin.engine.spark-conf.spark.dynamicAllocation.enabled whether to enable Spark Dynamic Allocation +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors specifies the initial number of Executors +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors specifies the minimum number of Executors retained +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors specifies the maximum number of Executors applied for +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout 60 specifies the threshold of Executor being removed after being idle. The default value is 60(s) +kylin.job.log-dir /tmp/kylin/logs the default value is /tmp/kylin/logs +kylin.job.allow-empty-segment TRUE whether tolerant data source is empty. The default value is TRUE +kylin.job.max-concurrent-jobs specifies maximum build concurrency, default is 10 +kylin.job.retry 0 specifies retry times after the job is failed. The default value is 0 +kylin.job.retry-interval 30000 specifies retry interval in milliseconds. The default value is 30000 +kylin.job.scheduler.priority-considered FALSE whether to consider the job priority. The default value is FALSE +kylin.job.scheduler.priority-bar-fetch-from-queue 20 specifies the time interval for getting jobs from the priority queue. The default value is 20(s) +kylin.job.scheduler.poll-interval-second 30 The time interval for getting the job from the queue. The default value is 30(s) +kylin.job.error-record-threshold 0 specifies the threshold for the job to throw an error message. The default value is 0 +kylin.job.cube-auto-ready-enabled TRUE whether to enable Cube automatically after the build is complete. The default value is TRUE +kylin.cube.max-building-segments 10 specifies the maximum number of building job for the one Cube. The default value is 10 +kylin.job.notification-enabled FALSE whether to notify the email when the job succeeds or fails. The default value is FALSE +kylin.job.notification-mail-enable-starttls FALSE # whether to enable starttls. The default value is FALSE +kylin.job.notification-mail-host specifies the SMTP server address of the mail +kylin.job.notification-mail-port 25 specifies the SMTP server port of the mail. The default value is 25 +kylin.job.notification-mail-username specifies the login user name of the mail +kylin.job.notification-mail-password specifies the username and password of the email +kylin.job.notification-mail-sender specifies the email address of the email +kylin.job.notification-admin-emails specifies the administrator’s mailbox for email notifications +kylin.cube.cubeplanner.enabled TRUE whether to enable Cube Planner, The default value is TRUE +kylin.server.query-metrics2-enabled TRUE the default value is FALSE, set to TRUE to collect query metrics into dropwizard +kylin.metrics.reporter-query-enabled TRUE the default value is TRUE +kylin.metrics.reporter-job-enabled TRUE the default value is TRUE +kylin.metrics.monitor-enabled TRUE the default value is TRUE +kylin.cube.cubeplanner.enabled-for-existing-cube TRUE whether to enable Cube Planner for the existing Cube. The default value is TRUE +kylin.cube.cubeplanner.algorithm-threshold-greedy 8 the default value is 8 +kylin.cube.cubeplanner.expansion-threshold 15.0 the default value is 15.0 +kylin.cube.cubeplanner.recommend-cache-max-size 200 the default value is 200 +kylin.cube.cubeplanner.query-uncertainty-ratio 0.1 the default value is 0.1 +kylin.cube.cubeplanner.bpus-min-benefit-ratio 0.01 the default value is 0.01 +kylin.cube.cubeplanner.algorithm-threshold-genetic 23 the default value is 23 +kylin.storage.hbase.table-name-prefix KYLIN_ specifies the prefix of HTable. The default value is KYLIN_ +kylin.storage.hbase.namespace default specifies the default namespace of HBase Storage. The default value is default +kylin.storage.hbase.coprocessor-local-jar specifies jar package related to HBase coprocessor +kylin.storage.hbase.coprocessor-mem-gb 3.0 specifies the HBase coprocessor memory. The default value is 3.0(GB). +kylin.storage.hbase.run-local-coprocessor FALSE whether to run the local HBase coprocessor. The default value is FALSE +kylin.storage.hbase.coprocessor-timeout-seconds 0 specifies the timeout period. The default value is 0 +kylin.storage.hbase.region-cut-gb specifies the size of a single Region, default is 5.0 +kylin.storage.hbase.min-region-count 1 specifies the minimum number of regions. The default value is 1 +kylin.storage.hbase.max-region-count 500 specifies the maximum number of Regions. The default value is 500 +kylin.storage.hbase.hfile-size-gb 2.0 specifies the HFile size. The default value is 2.0(GB) +kylin.storage.hbase.max-scan-result-bytes 5242880 specifies the maximum value of the scan return. The default value is 5242880 (byte), which is 5 (MB). +kylin.storage.hbase.compression-codec none whether it is compressed. The default value is none, that is, compression is not enabled +kylin.storage.hbase.rowkey-encoding FAST_DIFF specifies the encoding method of Rowkey. The default value is FAST_DIFF +kylin.storage.hbase.block-size-bytes 1048576 the default value is 1048576 +kylin.storage.hbase.small-family-block-size-bytes 65536 specifies the block size. The default value is 65536 (byte), which is 64 (KB). +kylin.storage.hbase.owner-tag whoami@kylin.apache.org specifies the owner of the Kylin platform. The default value is whoami@kylin.apache.org +kylin.storage.hbase.endpoint-compress-result TRUE whether to return the compression result. The default value is TRUE +kylin.storage.hbase.max-hconnection-threads 2048 specifies the maximum number of connection threads. The default value is 2048. +kylin.storage.hbase.core-hconnection-threads 2048 specifies the number of core connection threads. The default value is 2048. +kylin.storage.hbase.hconnection-threads-alive-seconds 60 specifies the thread lifetime. The default value is 60. +kylin.storage.hbase.replication-scope 0 specifies the cluster replication range. The default value is 0 +kylin.storage.hbase.scan-cache-rows 1024 specifies the number of scan cache lines. The default value is 1024. +kylin.secondary.storage.url kylin.secondary.storage.url=hostname:kylin_metadata@hbase,hbase.zookeeper.quorum=hostname:11000,zookeeper.znode.parent=/hbase/ specifies the secondary hbase cluster and metadata path. Such as kylin.secondary.storage.url=hostname +kylin.job.execute-output.max-size 10484760 The max length of job output. The default value is 10484760. +kylin.engine.spark.output.max-size 10484760 The max length of spark job output. The default value is 10484760. +kylin.stream.job.dfs.block.size 16M specifies the HDFS block size of the streaming Base Cuboid job using. The default value is 16M. +kylin.stream.index.path stream_index specifies the local path to store segment cache files(including fragment and checkpoint files). The default value is stream_index. +kylin.stream.node port specifies the node of coordinator/receiver. Value should be hostname +kylin.stream.metadata.store.type zk specifies the position of metadata store. The default value is zk. This entry is trivial because it has only one option. +kylin.stream.receiver.use-threads-per-query 8 specifies the threads number that each query use. The default value is 8. +kylin.stream.index.maxrows 50000 specifies the maximum number of the aggregated event keep in JVM heap. The default value is 50000. Try to advance it if you have enough heap size. +kylin.stream.cube-num-of-consumer-tasks 3 specifies the number of replica sets that share the whole topic partition. It affects how many partitions will be assigned to different replica sets. The default value is 3. +kylin.stream.segment.retention.policy purge specifies the strategy to process local segment cache when segment become IMMUTABLE. Optional values include purge and fullBuild. purge means when the segment become IMMUTABLE, it will be deleted. fullBuild means when the segment become IMMUTABLE, it will be uploaded to HDFS. The default value is fullBuild. +kylin.stream.build.additional.cuboids false whether to build additional Cuboids. The additional Cuboids mean the aggregation of Mandatory Dimensions that chosen in Cube Advanced Setting page. The default value is false. Only build Base Cuboid by default. Try to enable it if you care the QPS and most query pattern can be foresaw. +kylin.stream.cube.window 3600 specifies the length of duration of each segment, value in seconds. The default value is 3600. Please check detail atdeep-dive-real-time-olap. +kylin.stream.cube.duration 7200 specifies the wait time that a segment’s status changes from active to IMMUTABLE, value in seconds. The default value is 7200. Please check detail atdeep-dive-real-time-olap. +kylin.stream.cube.duration.max 43200 specifies the maximum duration that segment can keep active, value in seconds. The default value is 43200. Please check detail atdeep-dive-real-time-olap. +kylin.stream.checkpoint.file.max.num 5 specifies the maximum number of checkpoint file for each cube. The default value is 5. +kylin.stream.index.checkpoint.intervals 300 specifies the time interval between setting two checkpoints. The default value is 300. +kylin.stream.immutable.segments.max.num 100 specifies the maximum number of the IMMUTABLE segment in each Cube of the current streaming receiver, if exceed, consumption of current topic will be paused. The default value is 100. +kylin.stream.consume.offsets.latest true whether to consume from the latest offset or the earliest offset. The default value is true. +kylin.stream.assigner org.apache.kylin.stream.coordinator.assign.Assigner specifies the implementation class which used to assign the topic partition to different replica sets. The class should be the implementation class of org.apache.kylin.stream.coordinator.assign.Assigner. The default value is DefaultAssigner. +kylin.stream.coordinator.client.timeout.millsecond 5000 specifies the connection timeout of the coordinator client. The default value is 5000. +kylin.stream.receiver.client.timeout.millsecond 5000 specifies the connection timeout of the receiver client. The default value is 5000. +kylin.stream.receiver.http.max.threads 200 specifies the maximum connection threads of the receiver. The default value is 200. +kylin.stream.receiver.http.min.threads 10 specifies the minimum connection threads of the receiver. The default value is 10. +kylin.stream.receiver.query-core-threads 50 specifies the number of query threads be used for the current streaming receiver. The default value is 50. +kylin.stream.receiver.query-max-threads 200 specifies the maximum number of query threads be used for the current streaming receiver. The default value is 200. +kylin.stream.segment-max-fragments 50 specifies the maximum number of fragments that each segment keep. The default value is 50. +kylin.stream.segment-min-fragments 15 specifies the minimum number of fragments that each segment keep. The default value is 15. +kylin.stream.max-fragment-size-mb 300 specifies the maximum size of each fragment. The default value is 300. +kylin.stream.fragments-auto-merge-enable true whether to enable fragments auto merge in streaming receiver side. The default value is true. +kylin.stream.metrics.option specifies how to report metrics in streaming receiver side, option value are csv/console/jmx. +kylin.stream.event.timezone HOUR_START specifies which timezone should derived time column like HOUR_START/DAY_START used. +kylin.stream.auto-resubmit-after-discard-enabled whether to resubmit new building job automatically when finding previous job be discarded by user. +kylin.storage.clean-after-delete-operation FALSE whether to clean segment data in HBase and HDFS. The default value is FALSE. +kylin.query.skip-empty-segments TRUE whether to skip empty segments when querying. The default value is TRUE +kylin.query.large-query-threshold 1000000 specifies the maximum number of rows returned. The default value is 1000000. +kylin.query.security-enabled TRUE whether to check the ACL when querying. The default value is TRUE +kylin.query.security.table-acl-enabled TRUE whether to check the ACL of the corresponding table when querying. The default value is TRUE +kylin.query.calcite.extras-props.conformance LENIENT whether to strictly parsed. The default value is LENIENT +kylin.query.calcite.extras-props.caseSensitive TRUE whether is case sensitive. The default value is TRUE +kylin.query.calcite.extras-props.unquotedCasing TO_LOWER optional values include UNCHANGED, TO_UPPER and TO_LOWER. The default value is TO_UPPER, that is, all uppercase +kylin.query.calcite.extras-props.quoting BACK_TICK whether to add quotes, Optional values include DOUBLE_QUOTE, BACK_TICK and BRACKET. The default value is DOUBLE_QUOTE +kylin.query.statement-cache-max-num 50000 specifies the maximum number of cached PreparedStatements. The default value is 50000 +kylin.query.statement-cache-max-num-per-key 50 specifies the maximum number of PreparedStatements per key cache. The default value is 50. +kylin.query.enable-dict-enumerator FALSE whether to enable the dictionary enumerator. The default value is FALSE +kylin.query.enable-dynamic-column TRUE whether to enable dynamic columns. The default value is FALSE, set to TRUE to query the number of rows in a column that do not contain NULL +kylin.storage.hbase.max-fuzzykey-scan 200 specifies the threshold for the scanned fuzzy key. If the value is exceeded, the fuzzy key will not be scanned. The default value is 200. +kylin.storage.hbase.max-fuzzykey-scan-split 1 split the large fuzzy key set to reduce the number of fuzzy keys per scan. The default value is 1 +kylin.storage.hbase.max-visit-scanrange 1000000 the default value is 1000000 +kylin.query.cache-enabled TRUE +kylin.query.cache-threshold-duration 2000 the query duration exceeding the threshold is saved in the cache. The default value is 2000 (ms). +kylin.query.cache-threshold-scan-count 10240 the row count scanned in the query exceeding the threshold is saved in the cache. The default value is 10240 (rows). +kylin.query.cache-threshold-scan-bytes 1048576 the bytes scanned in the query exceeding the threshold is saved in the cache. The default value is 1048576 (byte). +kylin.query.timeout-seconds 0 specifies the query timeout in seconds. The default value is 0, that is, no timeout limit on query. If the value is less than 60, it will set to 60 seconds. +kylin.query.timeout-seconds-coefficient 0.5 specifies the coefficient of the query timeout seconds. The default value is 0.5. +kylin.query.max-scan-bytes 0 specifies the maximum bytes scanned by the query. The default value is 0, that is, there is no limit. +kylin.storage.partition.max-scan-bytes 3221225472 specifies the maximum number of bytes for the query scan. The default value is 3221225472 (bytes), which is 3GB. +kylin.query.max-return-rows 5000000 specifies the maximum number of rows returned by the query. The default value is 5000000. +kylin.query.badquery-stacktrace-depth 10 specifies the depth of stack trace. The default value is 10. +kylin.query.badquery-history-number 50 specifies the showing number of bad query history. The default value is 50. +kylin.query.badquery-alerting-seconds 90 The default value is 90, if the time of running is greater than the value of this property, it will print the log of query firstly, including (duration, project, thread, user, query id). Whether to save the recent query, it depends on another property. Secondly, record the stack log, the depth of log depend on another property, so as to the analysis later +kylin.query.badquery-persistent-enabled true The default value is true, it will save the recent bad query, and cannot override in Cube-level +kylin.query.pushdown.runner-class-name org.apache.kylin.query.adhoc.PushDownRunnerJdbcImpl whether to enable query pushdown +kylin.query.pushdown.jdbc.url specifies JDBC URL +kylin.query.pushdown.jdbc.driver org.apache.hive.jdbc.HiveDriver specifies JDBC driver class name. The default value is org.apache.hive.jdbc.HiveDriver +kylin.query.pushdown.jdbc.username hive specifies the Username of the JDBC database. The default value is hive +kylin.query.pushdown.jdbc.password specifies JDBC password for the database. The default value is +kylin.query.pushdown.jdbc.pool-max-total 8 specifies the maximum number of connections to the JDBC connection pool. The default value is 8. +kylin.query.pushdown.jdbc.pool-max-idle 8 specifies the maximum number of idle connections for the JDBC connection pool. The default value is 8. +kylin.query.pushdown.jdbc.pool-min-idle 0 the default value is 0 +kylin.query.pushdown.update-enabled FALSE specifies whether to enable update in Query Pushdown. The default value is FALSE +kylin.query.pushdown.cache-enabled FALSE whether to enable the cache of the pushdown query to improve the query efficiency of the same query. The default value is FALSE +kylin.query.force-limit -1 this parameter achieves the purpose of shortening the query duration by forcing a LIMIT clause for the select * statement. The default value is -1, and the parameter value is set to a positive integer, such as 1000, the value will be applied to the LIMIT clause, and the query will eventually be converted to select * from fact_table limit 1000 +kylin.storage.limit-push-down-enabled TRUE the default value is TRUE, set to FALSE to close the limit-pushdown of storage layer +kylin.query.flat-filter-max-children 500000 specifies the maximum number of filters when flatting filter. The default value is 500000 +kylin.server.query-metrics-enabled TRUE the default value is FALSE, set to TRUE to collect query metrics to JMX +kylin.security.profile saml specifies the way of security authentication, optional values include ldap, testing, saml, it should be set to ldap when integrating LDAP for SSO +kylin.security.ldap.connection-server ldap://ldap_server:389 specifies LDAP server, such as ldap +kylin.security.ldap.connection-username specifies LDAP username +kylin.security.ldap.connection-password specifies LDAP password +kylin.security.ldap.user-search-base specifies the scope of users synced to Kylin +kylin.security.ldap.user-search-pattern specifies the username for the login verification match +kylin.security.ldap.user-group-search-base specifies the scope of the user group synchronized to Kylin +kylin.security.ldap.user-group-search-filter specifies the type of user synced to Kylin +kylin.security.ldap.service-search-base need to be specifies when a service account is required to access Kylin +kylin.security.ldap.service-search-pattern need to be specifies when a service account is required to access Kylin +kylin.restclient.connection.default-max-per-route 20 max connection per route of Kylin +kylin.env.zookeeper-is-local false if zookeeper is local +kylin.server.auth-user-cache.expire-seconds specifies LDAP user information cache time, default is 300(s) +kylin.server.auth-user-cache.max-entries specifies maximum number of LDAP users, default is 100 +kylin.server.external-acl-provider org.apache.ranger.authorization.kylin.authorizer.RangerKylinAuthorizer +kylin.env.zookeeper-acl-enabled FALSE Enable ZooKeeper ACL to prevent unauthorized users from accessing the Znode or reducing the risk of bad operations resulting from this. The default value is FALSE +kylin.env.zookeeper.zk-auth digest:ADMIN:KYLIN use username +kylin.env.zookeeper.zk-acl world:anyone:rwcda Use a single ID as the ACL identifier. The default value is world +kylin.query.lazy-query-enabled false whether to lazily answer the queries that be sent repeatedly in a short time (hold it until the previous query be returned, and then reuse the result); The default value is false. +kylin.query.cache-signature-enabled false whether to use the signature of a query to determine the cache’s validity. The signature is calculated by the cube/hybrid list of the project, their last build time and other information (at the moment when cache is persisted); It’s default value is false, highly recommend to set it to true. +kylin.query.segment-cache-enabled false whether to cache the segment level returned data (from HBase storage) into Memcached. This feature is mainly for the cube that built very frequently (e.g, streaming cube, whose last build time always changed a couple minutes, the whole SQL statement level cache is very likely be cleaned; in this case, the by-segment cache can reduce the I/O). This only works when Memcached configured, the default value is false. +kylin.resourcestore.reconnect-base-ms 100 Reconnect second +kylin.job.remote-cli-port 22 client port diff --git a/core/default_configs/kylin-cube-default.tsv b/core/default_configs/kylin-cube-default.tsv new file mode 100644 index 00000000..a33a595a --- /dev/null +++ b/core/default_configs/kylin-cube-default.tsv @@ -0,0 +1,283 @@ +kylin.env.hdfs-working-dir /kylin specifies the HDFS path used by Kylin service. The default value is /kylin. Make sure that the user who starts the Kylin instance has permission to read and write to this directory. +kylin.env PROD specifies the purpose of the Kylin deployment. Optional values include DEV, QA and PROD. The default value is DEV. Some developer functions will be enabled in DEV mode. +kylin.env.zookeeper-base-path /kylin specifies the ZooKeeper path used by the Kylin service. The default value is /kylin +kylin.env.zookeeper-connect-string specifies the ZooKeeper connection string. If it is empty, use HBase’s ZooKeeper +kylin.env.hadoop-conf-dir HADOOP_CONF_DIR specifies the Hadoop configuration file directory. If not specified, get HADOOP_CONF_DIR in the environment. +kylin.server.mode query Optional values include all, job and query, among them all is the default one. job mode means the instance schedules Cube job only; query mode means the instance serves SQL queries only; all mode means the instance handles both of them. +kylin.server.cluster-name specifies the cluster name +kylin.job.scheduler.default 2 to enable the distributed job scheduler. +kylin.job.lock org.apache.kylin.storage.hbase.util.ZookeeperJobLock to enable distributed job lock +kylin.job.scheduler.safemode TRUE to enable job scheduler safemode. In safemode, Newly submitted job will not be executed +kylin.job.scheduler.safemode.runable-projects project1,project2 provide list of projects as exceptional case in safemode. +kylin.storage.hbase.cluster-fs specifies the HDFS file system of the HBase cluster +kylin.storage.hbase.cluster-hdfs-config-file specifies HDFS configuration file pointing to the HBase cluster +kylin.web.timezone GMT+8 specifies the time zone used by Kylin’s REST service. The default value is GMT+8. +kylin.web.cross-domain-enabled TRUE whether cross-domain access is supported. The default value is TRUE +kylin.web.export-allow-admin TRUE whether to support administrator user export information. The default value is TRUE +kylin.web.export-allow-other TRUE whether to support other users to export information. The default value is TRUE +kylin.web.dashboard-enabled FALSE whether to enable Dashboard. The default value is FALSE +kylin.metadata.url kylin_metadata@hbase specifies the metadata path +kylin.metadata.dimension-encoding-max-length 256 specifies the maximum length when the dimension is used as Rowkeys with fix_length encoding. The default value is 256. +kylin.metadata.sync-retries 3 specifies the number of Metadata sync retries. The default value is 3. +kylin.metadata.sync-error-handler DefaultSyncErrorHandler The default value is DefaultSyncErrorHandler +kylin.metadata.check-copy-on-write FALSE whether clear metadata cache, default value is FALSE +kylin.metadata.hbase-client-scanner-timeout-period 10000 specifies the total timeout between the RPC call initiated by the HBase client. The default value is 10000 (ms). +kylin.metadata.hbase-rpc-timeout 5000 specifies the timeout for HBase to perform RPC operations. The default value is 5000 (ms). +kylin.metadata.hbase-client-retries-number 1 specifies the number of HBase retries. The default value is 1 (times). +kylin.metadata.resource-store-provider.jdbc org.apache.kylin.common.persistence.JDBCResourceStore specifies the class used by JDBC. The default value is org.apache.kylin.common.persistence.JDBCResourceStore +kylin.metadata.jdbc.dialect specifies JDBC dialect +kylin.metadata.jdbc.json-always-small-cell TRUE The default value is TRUE +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold 100 The default value is 100 (MB) +kylin.metadata.jdbc.small-cell-meta-size-error-threshold 1 The default value is 1 (GB) +kylin.metadata.jdbc.max-cell-size 1 The default value is 1 (MB) +kylin.source.hive.client cli specifies the Hive command line type. Optional values include cli or beeline. The default value is cli. +kylin.source.hive.beeline-shell specifies the absolute path of the Beeline shell. The default is beeline +kylin.source.hive.beeline-params when using Beeline as the Client tool for Hive, user need to configure this parameter to provide more information to Beeline +kylin.source.hive.enable-sparksql-for-table-ops TRUE the default value is FALSE, which needs to be set to TRUE when using SparkSQL +kylin.source.hive.sparksql-beeline-shell when using SparkSQL Beeline as the client tool for Hive, user need to configure this parameter as /path/to/spark-client/bin/beeline +kylin.source.hive.sparksql-beeline-params when using SparkSQL Beeline as the Client tool for Hive,user need to configure this parameter to provide more information to SparkSQL +kylin.source.default specifies the type of data source used by JDBC +kylin.source.jdbc.connection-url specifies JDBC connection string +kylin.source.jdbc.driver specifies JDBC driver class name +kylin.source.jdbc.dialect default specifies JDBC dialect. The default value is default +kylin.source.jdbc.user specifies JDBC connection username +kylin.source.jdbc.pass specifies JDBC connection password +kylin.source.jdbc.sqoop-home specifies Sqoop installation path +kylin.source.jdbc.sqoop-mapper-num 4 specifies how many slices should be split. Sqoop will run a mapper for each slice. The default value is 4. +kylin.source.jdbc.field-delimiter \ specifies the field separator. The default value is \ +kylin.source.hive.default-varchar-precision varchar specifies the maximum length of the varchar field. The default value is 256. +kylin.source.hive.default-char-precision 255 specifies the maximum length of the char field. The default value is 255. +kylin.source.hive.default-decimal-precision decimal specifies the precision of the decimal field. The default value is 19 +kylin.source.hive.default-decimal-scale decimal specifies the scale of the decimal field. The default value is 4. +kylin.cube.ignore-signature-inconsistency FALSE The signature in Cube desc ensures that the cube is not changed to a corrupt state. The default value is FALSE +kylin.cube.aggrgroup.max-combination 32768 specifies the max combination number of aggregation groups. The default value is 32768. +kylin.cube.aggrgroup.is-mandatory-only-valid TRUE whether to allow Cube contains only Base Cuboid. The default value is FALSE, set to TRUE when using Spark Cubing +kylin.cube.rowkey.max-size 63 specifies the maximum number of columns that can be set to Rowkeys. The default value is 63, and it can not be more than 63. +kylin.cube.allow-appear-in-multiple-projects whether to allow a cube to appear in multiple projects +kylin.cube.gtscanrequest-serialization-level 1 the default value is 1 +kylin.web.hide-measures RAW hides some measures that may not be needed, the default value is RAW. +kylin.cube.size-estimate-ratio 0.25 normal cube, default value is 0.25 +kylin.cube.size-estimate-memhungry-ratio Deprecated, default is 0.05 +kylin.cube.size-estimate-countdistinct-ratio 0.5 Cube Size Estimation with count distinct h= metric, default value is 0.5 +kylin.cube.size-estimate-topn-ratio 0.5 Cube Size Estimation with TopN metric, default value is 0.5 +kylin.cube.algorithm auto specifies the algorithm of the Build Cube. Optional values include auto, layer and inmem. The default value is auto, that is, Kylin will dynamically select an algorithm by collecting data ( Layer or inmem), if user knows Kylin, user data and cluster condition well, user can directly set the algorithm. +kylin.cube.algorithm.layer-or-inmem-threshold 7 the default value is 7 +kylin.cube.algorithm.inmem-split-limit 500 the default value is 500 +kylin.cube.algorithm.inmem-concurrent-threads 1 the default value is 1 +kylin.job.sampling-percentage 100 specifies the data sampling percentage. The default value is 100. +kylin.cube.is-automerge-enabled TRUE whether to enable auto-merge. The default value is TRUE. When this parameter is set to FALSE, the auto-merge function will be turned off, even if it is enabled in Cube Design. +kylin.snapshot.max-mb 300 specifies the max size of the snapshot. The default value is 300(M) +kylin.snapshot.max-cache-entry 500 The maximum number of snapshots that can be stored in the cache. The default value is 500. +kylin.snapshot.ext.shard-mb 500 specifies the size of HBase shard. The default value is 500(M). +kylin.snapshot.ext.local.cache.path lookup_cache specifies local cache path, default value is lookup_cache +kylin.snapshot.ext.local.cache.max-size-gb specifies local snapshot cache size, default is 200(M) +kylin.storage.default 2 specifies the default build engine. The default value is 2, which means HBase. +kylin.source.hive.keep-flat-table FALSE whether to keep the Hive intermediate table after the build job is complete. The default value is FALSE +kylin.source.hive.database-for-flat-table default specifies the name of the Hive database that stores the Hive intermediate table. The default is default. Make sure that the user who started the Kylin instance has permission to operate the database. +kylin.source.hive.flat-table-storage-format SEQUENCEFILE specifies the storage format of the Hive intermediate table. The default value is SEQUENCEFILE +kylin.source.hive.flat-table-field-delimiter \u001F specifies the delimiter of the Hive intermediate table. The default value is \u001F +kylin.source.hive.intermediate-table-prefix kylin_intermediate_ specifies the table name prefix of the Hive intermediate table. The default value is kylin_intermediate_ +kylin.source.hive.redistribute-flat-table TRUE whether to redistribute the Hive flat table. The default value is TRUE +kylin.source.hive.redistribute-column-count 3 number of redistributed columns. The default value is 3 +kylin.source.hive.table-dir-create-first FALSE the default value is FALSE +kylin.storage.partition.aggr-spill-enabled TRUE the default value is TRUE +kylin.engine.mr.lib-dir specifies the path to the jar package used by the MapReduce job +kylin.engine.mr.reduce-input-mb 500 used to estimate the number of Reducers. The default value is 500(MB). +kylin.engine.mr.reduce-count-ratio 1.0 used to estimate the number of Reducers. The default value is 1.0 +kylin.engine.mr.min-reducer-number specifies the minimum number of Reducers in the MapReduce job. The default is 1 +kylin.engine.mr.max-reducer-number specifies the maximum number of Reducers in the MapReduce job. The default is 500. +kylin.engine.mr.mapper-input-rows 1000000 specifies the number of rows that each Mapper can handle. The default value is 1000000. If user change this value, it will start more Mapper. +kylin.engine.mr.max-cuboid-stats-calculator-number 1 specifies the number of threads used to calculate Cube statistics. The default value is 1 +kylin.engine.mr.build-dict-in-reducer TRUE whether to build the dictionary in the Reduce phase of the build job Extract Fact Table Distinct Columns. The default value is TRUE +kylin.engine.mr.yarn-check-interval-seconds 10 How often the build engine is checked for the status of the Hadoop job. The default value is 10(s) +kylin.engine.mr.use-local-classpath TRUE whether to use local mapreduce application classpath. The default value is TRUE +kylin.dictionary.use-forest-trie TRUE The default value is TRUE +kylin.dictionary.forest-trie-max-mb 500 The default value is 500 +kylin.dictionary.max-cache-entry 3000 The default value is 3000 +kylin.dictionary.growing-enabled FALSE The default value is FALSE +kylin.dictionary.append-entry-size 10000000 The default value is 10000000 +kylin.dictionary.append-max-versions 3 The default value is 3 +kylin.dictionary.append-version-ttl 259200000 The default value is 259200000 +kylin.dictionary.resuable FALSE whether to reuse the dictionary. The default value is FALSE +kylin.dictionary.shrunken-from-global-enabled TRUE whether to reduce the size of global dictionary. The default value is TRUE +kylin.engine.mr.build-uhc-dict-in-additional-step TRUE the default value is FALSE, set to TRUE +kylin.engine.mr.uhc-reducer-count 1 the default value is 1, which can be set to 5 to allocate 5 Reducers for each super-high base column. +kylin.engine.spark-conf.spark.master yarn specifies the Spark operation mode. The default value is yarn +kylin.engine.spark-conf.spark.submit.deployMode cluster specifies the deployment mode of Spark on YARN. The default value is cluster +kylin.engine.spark-conf.spark.yarn.queue default specifies the Spark resource queue. The default value is default +kylin.engine.spark-conf.spark.driver.memory 2G specifies the Spark Driver memory The default value is 2G. +kylin.engine.spark-conf.spark.executor.memory 4G specifies the Spark Executor memory. The default value is 4G. +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead 1024 specifies the size of the Spark Executor heap memory. The default value is 1024(MB). +kylin.engine.spark-conf.spark.executor.cores 1 specifies the number of cores available for a single Spark Executor. The default value is 1 +kylin.engine.spark-conf.spark.network.timeout specifies the Spark network timeout period, 600 +kylin.engine.spark-conf.spark.executor.instances 1 specifies the number of Spark Executors owned by an Application. The default value is 1 +kylin.engine.spark-conf.spark.eventLog.enabled TRUE whether to record the Spark event. The default value is TRUE +kylin.engine.spark-conf.spark.hadoop.dfs.replication replication number of HDFS, default is 2 +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress TRUE whether to compress the output. The default value is TRUE +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec org.apache.hadoop.io.compress.DefaultCodec specifies Output compression, default is org.apache.hadoop.io.compress.DefaultCodec +kylin.engine.spark.rdd-partition-cut-mb 10 Kylin uses the size of this parameter to split the partition. The default value is 10 (MB) +kylin.engine.spark.min-partition 1 specifies the minimum number of partitions. The default value is 1 +kylin.engine.spark.max-partition specifies maximum number of partitions, default is 5000 +kylin.engine.spark.storage-level MEMORY_AND_DISK_SER specifies RDD partition data cache level, default value is MEMORY_AND_DISK_SER +kylin.engine.spark-conf-mergedict.spark.executor.memory 6G whether to request more memory for merging dictionary.The default value is 6G. +kylin.engine.spark-conf-mergedict.spark.memory.fraction 0.2 specifies the percentage of memory reserved for the system. The default value is 0.2 +kylin.engine.livy-conf.livy-enabled FALSE whether to enable Livy as submit Spark job service. The default value is FALSE +kylin.engine.livy-conf.livy-url http://127.0.0.1:8998 specifies the URL of Livy. Such as http +kylin.engine.spark-conf.spark.shuffle.service.enabled whether to enable shuffle service +kylin.engine.spark-conf.spark.dynamicAllocation.enabled whether to enable Spark Dynamic Allocation +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors specifies the initial number of Executors +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors specifies the minimum number of Executors retained +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors specifies the maximum number of Executors applied for +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout 60 specifies the threshold of Executor being removed after being idle. The default value is 60(s) +kylin.job.log-dir /tmp/kylin/logs the default value is /tmp/kylin/logs +kylin.job.allow-empty-segment TRUE whether tolerant data source is empty. The default value is TRUE +kylin.job.max-concurrent-jobs specifies maximum build concurrency, default is 10 +kylin.job.retry 0 specifies retry times after the job is failed. The default value is 0 +kylin.job.retry-interval 30000 specifies retry interval in milliseconds. The default value is 30000 +kylin.job.scheduler.priority-considered FALSE whether to consider the job priority. The default value is FALSE +kylin.job.scheduler.priority-bar-fetch-from-queue 20 specifies the time interval for getting jobs from the priority queue. The default value is 20(s) +kylin.job.scheduler.poll-interval-second 30 The time interval for getting the job from the queue. The default value is 30(s) +kylin.job.error-record-threshold 0 specifies the threshold for the job to throw an error message. The default value is 0 +kylin.job.cube-auto-ready-enabled TRUE whether to enable Cube automatically after the build is complete. The default value is TRUE +kylin.cube.max-building-segments 10 specifies the maximum number of building job for the one Cube. The default value is 10 +kylin.job.notification-enabled FALSE whether to notify the email when the job succeeds or fails. The default value is FALSE +kylin.job.notification-mail-enable-starttls FALSE # whether to enable starttls. The default value is FALSE +kylin.job.notification-mail-host specifies the SMTP server address of the mail +kylin.job.notification-mail-port 25 specifies the SMTP server port of the mail. The default value is 25 +kylin.job.notification-mail-username specifies the login user name of the mail +kylin.job.notification-mail-password specifies the username and password of the email +kylin.job.notification-mail-sender specifies the email address of the email +kylin.job.notification-admin-emails specifies the administrator’s mailbox for email notifications +kylin.cube.cubeplanner.enabled TRUE whether to enable Cube Planner, The default value is TRUE +kylin.server.query-metrics2-enabled TRUE the default value is FALSE, set to TRUE to collect query metrics into dropwizard +kylin.metrics.reporter-query-enabled TRUE the default value is TRUE +kylin.metrics.reporter-job-enabled TRUE the default value is TRUE +kylin.metrics.monitor-enabled TRUE the default value is TRUE +kylin.cube.cubeplanner.enabled-for-existing-cube TRUE whether to enable Cube Planner for the existing Cube. The default value is TRUE +kylin.cube.cubeplanner.algorithm-threshold-greedy 8 the default value is 8 +kylin.cube.cubeplanner.expansion-threshold 15.0 the default value is 15.0 +kylin.cube.cubeplanner.recommend-cache-max-size 200 the default value is 200 +kylin.cube.cubeplanner.query-uncertainty-ratio 0.1 the default value is 0.1 +kylin.cube.cubeplanner.bpus-min-benefit-ratio 0.01 the default value is 0.01 +kylin.cube.cubeplanner.algorithm-threshold-genetic 23 the default value is 23 +kylin.storage.hbase.table-name-prefix KYLIN_ specifies the prefix of HTable. The default value is KYLIN_ +kylin.storage.hbase.namespace default specifies the default namespace of HBase Storage. The default value is default +kylin.storage.hbase.coprocessor-local-jar specifies jar package related to HBase coprocessor +kylin.storage.hbase.coprocessor-mem-gb 3.0 specifies the HBase coprocessor memory. The default value is 3.0(GB). +kylin.storage.hbase.run-local-coprocessor FALSE whether to run the local HBase coprocessor. The default value is FALSE +kylin.storage.hbase.coprocessor-timeout-seconds 0 specifies the timeout period. The default value is 0 +kylin.storage.hbase.region-cut-gb specifies the size of a single Region, default is 5.0 +kylin.storage.hbase.min-region-count 1 specifies the minimum number of regions. The default value is 1 +kylin.storage.hbase.max-region-count 500 specifies the maximum number of Regions. The default value is 500 +kylin.storage.hbase.hfile-size-gb 2.0 specifies the HFile size. The default value is 2.0(GB) +kylin.storage.hbase.max-scan-result-bytes 5242880 specifies the maximum value of the scan return. The default value is 5242880 (byte), which is 5 (MB). +kylin.storage.hbase.compression-codec none whether it is compressed. The default value is none, that is, compression is not enabled +kylin.storage.hbase.rowkey-encoding FAST_DIFF specifies the encoding method of Rowkey. The default value is FAST_DIFF +kylin.storage.hbase.block-size-bytes 1048576 the default value is 1048576 +kylin.storage.hbase.small-family-block-size-bytes 65536 specifies the block size. The default value is 65536 (byte), which is 64 (KB). +kylin.storage.hbase.owner-tag whoami@kylin.apache.org specifies the owner of the Kylin platform. The default value is whoami@kylin.apache.org +kylin.storage.hbase.endpoint-compress-result TRUE whether to return the compression result. The default value is TRUE +kylin.storage.hbase.max-hconnection-threads 2048 specifies the maximum number of connection threads. The default value is 2048. +kylin.storage.hbase.core-hconnection-threads 2048 specifies the number of core connection threads. The default value is 2048. +kylin.storage.hbase.hconnection-threads-alive-seconds 60 specifies the thread lifetime. The default value is 60. +kylin.storage.hbase.replication-scope 0 specifies the cluster replication range. The default value is 0 +kylin.storage.hbase.scan-cache-rows 1024 specifies the number of scan cache lines. The default value is 1024. +kylin.secondary.storage.url kylin.secondary.storage.url=hostname:kylin_metadata@hbase,hbase.zookeeper.quorum=hostname:11000,zookeeper.znode.parent=/hbase/ specifies the secondary hbase cluster and metadata path. Such as kylin.secondary.storage.url=hostname +kylin.job.execute-output.max-size 10484760 The max length of job output. The default value is 10484760. +kylin.engine.spark.output.max-size 10484760 The max length of spark job output. The default value is 10484760. +kylin.stream.job.dfs.block.size 16M specifies the HDFS block size of the streaming Base Cuboid job using. The default value is 16M. +kylin.stream.index.path stream_index specifies the local path to store segment cache files(including fragment and checkpoint files). The default value is stream_index. +kylin.stream.node port specifies the node of coordinator/receiver. Value should be hostname +kylin.stream.metadata.store.type zk specifies the position of metadata store. The default value is zk. This entry is trivial because it has only one option. +kylin.stream.receiver.use-threads-per-query 8 specifies the threads number that each query use. The default value is 8. +kylin.stream.index.maxrows 50000 specifies the maximum number of the aggregated event keep in JVM heap. The default value is 50000. Try to advance it if you have enough heap size. +kylin.stream.cube-num-of-consumer-tasks 3 specifies the number of replica sets that share the whole topic partition. It affects how many partitions will be assigned to different replica sets. The default value is 3. +kylin.stream.segment.retention.policy purge specifies the strategy to process local segment cache when segment become IMMUTABLE. Optional values include purge and fullBuild. purge means when the segment become IMMUTABLE, it will be deleted. fullBuild means when the segment become IMMUTABLE, it will be uploaded to HDFS. The default value is fullBuild. +kylin.stream.build.additional.cuboids false whether to build additional Cuboids. The additional Cuboids mean the aggregation of Mandatory Dimensions that chosen in Cube Advanced Setting page. The default value is false. Only build Base Cuboid by default. Try to enable it if you care the QPS and most query pattern can be foresaw. +kylin.stream.cube.window 3600 specifies the length of duration of each segment, value in seconds. The default value is 3600. Please check detail atdeep-dive-real-time-olap. +kylin.stream.cube.duration 7200 specifies the wait time that a segment’s status changes from active to IMMUTABLE, value in seconds. The default value is 7200. Please check detail atdeep-dive-real-time-olap. +kylin.stream.cube.duration.max 43200 specifies the maximum duration that segment can keep active, value in seconds. The default value is 43200. Please check detail atdeep-dive-real-time-olap. +kylin.stream.checkpoint.file.max.num 5 specifies the maximum number of checkpoint file for each cube. The default value is 5. +kylin.stream.index.checkpoint.intervals 300 specifies the time interval between setting two checkpoints. The default value is 300. +kylin.stream.immutable.segments.max.num 100 specifies the maximum number of the IMMUTABLE segment in each Cube of the current streaming receiver, if exceed, consumption of current topic will be paused. The default value is 100. +kylin.stream.consume.offsets.latest true whether to consume from the latest offset or the earliest offset. The default value is true. +kylin.stream.assigner org.apache.kylin.stream.coordinator.assign.Assigner specifies the implementation class which used to assign the topic partition to different replica sets. The class should be the implementation class of org.apache.kylin.stream.coordinator.assign.Assigner. The default value is DefaultAssigner. +kylin.stream.coordinator.client.timeout.millsecond 5000 specifies the connection timeout of the coordinator client. The default value is 5000. +kylin.stream.receiver.client.timeout.millsecond 5000 specifies the connection timeout of the receiver client. The default value is 5000. +kylin.stream.receiver.http.max.threads 200 specifies the maximum connection threads of the receiver. The default value is 200. +kylin.stream.receiver.http.min.threads 10 specifies the minimum connection threads of the receiver. The default value is 10. +kylin.stream.receiver.query-core-threads 50 specifies the number of query threads be used for the current streaming receiver. The default value is 50. +kylin.stream.receiver.query-max-threads 200 specifies the maximum number of query threads be used for the current streaming receiver. The default value is 200. +kylin.stream.segment-max-fragments 50 specifies the maximum number of fragments that each segment keep. The default value is 50. +kylin.stream.segment-min-fragments 15 specifies the minimum number of fragments that each segment keep. The default value is 15. +kylin.stream.max-fragment-size-mb 300 specifies the maximum size of each fragment. The default value is 300. +kylin.stream.fragments-auto-merge-enable true whether to enable fragments auto merge in streaming receiver side. The default value is true. +kylin.stream.metrics.option specifies how to report metrics in streaming receiver side, option value are csv/console/jmx. +kylin.stream.event.timezone HOUR_START specifies which timezone should derived time column like HOUR_START/DAY_START used. +kylin.stream.auto-resubmit-after-discard-enabled whether to resubmit new building job automatically when finding previous job be discarded by user. +kylin.storage.clean-after-delete-operation FALSE whether to clean segment data in HBase and HDFS. The default value is FALSE. +kylin.query.skip-empty-segments TRUE whether to skip empty segments when querying. The default value is TRUE +kylin.query.large-query-threshold 1000000 specifies the maximum number of rows returned. The default value is 1000000. +kylin.query.security-enabled TRUE whether to check the ACL when querying. The default value is TRUE +kylin.query.security.table-acl-enabled TRUE whether to check the ACL of the corresponding table when querying. The default value is TRUE +kylin.query.calcite.extras-props.conformance LENIENT whether to strictly parsed. The default value is LENIENT +kylin.query.calcite.extras-props.caseSensitive TRUE whether is case sensitive. The default value is TRUE +kylin.query.calcite.extras-props.unquotedCasing TO_LOWER optional values include UNCHANGED, TO_UPPER and TO_LOWER. The default value is TO_UPPER, that is, all uppercase +kylin.query.calcite.extras-props.quoting BACK_TICK whether to add quotes, Optional values include DOUBLE_QUOTE, BACK_TICK and BRACKET. The default value is DOUBLE_QUOTE +kylin.query.statement-cache-max-num 50000 specifies the maximum number of cached PreparedStatements. The default value is 50000 +kylin.query.statement-cache-max-num-per-key 50 specifies the maximum number of PreparedStatements per key cache. The default value is 50. +kylin.query.enable-dict-enumerator FALSE whether to enable the dictionary enumerator. The default value is FALSE +kylin.query.enable-dynamic-column TRUE whether to enable dynamic columns. The default value is FALSE, set to TRUE to query the number of rows in a column that do not contain NULL +kylin.storage.hbase.max-fuzzykey-scan 200 specifies the threshold for the scanned fuzzy key. If the value is exceeded, the fuzzy key will not be scanned. The default value is 200. +kylin.storage.hbase.max-fuzzykey-scan-split 1 split the large fuzzy key set to reduce the number of fuzzy keys per scan. The default value is 1 +kylin.storage.hbase.max-visit-scanrange 1000000 the default value is 1000000 +kylin.query.cache-enabled TRUE +kylin.query.cache-threshold-duration 2000 the query duration exceeding the threshold is saved in the cache. The default value is 2000 (ms). +kylin.query.cache-threshold-scan-count 10240 the row count scanned in the query exceeding the threshold is saved in the cache. The default value is 10240 (rows). +kylin.query.cache-threshold-scan-bytes 1048576 the bytes scanned in the query exceeding the threshold is saved in the cache. The default value is 1048576 (byte). +kylin.query.timeout-seconds 0 specifies the query timeout in seconds. The default value is 0, that is, no timeout limit on query. If the value is less than 60, it will set to 60 seconds. +kylin.query.timeout-seconds-coefficient 0.5 specifies the coefficient of the query timeout seconds. The default value is 0.5. +kylin.query.max-scan-bytes 0 specifies the maximum bytes scanned by the query. The default value is 0, that is, there is no limit. +kylin.storage.partition.max-scan-bytes 3221225472 specifies the maximum number of bytes for the query scan. The default value is 3221225472 (bytes), which is 3GB. +kylin.query.max-return-rows 5000000 specifies the maximum number of rows returned by the query. The default value is 5000000. +kylin.query.badquery-stacktrace-depth 10 specifies the depth of stack trace. The default value is 10. +kylin.query.badquery-history-number 50 specifies the showing number of bad query history. The default value is 50. +kylin.query.badquery-alerting-seconds 90 The default value is 90, if the time of running is greater than the value of this property, it will print the log of query firstly, including (duration, project, thread, user, query id). Whether to save the recent query, it depends on another property. Secondly, record the stack log, the depth of log depend on another property, so as to the analysis later +kylin.query.badquery-persistent-enabled true The default value is true, it will save the recent bad query, and cannot override in Cube-level +kylin.query.pushdown.runner-class-name org.apache.kylin.query.adhoc.PushDownRunnerJdbcImpl whether to enable query pushdown +kylin.query.pushdown.jdbc.url specifies JDBC URL +kylin.query.pushdown.jdbc.driver org.apache.hive.jdbc.HiveDriver specifies JDBC driver class name. The default value is org.apache.hive.jdbc.HiveDriver +kylin.query.pushdown.jdbc.username hive specifies the Username of the JDBC database. The default value is hive +kylin.query.pushdown.jdbc.password specifies JDBC password for the database. The default value is +kylin.query.pushdown.jdbc.pool-max-total 8 specifies the maximum number of connections to the JDBC connection pool. The default value is 8. +kylin.query.pushdown.jdbc.pool-max-idle 8 specifies the maximum number of idle connections for the JDBC connection pool. The default value is 8. +kylin.query.pushdown.jdbc.pool-min-idle 0 the default value is 0 +kylin.query.pushdown.update-enabled FALSE specifies whether to enable update in Query Pushdown. The default value is FALSE +kylin.query.pushdown.cache-enabled FALSE whether to enable the cache of the pushdown query to improve the query efficiency of the same query. The default value is FALSE +kylin.query.force-limit -1 this parameter achieves the purpose of shortening the query duration by forcing a LIMIT clause for the select * statement. The default value is -1, and the parameter value is set to a positive integer, such as 1000, the value will be applied to the LIMIT clause, and the query will eventually be converted to select * from fact_table limit 1000 +kylin.storage.limit-push-down-enabled TRUE the default value is TRUE, set to FALSE to close the limit-pushdown of storage layer +kylin.query.flat-filter-max-children 500000 specifies the maximum number of filters when flatting filter. The default value is 500000 +kylin.server.query-metrics-enabled TRUE the default value is FALSE, set to TRUE to collect query metrics to JMX +kylin.security.profile saml specifies the way of security authentication, optional values include ldap, testing, saml, it should be set to ldap when integrating LDAP for SSO +kylin.security.ldap.connection-server ldap://ldap_server:389 specifies LDAP server, such as ldap +kylin.security.ldap.connection-username specifies LDAP username +kylin.security.ldap.connection-password specifies LDAP password +kylin.security.ldap.user-search-base specifies the scope of users synced to Kylin +kylin.security.ldap.user-search-pattern specifies the username for the login verification match +kylin.security.ldap.user-group-search-base specifies the scope of the user group synchronized to Kylin +kylin.security.ldap.user-group-search-filter specifies the type of user synced to Kylin +kylin.security.ldap.service-search-base need to be specifies when a service account is required to access Kylin +kylin.security.ldap.service-search-pattern need to be specifies when a service account is required to access Kylin +kylin.restclient.connection.default-max-per-route 20 max connection per route of Kylin +kylin.env.zookeeper-is-local false if zookeeper is local +kylin.server.auth-user-cache.expire-seconds specifies LDAP user information cache time, default is 300(s) +kylin.server.auth-user-cache.max-entries specifies maximum number of LDAP users, default is 100 +kylin.server.external-acl-provider org.apache.ranger.authorization.kylin.authorizer.RangerKylinAuthorizer +kylin.env.zookeeper-acl-enabled FALSE Enable ZooKeeper ACL to prevent unauthorized users from accessing the Znode or reducing the risk of bad operations resulting from this. The default value is FALSE +kylin.env.zookeeper.zk-auth digest:ADMIN:KYLIN use username +kylin.env.zookeeper.zk-acl world:anyone:rwcda Use a single ID as the ACL identifier. The default value is world +kylin.query.lazy-query-enabled false whether to lazily answer the queries that be sent repeatedly in a short time (hold it until the previous query be returned, and then reuse the result); The default value is false. +kylin.query.cache-signature-enabled false whether to use the signature of a query to determine the cache’s validity. The signature is calculated by the cube/hybrid list of the project, their last build time and other information (at the moment when cache is persisted); It’s default value is false, highly recommend to set it to true. +kylin.query.segment-cache-enabled false whether to cache the segment level returned data (from HBase storage) into Memcached. This feature is mainly for the cube that built very frequently (e.g, streaming cube, whose last build time always changed a couple minutes, the whole SQL statement level cache is very likely be cleaned; in this case, the by-segment cache can reduce the I/O). This only works when Memcached configured, the default value is false. +kylin.resourcestore.reconnect-base-ms 100 Reconnect second +kylin.job.remote-cli-port 22 client port diff --git a/core/default_configs/kylin-storage-default.tsv b/core/default_configs/kylin-storage-default.tsv new file mode 100644 index 00000000..a33a595a --- /dev/null +++ b/core/default_configs/kylin-storage-default.tsv @@ -0,0 +1,283 @@ +kylin.env.hdfs-working-dir /kylin specifies the HDFS path used by Kylin service. The default value is /kylin. Make sure that the user who starts the Kylin instance has permission to read and write to this directory. +kylin.env PROD specifies the purpose of the Kylin deployment. Optional values include DEV, QA and PROD. The default value is DEV. Some developer functions will be enabled in DEV mode. +kylin.env.zookeeper-base-path /kylin specifies the ZooKeeper path used by the Kylin service. The default value is /kylin +kylin.env.zookeeper-connect-string specifies the ZooKeeper connection string. If it is empty, use HBase’s ZooKeeper +kylin.env.hadoop-conf-dir HADOOP_CONF_DIR specifies the Hadoop configuration file directory. If not specified, get HADOOP_CONF_DIR in the environment. +kylin.server.mode query Optional values include all, job and query, among them all is the default one. job mode means the instance schedules Cube job only; query mode means the instance serves SQL queries only; all mode means the instance handles both of them. +kylin.server.cluster-name specifies the cluster name +kylin.job.scheduler.default 2 to enable the distributed job scheduler. +kylin.job.lock org.apache.kylin.storage.hbase.util.ZookeeperJobLock to enable distributed job lock +kylin.job.scheduler.safemode TRUE to enable job scheduler safemode. In safemode, Newly submitted job will not be executed +kylin.job.scheduler.safemode.runable-projects project1,project2 provide list of projects as exceptional case in safemode. +kylin.storage.hbase.cluster-fs specifies the HDFS file system of the HBase cluster +kylin.storage.hbase.cluster-hdfs-config-file specifies HDFS configuration file pointing to the HBase cluster +kylin.web.timezone GMT+8 specifies the time zone used by Kylin’s REST service. The default value is GMT+8. +kylin.web.cross-domain-enabled TRUE whether cross-domain access is supported. The default value is TRUE +kylin.web.export-allow-admin TRUE whether to support administrator user export information. The default value is TRUE +kylin.web.export-allow-other TRUE whether to support other users to export information. The default value is TRUE +kylin.web.dashboard-enabled FALSE whether to enable Dashboard. The default value is FALSE +kylin.metadata.url kylin_metadata@hbase specifies the metadata path +kylin.metadata.dimension-encoding-max-length 256 specifies the maximum length when the dimension is used as Rowkeys with fix_length encoding. The default value is 256. +kylin.metadata.sync-retries 3 specifies the number of Metadata sync retries. The default value is 3. +kylin.metadata.sync-error-handler DefaultSyncErrorHandler The default value is DefaultSyncErrorHandler +kylin.metadata.check-copy-on-write FALSE whether clear metadata cache, default value is FALSE +kylin.metadata.hbase-client-scanner-timeout-period 10000 specifies the total timeout between the RPC call initiated by the HBase client. The default value is 10000 (ms). +kylin.metadata.hbase-rpc-timeout 5000 specifies the timeout for HBase to perform RPC operations. The default value is 5000 (ms). +kylin.metadata.hbase-client-retries-number 1 specifies the number of HBase retries. The default value is 1 (times). +kylin.metadata.resource-store-provider.jdbc org.apache.kylin.common.persistence.JDBCResourceStore specifies the class used by JDBC. The default value is org.apache.kylin.common.persistence.JDBCResourceStore +kylin.metadata.jdbc.dialect specifies JDBC dialect +kylin.metadata.jdbc.json-always-small-cell TRUE The default value is TRUE +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold 100 The default value is 100 (MB) +kylin.metadata.jdbc.small-cell-meta-size-error-threshold 1 The default value is 1 (GB) +kylin.metadata.jdbc.max-cell-size 1 The default value is 1 (MB) +kylin.source.hive.client cli specifies the Hive command line type. Optional values include cli or beeline. The default value is cli. +kylin.source.hive.beeline-shell specifies the absolute path of the Beeline shell. The default is beeline +kylin.source.hive.beeline-params when using Beeline as the Client tool for Hive, user need to configure this parameter to provide more information to Beeline +kylin.source.hive.enable-sparksql-for-table-ops TRUE the default value is FALSE, which needs to be set to TRUE when using SparkSQL +kylin.source.hive.sparksql-beeline-shell when using SparkSQL Beeline as the client tool for Hive, user need to configure this parameter as /path/to/spark-client/bin/beeline +kylin.source.hive.sparksql-beeline-params when using SparkSQL Beeline as the Client tool for Hive,user need to configure this parameter to provide more information to SparkSQL +kylin.source.default specifies the type of data source used by JDBC +kylin.source.jdbc.connection-url specifies JDBC connection string +kylin.source.jdbc.driver specifies JDBC driver class name +kylin.source.jdbc.dialect default specifies JDBC dialect. The default value is default +kylin.source.jdbc.user specifies JDBC connection username +kylin.source.jdbc.pass specifies JDBC connection password +kylin.source.jdbc.sqoop-home specifies Sqoop installation path +kylin.source.jdbc.sqoop-mapper-num 4 specifies how many slices should be split. Sqoop will run a mapper for each slice. The default value is 4. +kylin.source.jdbc.field-delimiter \ specifies the field separator. The default value is \ +kylin.source.hive.default-varchar-precision varchar specifies the maximum length of the varchar field. The default value is 256. +kylin.source.hive.default-char-precision 255 specifies the maximum length of the char field. The default value is 255. +kylin.source.hive.default-decimal-precision decimal specifies the precision of the decimal field. The default value is 19 +kylin.source.hive.default-decimal-scale decimal specifies the scale of the decimal field. The default value is 4. +kylin.cube.ignore-signature-inconsistency FALSE The signature in Cube desc ensures that the cube is not changed to a corrupt state. The default value is FALSE +kylin.cube.aggrgroup.max-combination 32768 specifies the max combination number of aggregation groups. The default value is 32768. +kylin.cube.aggrgroup.is-mandatory-only-valid TRUE whether to allow Cube contains only Base Cuboid. The default value is FALSE, set to TRUE when using Spark Cubing +kylin.cube.rowkey.max-size 63 specifies the maximum number of columns that can be set to Rowkeys. The default value is 63, and it can not be more than 63. +kylin.cube.allow-appear-in-multiple-projects whether to allow a cube to appear in multiple projects +kylin.cube.gtscanrequest-serialization-level 1 the default value is 1 +kylin.web.hide-measures RAW hides some measures that may not be needed, the default value is RAW. +kylin.cube.size-estimate-ratio 0.25 normal cube, default value is 0.25 +kylin.cube.size-estimate-memhungry-ratio Deprecated, default is 0.05 +kylin.cube.size-estimate-countdistinct-ratio 0.5 Cube Size Estimation with count distinct h= metric, default value is 0.5 +kylin.cube.size-estimate-topn-ratio 0.5 Cube Size Estimation with TopN metric, default value is 0.5 +kylin.cube.algorithm auto specifies the algorithm of the Build Cube. Optional values include auto, layer and inmem. The default value is auto, that is, Kylin will dynamically select an algorithm by collecting data ( Layer or inmem), if user knows Kylin, user data and cluster condition well, user can directly set the algorithm. +kylin.cube.algorithm.layer-or-inmem-threshold 7 the default value is 7 +kylin.cube.algorithm.inmem-split-limit 500 the default value is 500 +kylin.cube.algorithm.inmem-concurrent-threads 1 the default value is 1 +kylin.job.sampling-percentage 100 specifies the data sampling percentage. The default value is 100. +kylin.cube.is-automerge-enabled TRUE whether to enable auto-merge. The default value is TRUE. When this parameter is set to FALSE, the auto-merge function will be turned off, even if it is enabled in Cube Design. +kylin.snapshot.max-mb 300 specifies the max size of the snapshot. The default value is 300(M) +kylin.snapshot.max-cache-entry 500 The maximum number of snapshots that can be stored in the cache. The default value is 500. +kylin.snapshot.ext.shard-mb 500 specifies the size of HBase shard. The default value is 500(M). +kylin.snapshot.ext.local.cache.path lookup_cache specifies local cache path, default value is lookup_cache +kylin.snapshot.ext.local.cache.max-size-gb specifies local snapshot cache size, default is 200(M) +kylin.storage.default 2 specifies the default build engine. The default value is 2, which means HBase. +kylin.source.hive.keep-flat-table FALSE whether to keep the Hive intermediate table after the build job is complete. The default value is FALSE +kylin.source.hive.database-for-flat-table default specifies the name of the Hive database that stores the Hive intermediate table. The default is default. Make sure that the user who started the Kylin instance has permission to operate the database. +kylin.source.hive.flat-table-storage-format SEQUENCEFILE specifies the storage format of the Hive intermediate table. The default value is SEQUENCEFILE +kylin.source.hive.flat-table-field-delimiter \u001F specifies the delimiter of the Hive intermediate table. The default value is \u001F +kylin.source.hive.intermediate-table-prefix kylin_intermediate_ specifies the table name prefix of the Hive intermediate table. The default value is kylin_intermediate_ +kylin.source.hive.redistribute-flat-table TRUE whether to redistribute the Hive flat table. The default value is TRUE +kylin.source.hive.redistribute-column-count 3 number of redistributed columns. The default value is 3 +kylin.source.hive.table-dir-create-first FALSE the default value is FALSE +kylin.storage.partition.aggr-spill-enabled TRUE the default value is TRUE +kylin.engine.mr.lib-dir specifies the path to the jar package used by the MapReduce job +kylin.engine.mr.reduce-input-mb 500 used to estimate the number of Reducers. The default value is 500(MB). +kylin.engine.mr.reduce-count-ratio 1.0 used to estimate the number of Reducers. The default value is 1.0 +kylin.engine.mr.min-reducer-number specifies the minimum number of Reducers in the MapReduce job. The default is 1 +kylin.engine.mr.max-reducer-number specifies the maximum number of Reducers in the MapReduce job. The default is 500. +kylin.engine.mr.mapper-input-rows 1000000 specifies the number of rows that each Mapper can handle. The default value is 1000000. If user change this value, it will start more Mapper. +kylin.engine.mr.max-cuboid-stats-calculator-number 1 specifies the number of threads used to calculate Cube statistics. The default value is 1 +kylin.engine.mr.build-dict-in-reducer TRUE whether to build the dictionary in the Reduce phase of the build job Extract Fact Table Distinct Columns. The default value is TRUE +kylin.engine.mr.yarn-check-interval-seconds 10 How often the build engine is checked for the status of the Hadoop job. The default value is 10(s) +kylin.engine.mr.use-local-classpath TRUE whether to use local mapreduce application classpath. The default value is TRUE +kylin.dictionary.use-forest-trie TRUE The default value is TRUE +kylin.dictionary.forest-trie-max-mb 500 The default value is 500 +kylin.dictionary.max-cache-entry 3000 The default value is 3000 +kylin.dictionary.growing-enabled FALSE The default value is FALSE +kylin.dictionary.append-entry-size 10000000 The default value is 10000000 +kylin.dictionary.append-max-versions 3 The default value is 3 +kylin.dictionary.append-version-ttl 259200000 The default value is 259200000 +kylin.dictionary.resuable FALSE whether to reuse the dictionary. The default value is FALSE +kylin.dictionary.shrunken-from-global-enabled TRUE whether to reduce the size of global dictionary. The default value is TRUE +kylin.engine.mr.build-uhc-dict-in-additional-step TRUE the default value is FALSE, set to TRUE +kylin.engine.mr.uhc-reducer-count 1 the default value is 1, which can be set to 5 to allocate 5 Reducers for each super-high base column. +kylin.engine.spark-conf.spark.master yarn specifies the Spark operation mode. The default value is yarn +kylin.engine.spark-conf.spark.submit.deployMode cluster specifies the deployment mode of Spark on YARN. The default value is cluster +kylin.engine.spark-conf.spark.yarn.queue default specifies the Spark resource queue. The default value is default +kylin.engine.spark-conf.spark.driver.memory 2G specifies the Spark Driver memory The default value is 2G. +kylin.engine.spark-conf.spark.executor.memory 4G specifies the Spark Executor memory. The default value is 4G. +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead 1024 specifies the size of the Spark Executor heap memory. The default value is 1024(MB). +kylin.engine.spark-conf.spark.executor.cores 1 specifies the number of cores available for a single Spark Executor. The default value is 1 +kylin.engine.spark-conf.spark.network.timeout specifies the Spark network timeout period, 600 +kylin.engine.spark-conf.spark.executor.instances 1 specifies the number of Spark Executors owned by an Application. The default value is 1 +kylin.engine.spark-conf.spark.eventLog.enabled TRUE whether to record the Spark event. The default value is TRUE +kylin.engine.spark-conf.spark.hadoop.dfs.replication replication number of HDFS, default is 2 +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress TRUE whether to compress the output. The default value is TRUE +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec org.apache.hadoop.io.compress.DefaultCodec specifies Output compression, default is org.apache.hadoop.io.compress.DefaultCodec +kylin.engine.spark.rdd-partition-cut-mb 10 Kylin uses the size of this parameter to split the partition. The default value is 10 (MB) +kylin.engine.spark.min-partition 1 specifies the minimum number of partitions. The default value is 1 +kylin.engine.spark.max-partition specifies maximum number of partitions, default is 5000 +kylin.engine.spark.storage-level MEMORY_AND_DISK_SER specifies RDD partition data cache level, default value is MEMORY_AND_DISK_SER +kylin.engine.spark-conf-mergedict.spark.executor.memory 6G whether to request more memory for merging dictionary.The default value is 6G. +kylin.engine.spark-conf-mergedict.spark.memory.fraction 0.2 specifies the percentage of memory reserved for the system. The default value is 0.2 +kylin.engine.livy-conf.livy-enabled FALSE whether to enable Livy as submit Spark job service. The default value is FALSE +kylin.engine.livy-conf.livy-url http://127.0.0.1:8998 specifies the URL of Livy. Such as http +kylin.engine.spark-conf.spark.shuffle.service.enabled whether to enable shuffle service +kylin.engine.spark-conf.spark.dynamicAllocation.enabled whether to enable Spark Dynamic Allocation +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors specifies the initial number of Executors +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors specifies the minimum number of Executors retained +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors specifies the maximum number of Executors applied for +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout 60 specifies the threshold of Executor being removed after being idle. The default value is 60(s) +kylin.job.log-dir /tmp/kylin/logs the default value is /tmp/kylin/logs +kylin.job.allow-empty-segment TRUE whether tolerant data source is empty. The default value is TRUE +kylin.job.max-concurrent-jobs specifies maximum build concurrency, default is 10 +kylin.job.retry 0 specifies retry times after the job is failed. The default value is 0 +kylin.job.retry-interval 30000 specifies retry interval in milliseconds. The default value is 30000 +kylin.job.scheduler.priority-considered FALSE whether to consider the job priority. The default value is FALSE +kylin.job.scheduler.priority-bar-fetch-from-queue 20 specifies the time interval for getting jobs from the priority queue. The default value is 20(s) +kylin.job.scheduler.poll-interval-second 30 The time interval for getting the job from the queue. The default value is 30(s) +kylin.job.error-record-threshold 0 specifies the threshold for the job to throw an error message. The default value is 0 +kylin.job.cube-auto-ready-enabled TRUE whether to enable Cube automatically after the build is complete. The default value is TRUE +kylin.cube.max-building-segments 10 specifies the maximum number of building job for the one Cube. The default value is 10 +kylin.job.notification-enabled FALSE whether to notify the email when the job succeeds or fails. The default value is FALSE +kylin.job.notification-mail-enable-starttls FALSE # whether to enable starttls. The default value is FALSE +kylin.job.notification-mail-host specifies the SMTP server address of the mail +kylin.job.notification-mail-port 25 specifies the SMTP server port of the mail. The default value is 25 +kylin.job.notification-mail-username specifies the login user name of the mail +kylin.job.notification-mail-password specifies the username and password of the email +kylin.job.notification-mail-sender specifies the email address of the email +kylin.job.notification-admin-emails specifies the administrator’s mailbox for email notifications +kylin.cube.cubeplanner.enabled TRUE whether to enable Cube Planner, The default value is TRUE +kylin.server.query-metrics2-enabled TRUE the default value is FALSE, set to TRUE to collect query metrics into dropwizard +kylin.metrics.reporter-query-enabled TRUE the default value is TRUE +kylin.metrics.reporter-job-enabled TRUE the default value is TRUE +kylin.metrics.monitor-enabled TRUE the default value is TRUE +kylin.cube.cubeplanner.enabled-for-existing-cube TRUE whether to enable Cube Planner for the existing Cube. The default value is TRUE +kylin.cube.cubeplanner.algorithm-threshold-greedy 8 the default value is 8 +kylin.cube.cubeplanner.expansion-threshold 15.0 the default value is 15.0 +kylin.cube.cubeplanner.recommend-cache-max-size 200 the default value is 200 +kylin.cube.cubeplanner.query-uncertainty-ratio 0.1 the default value is 0.1 +kylin.cube.cubeplanner.bpus-min-benefit-ratio 0.01 the default value is 0.01 +kylin.cube.cubeplanner.algorithm-threshold-genetic 23 the default value is 23 +kylin.storage.hbase.table-name-prefix KYLIN_ specifies the prefix of HTable. The default value is KYLIN_ +kylin.storage.hbase.namespace default specifies the default namespace of HBase Storage. The default value is default +kylin.storage.hbase.coprocessor-local-jar specifies jar package related to HBase coprocessor +kylin.storage.hbase.coprocessor-mem-gb 3.0 specifies the HBase coprocessor memory. The default value is 3.0(GB). +kylin.storage.hbase.run-local-coprocessor FALSE whether to run the local HBase coprocessor. The default value is FALSE +kylin.storage.hbase.coprocessor-timeout-seconds 0 specifies the timeout period. The default value is 0 +kylin.storage.hbase.region-cut-gb specifies the size of a single Region, default is 5.0 +kylin.storage.hbase.min-region-count 1 specifies the minimum number of regions. The default value is 1 +kylin.storage.hbase.max-region-count 500 specifies the maximum number of Regions. The default value is 500 +kylin.storage.hbase.hfile-size-gb 2.0 specifies the HFile size. The default value is 2.0(GB) +kylin.storage.hbase.max-scan-result-bytes 5242880 specifies the maximum value of the scan return. The default value is 5242880 (byte), which is 5 (MB). +kylin.storage.hbase.compression-codec none whether it is compressed. The default value is none, that is, compression is not enabled +kylin.storage.hbase.rowkey-encoding FAST_DIFF specifies the encoding method of Rowkey. The default value is FAST_DIFF +kylin.storage.hbase.block-size-bytes 1048576 the default value is 1048576 +kylin.storage.hbase.small-family-block-size-bytes 65536 specifies the block size. The default value is 65536 (byte), which is 64 (KB). +kylin.storage.hbase.owner-tag whoami@kylin.apache.org specifies the owner of the Kylin platform. The default value is whoami@kylin.apache.org +kylin.storage.hbase.endpoint-compress-result TRUE whether to return the compression result. The default value is TRUE +kylin.storage.hbase.max-hconnection-threads 2048 specifies the maximum number of connection threads. The default value is 2048. +kylin.storage.hbase.core-hconnection-threads 2048 specifies the number of core connection threads. The default value is 2048. +kylin.storage.hbase.hconnection-threads-alive-seconds 60 specifies the thread lifetime. The default value is 60. +kylin.storage.hbase.replication-scope 0 specifies the cluster replication range. The default value is 0 +kylin.storage.hbase.scan-cache-rows 1024 specifies the number of scan cache lines. The default value is 1024. +kylin.secondary.storage.url kylin.secondary.storage.url=hostname:kylin_metadata@hbase,hbase.zookeeper.quorum=hostname:11000,zookeeper.znode.parent=/hbase/ specifies the secondary hbase cluster and metadata path. Such as kylin.secondary.storage.url=hostname +kylin.job.execute-output.max-size 10484760 The max length of job output. The default value is 10484760. +kylin.engine.spark.output.max-size 10484760 The max length of spark job output. The default value is 10484760. +kylin.stream.job.dfs.block.size 16M specifies the HDFS block size of the streaming Base Cuboid job using. The default value is 16M. +kylin.stream.index.path stream_index specifies the local path to store segment cache files(including fragment and checkpoint files). The default value is stream_index. +kylin.stream.node port specifies the node of coordinator/receiver. Value should be hostname +kylin.stream.metadata.store.type zk specifies the position of metadata store. The default value is zk. This entry is trivial because it has only one option. +kylin.stream.receiver.use-threads-per-query 8 specifies the threads number that each query use. The default value is 8. +kylin.stream.index.maxrows 50000 specifies the maximum number of the aggregated event keep in JVM heap. The default value is 50000. Try to advance it if you have enough heap size. +kylin.stream.cube-num-of-consumer-tasks 3 specifies the number of replica sets that share the whole topic partition. It affects how many partitions will be assigned to different replica sets. The default value is 3. +kylin.stream.segment.retention.policy purge specifies the strategy to process local segment cache when segment become IMMUTABLE. Optional values include purge and fullBuild. purge means when the segment become IMMUTABLE, it will be deleted. fullBuild means when the segment become IMMUTABLE, it will be uploaded to HDFS. The default value is fullBuild. +kylin.stream.build.additional.cuboids false whether to build additional Cuboids. The additional Cuboids mean the aggregation of Mandatory Dimensions that chosen in Cube Advanced Setting page. The default value is false. Only build Base Cuboid by default. Try to enable it if you care the QPS and most query pattern can be foresaw. +kylin.stream.cube.window 3600 specifies the length of duration of each segment, value in seconds. The default value is 3600. Please check detail atdeep-dive-real-time-olap. +kylin.stream.cube.duration 7200 specifies the wait time that a segment’s status changes from active to IMMUTABLE, value in seconds. The default value is 7200. Please check detail atdeep-dive-real-time-olap. +kylin.stream.cube.duration.max 43200 specifies the maximum duration that segment can keep active, value in seconds. The default value is 43200. Please check detail atdeep-dive-real-time-olap. +kylin.stream.checkpoint.file.max.num 5 specifies the maximum number of checkpoint file for each cube. The default value is 5. +kylin.stream.index.checkpoint.intervals 300 specifies the time interval between setting two checkpoints. The default value is 300. +kylin.stream.immutable.segments.max.num 100 specifies the maximum number of the IMMUTABLE segment in each Cube of the current streaming receiver, if exceed, consumption of current topic will be paused. The default value is 100. +kylin.stream.consume.offsets.latest true whether to consume from the latest offset or the earliest offset. The default value is true. +kylin.stream.assigner org.apache.kylin.stream.coordinator.assign.Assigner specifies the implementation class which used to assign the topic partition to different replica sets. The class should be the implementation class of org.apache.kylin.stream.coordinator.assign.Assigner. The default value is DefaultAssigner. +kylin.stream.coordinator.client.timeout.millsecond 5000 specifies the connection timeout of the coordinator client. The default value is 5000. +kylin.stream.receiver.client.timeout.millsecond 5000 specifies the connection timeout of the receiver client. The default value is 5000. +kylin.stream.receiver.http.max.threads 200 specifies the maximum connection threads of the receiver. The default value is 200. +kylin.stream.receiver.http.min.threads 10 specifies the minimum connection threads of the receiver. The default value is 10. +kylin.stream.receiver.query-core-threads 50 specifies the number of query threads be used for the current streaming receiver. The default value is 50. +kylin.stream.receiver.query-max-threads 200 specifies the maximum number of query threads be used for the current streaming receiver. The default value is 200. +kylin.stream.segment-max-fragments 50 specifies the maximum number of fragments that each segment keep. The default value is 50. +kylin.stream.segment-min-fragments 15 specifies the minimum number of fragments that each segment keep. The default value is 15. +kylin.stream.max-fragment-size-mb 300 specifies the maximum size of each fragment. The default value is 300. +kylin.stream.fragments-auto-merge-enable true whether to enable fragments auto merge in streaming receiver side. The default value is true. +kylin.stream.metrics.option specifies how to report metrics in streaming receiver side, option value are csv/console/jmx. +kylin.stream.event.timezone HOUR_START specifies which timezone should derived time column like HOUR_START/DAY_START used. +kylin.stream.auto-resubmit-after-discard-enabled whether to resubmit new building job automatically when finding previous job be discarded by user. +kylin.storage.clean-after-delete-operation FALSE whether to clean segment data in HBase and HDFS. The default value is FALSE. +kylin.query.skip-empty-segments TRUE whether to skip empty segments when querying. The default value is TRUE +kylin.query.large-query-threshold 1000000 specifies the maximum number of rows returned. The default value is 1000000. +kylin.query.security-enabled TRUE whether to check the ACL when querying. The default value is TRUE +kylin.query.security.table-acl-enabled TRUE whether to check the ACL of the corresponding table when querying. The default value is TRUE +kylin.query.calcite.extras-props.conformance LENIENT whether to strictly parsed. The default value is LENIENT +kylin.query.calcite.extras-props.caseSensitive TRUE whether is case sensitive. The default value is TRUE +kylin.query.calcite.extras-props.unquotedCasing TO_LOWER optional values include UNCHANGED, TO_UPPER and TO_LOWER. The default value is TO_UPPER, that is, all uppercase +kylin.query.calcite.extras-props.quoting BACK_TICK whether to add quotes, Optional values include DOUBLE_QUOTE, BACK_TICK and BRACKET. The default value is DOUBLE_QUOTE +kylin.query.statement-cache-max-num 50000 specifies the maximum number of cached PreparedStatements. The default value is 50000 +kylin.query.statement-cache-max-num-per-key 50 specifies the maximum number of PreparedStatements per key cache. The default value is 50. +kylin.query.enable-dict-enumerator FALSE whether to enable the dictionary enumerator. The default value is FALSE +kylin.query.enable-dynamic-column TRUE whether to enable dynamic columns. The default value is FALSE, set to TRUE to query the number of rows in a column that do not contain NULL +kylin.storage.hbase.max-fuzzykey-scan 200 specifies the threshold for the scanned fuzzy key. If the value is exceeded, the fuzzy key will not be scanned. The default value is 200. +kylin.storage.hbase.max-fuzzykey-scan-split 1 split the large fuzzy key set to reduce the number of fuzzy keys per scan. The default value is 1 +kylin.storage.hbase.max-visit-scanrange 1000000 the default value is 1000000 +kylin.query.cache-enabled TRUE +kylin.query.cache-threshold-duration 2000 the query duration exceeding the threshold is saved in the cache. The default value is 2000 (ms). +kylin.query.cache-threshold-scan-count 10240 the row count scanned in the query exceeding the threshold is saved in the cache. The default value is 10240 (rows). +kylin.query.cache-threshold-scan-bytes 1048576 the bytes scanned in the query exceeding the threshold is saved in the cache. The default value is 1048576 (byte). +kylin.query.timeout-seconds 0 specifies the query timeout in seconds. The default value is 0, that is, no timeout limit on query. If the value is less than 60, it will set to 60 seconds. +kylin.query.timeout-seconds-coefficient 0.5 specifies the coefficient of the query timeout seconds. The default value is 0.5. +kylin.query.max-scan-bytes 0 specifies the maximum bytes scanned by the query. The default value is 0, that is, there is no limit. +kylin.storage.partition.max-scan-bytes 3221225472 specifies the maximum number of bytes for the query scan. The default value is 3221225472 (bytes), which is 3GB. +kylin.query.max-return-rows 5000000 specifies the maximum number of rows returned by the query. The default value is 5000000. +kylin.query.badquery-stacktrace-depth 10 specifies the depth of stack trace. The default value is 10. +kylin.query.badquery-history-number 50 specifies the showing number of bad query history. The default value is 50. +kylin.query.badquery-alerting-seconds 90 The default value is 90, if the time of running is greater than the value of this property, it will print the log of query firstly, including (duration, project, thread, user, query id). Whether to save the recent query, it depends on another property. Secondly, record the stack log, the depth of log depend on another property, so as to the analysis later +kylin.query.badquery-persistent-enabled true The default value is true, it will save the recent bad query, and cannot override in Cube-level +kylin.query.pushdown.runner-class-name org.apache.kylin.query.adhoc.PushDownRunnerJdbcImpl whether to enable query pushdown +kylin.query.pushdown.jdbc.url specifies JDBC URL +kylin.query.pushdown.jdbc.driver org.apache.hive.jdbc.HiveDriver specifies JDBC driver class name. The default value is org.apache.hive.jdbc.HiveDriver +kylin.query.pushdown.jdbc.username hive specifies the Username of the JDBC database. The default value is hive +kylin.query.pushdown.jdbc.password specifies JDBC password for the database. The default value is +kylin.query.pushdown.jdbc.pool-max-total 8 specifies the maximum number of connections to the JDBC connection pool. The default value is 8. +kylin.query.pushdown.jdbc.pool-max-idle 8 specifies the maximum number of idle connections for the JDBC connection pool. The default value is 8. +kylin.query.pushdown.jdbc.pool-min-idle 0 the default value is 0 +kylin.query.pushdown.update-enabled FALSE specifies whether to enable update in Query Pushdown. The default value is FALSE +kylin.query.pushdown.cache-enabled FALSE whether to enable the cache of the pushdown query to improve the query efficiency of the same query. The default value is FALSE +kylin.query.force-limit -1 this parameter achieves the purpose of shortening the query duration by forcing a LIMIT clause for the select * statement. The default value is -1, and the parameter value is set to a positive integer, such as 1000, the value will be applied to the LIMIT clause, and the query will eventually be converted to select * from fact_table limit 1000 +kylin.storage.limit-push-down-enabled TRUE the default value is TRUE, set to FALSE to close the limit-pushdown of storage layer +kylin.query.flat-filter-max-children 500000 specifies the maximum number of filters when flatting filter. The default value is 500000 +kylin.server.query-metrics-enabled TRUE the default value is FALSE, set to TRUE to collect query metrics to JMX +kylin.security.profile saml specifies the way of security authentication, optional values include ldap, testing, saml, it should be set to ldap when integrating LDAP for SSO +kylin.security.ldap.connection-server ldap://ldap_server:389 specifies LDAP server, such as ldap +kylin.security.ldap.connection-username specifies LDAP username +kylin.security.ldap.connection-password specifies LDAP password +kylin.security.ldap.user-search-base specifies the scope of users synced to Kylin +kylin.security.ldap.user-search-pattern specifies the username for the login verification match +kylin.security.ldap.user-group-search-base specifies the scope of the user group synchronized to Kylin +kylin.security.ldap.user-group-search-filter specifies the type of user synced to Kylin +kylin.security.ldap.service-search-base need to be specifies when a service account is required to access Kylin +kylin.security.ldap.service-search-pattern need to be specifies when a service account is required to access Kylin +kylin.restclient.connection.default-max-per-route 20 max connection per route of Kylin +kylin.env.zookeeper-is-local false if zookeeper is local +kylin.server.auth-user-cache.expire-seconds specifies LDAP user information cache time, default is 300(s) +kylin.server.auth-user-cache.max-entries specifies maximum number of LDAP users, default is 100 +kylin.server.external-acl-provider org.apache.ranger.authorization.kylin.authorizer.RangerKylinAuthorizer +kylin.env.zookeeper-acl-enabled FALSE Enable ZooKeeper ACL to prevent unauthorized users from accessing the Znode or reducing the risk of bad operations resulting from this. The default value is FALSE +kylin.env.zookeeper.zk-auth digest:ADMIN:KYLIN use username +kylin.env.zookeeper.zk-acl world:anyone:rwcda Use a single ID as the ACL identifier. The default value is world +kylin.query.lazy-query-enabled false whether to lazily answer the queries that be sent repeatedly in a short time (hold it until the previous query be returned, and then reuse the result); The default value is false. +kylin.query.cache-signature-enabled false whether to use the signature of a query to determine the cache’s validity. The signature is calculated by the cube/hybrid list of the project, their last build time and other information (at the moment when cache is persisted); It’s default value is false, highly recommend to set it to true. +kylin.query.segment-cache-enabled false whether to cache the segment level returned data (from HBase storage) into Memcached. This feature is mainly for the cube that built very frequently (e.g, streaming cube, whose last build time always changed a couple minutes, the whole SQL statement level cache is very likely be cleaned; in this case, the by-segment cache can reduce the I/O). This only works when Memcached configured, the default value is false. +kylin.resourcestore.reconnect-base-ms 100 Reconnect second +kylin.job.remote-cli-port 22 client port diff --git a/core/default_configs/kylin-tool-default.tsv b/core/default_configs/kylin-tool-default.tsv new file mode 100644 index 00000000..a33a595a --- /dev/null +++ b/core/default_configs/kylin-tool-default.tsv @@ -0,0 +1,283 @@ +kylin.env.hdfs-working-dir /kylin specifies the HDFS path used by Kylin service. The default value is /kylin. Make sure that the user who starts the Kylin instance has permission to read and write to this directory. +kylin.env PROD specifies the purpose of the Kylin deployment. Optional values include DEV, QA and PROD. The default value is DEV. Some developer functions will be enabled in DEV mode. +kylin.env.zookeeper-base-path /kylin specifies the ZooKeeper path used by the Kylin service. The default value is /kylin +kylin.env.zookeeper-connect-string specifies the ZooKeeper connection string. If it is empty, use HBase’s ZooKeeper +kylin.env.hadoop-conf-dir HADOOP_CONF_DIR specifies the Hadoop configuration file directory. If not specified, get HADOOP_CONF_DIR in the environment. +kylin.server.mode query Optional values include all, job and query, among them all is the default one. job mode means the instance schedules Cube job only; query mode means the instance serves SQL queries only; all mode means the instance handles both of them. +kylin.server.cluster-name specifies the cluster name +kylin.job.scheduler.default 2 to enable the distributed job scheduler. +kylin.job.lock org.apache.kylin.storage.hbase.util.ZookeeperJobLock to enable distributed job lock +kylin.job.scheduler.safemode TRUE to enable job scheduler safemode. In safemode, Newly submitted job will not be executed +kylin.job.scheduler.safemode.runable-projects project1,project2 provide list of projects as exceptional case in safemode. +kylin.storage.hbase.cluster-fs specifies the HDFS file system of the HBase cluster +kylin.storage.hbase.cluster-hdfs-config-file specifies HDFS configuration file pointing to the HBase cluster +kylin.web.timezone GMT+8 specifies the time zone used by Kylin’s REST service. The default value is GMT+8. +kylin.web.cross-domain-enabled TRUE whether cross-domain access is supported. The default value is TRUE +kylin.web.export-allow-admin TRUE whether to support administrator user export information. The default value is TRUE +kylin.web.export-allow-other TRUE whether to support other users to export information. The default value is TRUE +kylin.web.dashboard-enabled FALSE whether to enable Dashboard. The default value is FALSE +kylin.metadata.url kylin_metadata@hbase specifies the metadata path +kylin.metadata.dimension-encoding-max-length 256 specifies the maximum length when the dimension is used as Rowkeys with fix_length encoding. The default value is 256. +kylin.metadata.sync-retries 3 specifies the number of Metadata sync retries. The default value is 3. +kylin.metadata.sync-error-handler DefaultSyncErrorHandler The default value is DefaultSyncErrorHandler +kylin.metadata.check-copy-on-write FALSE whether clear metadata cache, default value is FALSE +kylin.metadata.hbase-client-scanner-timeout-period 10000 specifies the total timeout between the RPC call initiated by the HBase client. The default value is 10000 (ms). +kylin.metadata.hbase-rpc-timeout 5000 specifies the timeout for HBase to perform RPC operations. The default value is 5000 (ms). +kylin.metadata.hbase-client-retries-number 1 specifies the number of HBase retries. The default value is 1 (times). +kylin.metadata.resource-store-provider.jdbc org.apache.kylin.common.persistence.JDBCResourceStore specifies the class used by JDBC. The default value is org.apache.kylin.common.persistence.JDBCResourceStore +kylin.metadata.jdbc.dialect specifies JDBC dialect +kylin.metadata.jdbc.json-always-small-cell TRUE The default value is TRUE +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold 100 The default value is 100 (MB) +kylin.metadata.jdbc.small-cell-meta-size-error-threshold 1 The default value is 1 (GB) +kylin.metadata.jdbc.max-cell-size 1 The default value is 1 (MB) +kylin.source.hive.client cli specifies the Hive command line type. Optional values include cli or beeline. The default value is cli. +kylin.source.hive.beeline-shell specifies the absolute path of the Beeline shell. The default is beeline +kylin.source.hive.beeline-params when using Beeline as the Client tool for Hive, user need to configure this parameter to provide more information to Beeline +kylin.source.hive.enable-sparksql-for-table-ops TRUE the default value is FALSE, which needs to be set to TRUE when using SparkSQL +kylin.source.hive.sparksql-beeline-shell when using SparkSQL Beeline as the client tool for Hive, user need to configure this parameter as /path/to/spark-client/bin/beeline +kylin.source.hive.sparksql-beeline-params when using SparkSQL Beeline as the Client tool for Hive,user need to configure this parameter to provide more information to SparkSQL +kylin.source.default specifies the type of data source used by JDBC +kylin.source.jdbc.connection-url specifies JDBC connection string +kylin.source.jdbc.driver specifies JDBC driver class name +kylin.source.jdbc.dialect default specifies JDBC dialect. The default value is default +kylin.source.jdbc.user specifies JDBC connection username +kylin.source.jdbc.pass specifies JDBC connection password +kylin.source.jdbc.sqoop-home specifies Sqoop installation path +kylin.source.jdbc.sqoop-mapper-num 4 specifies how many slices should be split. Sqoop will run a mapper for each slice. The default value is 4. +kylin.source.jdbc.field-delimiter \ specifies the field separator. The default value is \ +kylin.source.hive.default-varchar-precision varchar specifies the maximum length of the varchar field. The default value is 256. +kylin.source.hive.default-char-precision 255 specifies the maximum length of the char field. The default value is 255. +kylin.source.hive.default-decimal-precision decimal specifies the precision of the decimal field. The default value is 19 +kylin.source.hive.default-decimal-scale decimal specifies the scale of the decimal field. The default value is 4. +kylin.cube.ignore-signature-inconsistency FALSE The signature in Cube desc ensures that the cube is not changed to a corrupt state. The default value is FALSE +kylin.cube.aggrgroup.max-combination 32768 specifies the max combination number of aggregation groups. The default value is 32768. +kylin.cube.aggrgroup.is-mandatory-only-valid TRUE whether to allow Cube contains only Base Cuboid. The default value is FALSE, set to TRUE when using Spark Cubing +kylin.cube.rowkey.max-size 63 specifies the maximum number of columns that can be set to Rowkeys. The default value is 63, and it can not be more than 63. +kylin.cube.allow-appear-in-multiple-projects whether to allow a cube to appear in multiple projects +kylin.cube.gtscanrequest-serialization-level 1 the default value is 1 +kylin.web.hide-measures RAW hides some measures that may not be needed, the default value is RAW. +kylin.cube.size-estimate-ratio 0.25 normal cube, default value is 0.25 +kylin.cube.size-estimate-memhungry-ratio Deprecated, default is 0.05 +kylin.cube.size-estimate-countdistinct-ratio 0.5 Cube Size Estimation with count distinct h= metric, default value is 0.5 +kylin.cube.size-estimate-topn-ratio 0.5 Cube Size Estimation with TopN metric, default value is 0.5 +kylin.cube.algorithm auto specifies the algorithm of the Build Cube. Optional values include auto, layer and inmem. The default value is auto, that is, Kylin will dynamically select an algorithm by collecting data ( Layer or inmem), if user knows Kylin, user data and cluster condition well, user can directly set the algorithm. +kylin.cube.algorithm.layer-or-inmem-threshold 7 the default value is 7 +kylin.cube.algorithm.inmem-split-limit 500 the default value is 500 +kylin.cube.algorithm.inmem-concurrent-threads 1 the default value is 1 +kylin.job.sampling-percentage 100 specifies the data sampling percentage. The default value is 100. +kylin.cube.is-automerge-enabled TRUE whether to enable auto-merge. The default value is TRUE. When this parameter is set to FALSE, the auto-merge function will be turned off, even if it is enabled in Cube Design. +kylin.snapshot.max-mb 300 specifies the max size of the snapshot. The default value is 300(M) +kylin.snapshot.max-cache-entry 500 The maximum number of snapshots that can be stored in the cache. The default value is 500. +kylin.snapshot.ext.shard-mb 500 specifies the size of HBase shard. The default value is 500(M). +kylin.snapshot.ext.local.cache.path lookup_cache specifies local cache path, default value is lookup_cache +kylin.snapshot.ext.local.cache.max-size-gb specifies local snapshot cache size, default is 200(M) +kylin.storage.default 2 specifies the default build engine. The default value is 2, which means HBase. +kylin.source.hive.keep-flat-table FALSE whether to keep the Hive intermediate table after the build job is complete. The default value is FALSE +kylin.source.hive.database-for-flat-table default specifies the name of the Hive database that stores the Hive intermediate table. The default is default. Make sure that the user who started the Kylin instance has permission to operate the database. +kylin.source.hive.flat-table-storage-format SEQUENCEFILE specifies the storage format of the Hive intermediate table. The default value is SEQUENCEFILE +kylin.source.hive.flat-table-field-delimiter \u001F specifies the delimiter of the Hive intermediate table. The default value is \u001F +kylin.source.hive.intermediate-table-prefix kylin_intermediate_ specifies the table name prefix of the Hive intermediate table. The default value is kylin_intermediate_ +kylin.source.hive.redistribute-flat-table TRUE whether to redistribute the Hive flat table. The default value is TRUE +kylin.source.hive.redistribute-column-count 3 number of redistributed columns. The default value is 3 +kylin.source.hive.table-dir-create-first FALSE the default value is FALSE +kylin.storage.partition.aggr-spill-enabled TRUE the default value is TRUE +kylin.engine.mr.lib-dir specifies the path to the jar package used by the MapReduce job +kylin.engine.mr.reduce-input-mb 500 used to estimate the number of Reducers. The default value is 500(MB). +kylin.engine.mr.reduce-count-ratio 1.0 used to estimate the number of Reducers. The default value is 1.0 +kylin.engine.mr.min-reducer-number specifies the minimum number of Reducers in the MapReduce job. The default is 1 +kylin.engine.mr.max-reducer-number specifies the maximum number of Reducers in the MapReduce job. The default is 500. +kylin.engine.mr.mapper-input-rows 1000000 specifies the number of rows that each Mapper can handle. The default value is 1000000. If user change this value, it will start more Mapper. +kylin.engine.mr.max-cuboid-stats-calculator-number 1 specifies the number of threads used to calculate Cube statistics. The default value is 1 +kylin.engine.mr.build-dict-in-reducer TRUE whether to build the dictionary in the Reduce phase of the build job Extract Fact Table Distinct Columns. The default value is TRUE +kylin.engine.mr.yarn-check-interval-seconds 10 How often the build engine is checked for the status of the Hadoop job. The default value is 10(s) +kylin.engine.mr.use-local-classpath TRUE whether to use local mapreduce application classpath. The default value is TRUE +kylin.dictionary.use-forest-trie TRUE The default value is TRUE +kylin.dictionary.forest-trie-max-mb 500 The default value is 500 +kylin.dictionary.max-cache-entry 3000 The default value is 3000 +kylin.dictionary.growing-enabled FALSE The default value is FALSE +kylin.dictionary.append-entry-size 10000000 The default value is 10000000 +kylin.dictionary.append-max-versions 3 The default value is 3 +kylin.dictionary.append-version-ttl 259200000 The default value is 259200000 +kylin.dictionary.resuable FALSE whether to reuse the dictionary. The default value is FALSE +kylin.dictionary.shrunken-from-global-enabled TRUE whether to reduce the size of global dictionary. The default value is TRUE +kylin.engine.mr.build-uhc-dict-in-additional-step TRUE the default value is FALSE, set to TRUE +kylin.engine.mr.uhc-reducer-count 1 the default value is 1, which can be set to 5 to allocate 5 Reducers for each super-high base column. +kylin.engine.spark-conf.spark.master yarn specifies the Spark operation mode. The default value is yarn +kylin.engine.spark-conf.spark.submit.deployMode cluster specifies the deployment mode of Spark on YARN. The default value is cluster +kylin.engine.spark-conf.spark.yarn.queue default specifies the Spark resource queue. The default value is default +kylin.engine.spark-conf.spark.driver.memory 2G specifies the Spark Driver memory The default value is 2G. +kylin.engine.spark-conf.spark.executor.memory 4G specifies the Spark Executor memory. The default value is 4G. +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead 1024 specifies the size of the Spark Executor heap memory. The default value is 1024(MB). +kylin.engine.spark-conf.spark.executor.cores 1 specifies the number of cores available for a single Spark Executor. The default value is 1 +kylin.engine.spark-conf.spark.network.timeout specifies the Spark network timeout period, 600 +kylin.engine.spark-conf.spark.executor.instances 1 specifies the number of Spark Executors owned by an Application. The default value is 1 +kylin.engine.spark-conf.spark.eventLog.enabled TRUE whether to record the Spark event. The default value is TRUE +kylin.engine.spark-conf.spark.hadoop.dfs.replication replication number of HDFS, default is 2 +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress TRUE whether to compress the output. The default value is TRUE +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec org.apache.hadoop.io.compress.DefaultCodec specifies Output compression, default is org.apache.hadoop.io.compress.DefaultCodec +kylin.engine.spark.rdd-partition-cut-mb 10 Kylin uses the size of this parameter to split the partition. The default value is 10 (MB) +kylin.engine.spark.min-partition 1 specifies the minimum number of partitions. The default value is 1 +kylin.engine.spark.max-partition specifies maximum number of partitions, default is 5000 +kylin.engine.spark.storage-level MEMORY_AND_DISK_SER specifies RDD partition data cache level, default value is MEMORY_AND_DISK_SER +kylin.engine.spark-conf-mergedict.spark.executor.memory 6G whether to request more memory for merging dictionary.The default value is 6G. +kylin.engine.spark-conf-mergedict.spark.memory.fraction 0.2 specifies the percentage of memory reserved for the system. The default value is 0.2 +kylin.engine.livy-conf.livy-enabled FALSE whether to enable Livy as submit Spark job service. The default value is FALSE +kylin.engine.livy-conf.livy-url http://127.0.0.1:8998 specifies the URL of Livy. Such as http +kylin.engine.spark-conf.spark.shuffle.service.enabled whether to enable shuffle service +kylin.engine.spark-conf.spark.dynamicAllocation.enabled whether to enable Spark Dynamic Allocation +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors specifies the initial number of Executors +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors specifies the minimum number of Executors retained +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors specifies the maximum number of Executors applied for +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout 60 specifies the threshold of Executor being removed after being idle. The default value is 60(s) +kylin.job.log-dir /tmp/kylin/logs the default value is /tmp/kylin/logs +kylin.job.allow-empty-segment TRUE whether tolerant data source is empty. The default value is TRUE +kylin.job.max-concurrent-jobs specifies maximum build concurrency, default is 10 +kylin.job.retry 0 specifies retry times after the job is failed. The default value is 0 +kylin.job.retry-interval 30000 specifies retry interval in milliseconds. The default value is 30000 +kylin.job.scheduler.priority-considered FALSE whether to consider the job priority. The default value is FALSE +kylin.job.scheduler.priority-bar-fetch-from-queue 20 specifies the time interval for getting jobs from the priority queue. The default value is 20(s) +kylin.job.scheduler.poll-interval-second 30 The time interval for getting the job from the queue. The default value is 30(s) +kylin.job.error-record-threshold 0 specifies the threshold for the job to throw an error message. The default value is 0 +kylin.job.cube-auto-ready-enabled TRUE whether to enable Cube automatically after the build is complete. The default value is TRUE +kylin.cube.max-building-segments 10 specifies the maximum number of building job for the one Cube. The default value is 10 +kylin.job.notification-enabled FALSE whether to notify the email when the job succeeds or fails. The default value is FALSE +kylin.job.notification-mail-enable-starttls FALSE # whether to enable starttls. The default value is FALSE +kylin.job.notification-mail-host specifies the SMTP server address of the mail +kylin.job.notification-mail-port 25 specifies the SMTP server port of the mail. The default value is 25 +kylin.job.notification-mail-username specifies the login user name of the mail +kylin.job.notification-mail-password specifies the username and password of the email +kylin.job.notification-mail-sender specifies the email address of the email +kylin.job.notification-admin-emails specifies the administrator’s mailbox for email notifications +kylin.cube.cubeplanner.enabled TRUE whether to enable Cube Planner, The default value is TRUE +kylin.server.query-metrics2-enabled TRUE the default value is FALSE, set to TRUE to collect query metrics into dropwizard +kylin.metrics.reporter-query-enabled TRUE the default value is TRUE +kylin.metrics.reporter-job-enabled TRUE the default value is TRUE +kylin.metrics.monitor-enabled TRUE the default value is TRUE +kylin.cube.cubeplanner.enabled-for-existing-cube TRUE whether to enable Cube Planner for the existing Cube. The default value is TRUE +kylin.cube.cubeplanner.algorithm-threshold-greedy 8 the default value is 8 +kylin.cube.cubeplanner.expansion-threshold 15.0 the default value is 15.0 +kylin.cube.cubeplanner.recommend-cache-max-size 200 the default value is 200 +kylin.cube.cubeplanner.query-uncertainty-ratio 0.1 the default value is 0.1 +kylin.cube.cubeplanner.bpus-min-benefit-ratio 0.01 the default value is 0.01 +kylin.cube.cubeplanner.algorithm-threshold-genetic 23 the default value is 23 +kylin.storage.hbase.table-name-prefix KYLIN_ specifies the prefix of HTable. The default value is KYLIN_ +kylin.storage.hbase.namespace default specifies the default namespace of HBase Storage. The default value is default +kylin.storage.hbase.coprocessor-local-jar specifies jar package related to HBase coprocessor +kylin.storage.hbase.coprocessor-mem-gb 3.0 specifies the HBase coprocessor memory. The default value is 3.0(GB). +kylin.storage.hbase.run-local-coprocessor FALSE whether to run the local HBase coprocessor. The default value is FALSE +kylin.storage.hbase.coprocessor-timeout-seconds 0 specifies the timeout period. The default value is 0 +kylin.storage.hbase.region-cut-gb specifies the size of a single Region, default is 5.0 +kylin.storage.hbase.min-region-count 1 specifies the minimum number of regions. The default value is 1 +kylin.storage.hbase.max-region-count 500 specifies the maximum number of Regions. The default value is 500 +kylin.storage.hbase.hfile-size-gb 2.0 specifies the HFile size. The default value is 2.0(GB) +kylin.storage.hbase.max-scan-result-bytes 5242880 specifies the maximum value of the scan return. The default value is 5242880 (byte), which is 5 (MB). +kylin.storage.hbase.compression-codec none whether it is compressed. The default value is none, that is, compression is not enabled +kylin.storage.hbase.rowkey-encoding FAST_DIFF specifies the encoding method of Rowkey. The default value is FAST_DIFF +kylin.storage.hbase.block-size-bytes 1048576 the default value is 1048576 +kylin.storage.hbase.small-family-block-size-bytes 65536 specifies the block size. The default value is 65536 (byte), which is 64 (KB). +kylin.storage.hbase.owner-tag whoami@kylin.apache.org specifies the owner of the Kylin platform. The default value is whoami@kylin.apache.org +kylin.storage.hbase.endpoint-compress-result TRUE whether to return the compression result. The default value is TRUE +kylin.storage.hbase.max-hconnection-threads 2048 specifies the maximum number of connection threads. The default value is 2048. +kylin.storage.hbase.core-hconnection-threads 2048 specifies the number of core connection threads. The default value is 2048. +kylin.storage.hbase.hconnection-threads-alive-seconds 60 specifies the thread lifetime. The default value is 60. +kylin.storage.hbase.replication-scope 0 specifies the cluster replication range. The default value is 0 +kylin.storage.hbase.scan-cache-rows 1024 specifies the number of scan cache lines. The default value is 1024. +kylin.secondary.storage.url kylin.secondary.storage.url=hostname:kylin_metadata@hbase,hbase.zookeeper.quorum=hostname:11000,zookeeper.znode.parent=/hbase/ specifies the secondary hbase cluster and metadata path. Such as kylin.secondary.storage.url=hostname +kylin.job.execute-output.max-size 10484760 The max length of job output. The default value is 10484760. +kylin.engine.spark.output.max-size 10484760 The max length of spark job output. The default value is 10484760. +kylin.stream.job.dfs.block.size 16M specifies the HDFS block size of the streaming Base Cuboid job using. The default value is 16M. +kylin.stream.index.path stream_index specifies the local path to store segment cache files(including fragment and checkpoint files). The default value is stream_index. +kylin.stream.node port specifies the node of coordinator/receiver. Value should be hostname +kylin.stream.metadata.store.type zk specifies the position of metadata store. The default value is zk. This entry is trivial because it has only one option. +kylin.stream.receiver.use-threads-per-query 8 specifies the threads number that each query use. The default value is 8. +kylin.stream.index.maxrows 50000 specifies the maximum number of the aggregated event keep in JVM heap. The default value is 50000. Try to advance it if you have enough heap size. +kylin.stream.cube-num-of-consumer-tasks 3 specifies the number of replica sets that share the whole topic partition. It affects how many partitions will be assigned to different replica sets. The default value is 3. +kylin.stream.segment.retention.policy purge specifies the strategy to process local segment cache when segment become IMMUTABLE. Optional values include purge and fullBuild. purge means when the segment become IMMUTABLE, it will be deleted. fullBuild means when the segment become IMMUTABLE, it will be uploaded to HDFS. The default value is fullBuild. +kylin.stream.build.additional.cuboids false whether to build additional Cuboids. The additional Cuboids mean the aggregation of Mandatory Dimensions that chosen in Cube Advanced Setting page. The default value is false. Only build Base Cuboid by default. Try to enable it if you care the QPS and most query pattern can be foresaw. +kylin.stream.cube.window 3600 specifies the length of duration of each segment, value in seconds. The default value is 3600. Please check detail atdeep-dive-real-time-olap. +kylin.stream.cube.duration 7200 specifies the wait time that a segment’s status changes from active to IMMUTABLE, value in seconds. The default value is 7200. Please check detail atdeep-dive-real-time-olap. +kylin.stream.cube.duration.max 43200 specifies the maximum duration that segment can keep active, value in seconds. The default value is 43200. Please check detail atdeep-dive-real-time-olap. +kylin.stream.checkpoint.file.max.num 5 specifies the maximum number of checkpoint file for each cube. The default value is 5. +kylin.stream.index.checkpoint.intervals 300 specifies the time interval between setting two checkpoints. The default value is 300. +kylin.stream.immutable.segments.max.num 100 specifies the maximum number of the IMMUTABLE segment in each Cube of the current streaming receiver, if exceed, consumption of current topic will be paused. The default value is 100. +kylin.stream.consume.offsets.latest true whether to consume from the latest offset or the earliest offset. The default value is true. +kylin.stream.assigner org.apache.kylin.stream.coordinator.assign.Assigner specifies the implementation class which used to assign the topic partition to different replica sets. The class should be the implementation class of org.apache.kylin.stream.coordinator.assign.Assigner. The default value is DefaultAssigner. +kylin.stream.coordinator.client.timeout.millsecond 5000 specifies the connection timeout of the coordinator client. The default value is 5000. +kylin.stream.receiver.client.timeout.millsecond 5000 specifies the connection timeout of the receiver client. The default value is 5000. +kylin.stream.receiver.http.max.threads 200 specifies the maximum connection threads of the receiver. The default value is 200. +kylin.stream.receiver.http.min.threads 10 specifies the minimum connection threads of the receiver. The default value is 10. +kylin.stream.receiver.query-core-threads 50 specifies the number of query threads be used for the current streaming receiver. The default value is 50. +kylin.stream.receiver.query-max-threads 200 specifies the maximum number of query threads be used for the current streaming receiver. The default value is 200. +kylin.stream.segment-max-fragments 50 specifies the maximum number of fragments that each segment keep. The default value is 50. +kylin.stream.segment-min-fragments 15 specifies the minimum number of fragments that each segment keep. The default value is 15. +kylin.stream.max-fragment-size-mb 300 specifies the maximum size of each fragment. The default value is 300. +kylin.stream.fragments-auto-merge-enable true whether to enable fragments auto merge in streaming receiver side. The default value is true. +kylin.stream.metrics.option specifies how to report metrics in streaming receiver side, option value are csv/console/jmx. +kylin.stream.event.timezone HOUR_START specifies which timezone should derived time column like HOUR_START/DAY_START used. +kylin.stream.auto-resubmit-after-discard-enabled whether to resubmit new building job automatically when finding previous job be discarded by user. +kylin.storage.clean-after-delete-operation FALSE whether to clean segment data in HBase and HDFS. The default value is FALSE. +kylin.query.skip-empty-segments TRUE whether to skip empty segments when querying. The default value is TRUE +kylin.query.large-query-threshold 1000000 specifies the maximum number of rows returned. The default value is 1000000. +kylin.query.security-enabled TRUE whether to check the ACL when querying. The default value is TRUE +kylin.query.security.table-acl-enabled TRUE whether to check the ACL of the corresponding table when querying. The default value is TRUE +kylin.query.calcite.extras-props.conformance LENIENT whether to strictly parsed. The default value is LENIENT +kylin.query.calcite.extras-props.caseSensitive TRUE whether is case sensitive. The default value is TRUE +kylin.query.calcite.extras-props.unquotedCasing TO_LOWER optional values include UNCHANGED, TO_UPPER and TO_LOWER. The default value is TO_UPPER, that is, all uppercase +kylin.query.calcite.extras-props.quoting BACK_TICK whether to add quotes, Optional values include DOUBLE_QUOTE, BACK_TICK and BRACKET. The default value is DOUBLE_QUOTE +kylin.query.statement-cache-max-num 50000 specifies the maximum number of cached PreparedStatements. The default value is 50000 +kylin.query.statement-cache-max-num-per-key 50 specifies the maximum number of PreparedStatements per key cache. The default value is 50. +kylin.query.enable-dict-enumerator FALSE whether to enable the dictionary enumerator. The default value is FALSE +kylin.query.enable-dynamic-column TRUE whether to enable dynamic columns. The default value is FALSE, set to TRUE to query the number of rows in a column that do not contain NULL +kylin.storage.hbase.max-fuzzykey-scan 200 specifies the threshold for the scanned fuzzy key. If the value is exceeded, the fuzzy key will not be scanned. The default value is 200. +kylin.storage.hbase.max-fuzzykey-scan-split 1 split the large fuzzy key set to reduce the number of fuzzy keys per scan. The default value is 1 +kylin.storage.hbase.max-visit-scanrange 1000000 the default value is 1000000 +kylin.query.cache-enabled TRUE +kylin.query.cache-threshold-duration 2000 the query duration exceeding the threshold is saved in the cache. The default value is 2000 (ms). +kylin.query.cache-threshold-scan-count 10240 the row count scanned in the query exceeding the threshold is saved in the cache. The default value is 10240 (rows). +kylin.query.cache-threshold-scan-bytes 1048576 the bytes scanned in the query exceeding the threshold is saved in the cache. The default value is 1048576 (byte). +kylin.query.timeout-seconds 0 specifies the query timeout in seconds. The default value is 0, that is, no timeout limit on query. If the value is less than 60, it will set to 60 seconds. +kylin.query.timeout-seconds-coefficient 0.5 specifies the coefficient of the query timeout seconds. The default value is 0.5. +kylin.query.max-scan-bytes 0 specifies the maximum bytes scanned by the query. The default value is 0, that is, there is no limit. +kylin.storage.partition.max-scan-bytes 3221225472 specifies the maximum number of bytes for the query scan. The default value is 3221225472 (bytes), which is 3GB. +kylin.query.max-return-rows 5000000 specifies the maximum number of rows returned by the query. The default value is 5000000. +kylin.query.badquery-stacktrace-depth 10 specifies the depth of stack trace. The default value is 10. +kylin.query.badquery-history-number 50 specifies the showing number of bad query history. The default value is 50. +kylin.query.badquery-alerting-seconds 90 The default value is 90, if the time of running is greater than the value of this property, it will print the log of query firstly, including (duration, project, thread, user, query id). Whether to save the recent query, it depends on another property. Secondly, record the stack log, the depth of log depend on another property, so as to the analysis later +kylin.query.badquery-persistent-enabled true The default value is true, it will save the recent bad query, and cannot override in Cube-level +kylin.query.pushdown.runner-class-name org.apache.kylin.query.adhoc.PushDownRunnerJdbcImpl whether to enable query pushdown +kylin.query.pushdown.jdbc.url specifies JDBC URL +kylin.query.pushdown.jdbc.driver org.apache.hive.jdbc.HiveDriver specifies JDBC driver class name. The default value is org.apache.hive.jdbc.HiveDriver +kylin.query.pushdown.jdbc.username hive specifies the Username of the JDBC database. The default value is hive +kylin.query.pushdown.jdbc.password specifies JDBC password for the database. The default value is +kylin.query.pushdown.jdbc.pool-max-total 8 specifies the maximum number of connections to the JDBC connection pool. The default value is 8. +kylin.query.pushdown.jdbc.pool-max-idle 8 specifies the maximum number of idle connections for the JDBC connection pool. The default value is 8. +kylin.query.pushdown.jdbc.pool-min-idle 0 the default value is 0 +kylin.query.pushdown.update-enabled FALSE specifies whether to enable update in Query Pushdown. The default value is FALSE +kylin.query.pushdown.cache-enabled FALSE whether to enable the cache of the pushdown query to improve the query efficiency of the same query. The default value is FALSE +kylin.query.force-limit -1 this parameter achieves the purpose of shortening the query duration by forcing a LIMIT clause for the select * statement. The default value is -1, and the parameter value is set to a positive integer, such as 1000, the value will be applied to the LIMIT clause, and the query will eventually be converted to select * from fact_table limit 1000 +kylin.storage.limit-push-down-enabled TRUE the default value is TRUE, set to FALSE to close the limit-pushdown of storage layer +kylin.query.flat-filter-max-children 500000 specifies the maximum number of filters when flatting filter. The default value is 500000 +kylin.server.query-metrics-enabled TRUE the default value is FALSE, set to TRUE to collect query metrics to JMX +kylin.security.profile saml specifies the way of security authentication, optional values include ldap, testing, saml, it should be set to ldap when integrating LDAP for SSO +kylin.security.ldap.connection-server ldap://ldap_server:389 specifies LDAP server, such as ldap +kylin.security.ldap.connection-username specifies LDAP username +kylin.security.ldap.connection-password specifies LDAP password +kylin.security.ldap.user-search-base specifies the scope of users synced to Kylin +kylin.security.ldap.user-search-pattern specifies the username for the login verification match +kylin.security.ldap.user-group-search-base specifies the scope of the user group synchronized to Kylin +kylin.security.ldap.user-group-search-filter specifies the type of user synced to Kylin +kylin.security.ldap.service-search-base need to be specifies when a service account is required to access Kylin +kylin.security.ldap.service-search-pattern need to be specifies when a service account is required to access Kylin +kylin.restclient.connection.default-max-per-route 20 max connection per route of Kylin +kylin.env.zookeeper-is-local false if zookeeper is local +kylin.server.auth-user-cache.expire-seconds specifies LDAP user information cache time, default is 300(s) +kylin.server.auth-user-cache.max-entries specifies maximum number of LDAP users, default is 100 +kylin.server.external-acl-provider org.apache.ranger.authorization.kylin.authorizer.RangerKylinAuthorizer +kylin.env.zookeeper-acl-enabled FALSE Enable ZooKeeper ACL to prevent unauthorized users from accessing the Znode or reducing the risk of bad operations resulting from this. The default value is FALSE +kylin.env.zookeeper.zk-auth digest:ADMIN:KYLIN use username +kylin.env.zookeeper.zk-acl world:anyone:rwcda Use a single ID as the ACL identifier. The default value is world +kylin.query.lazy-query-enabled false whether to lazily answer the queries that be sent repeatedly in a short time (hold it until the previous query be returned, and then reuse the result); The default value is false. +kylin.query.cache-signature-enabled false whether to use the signature of a query to determine the cache’s validity. The signature is calculated by the cube/hybrid list of the project, their last build time and other information (at the moment when cache is persisted); It’s default value is false, highly recommend to set it to true. +kylin.query.segment-cache-enabled false whether to cache the segment level returned data (from HBase storage) into Memcached. This feature is mainly for the cube that built very frequently (e.g, streaming cube, whose last build time always changed a couple minutes, the whole SQL statement level cache is very likely be cleaned; in this case, the by-segment cache can reduce the I/O). This only works when Memcached configured, the default value is false. +kylin.resourcestore.reconnect-base-ms 100 Reconnect second +kylin.job.remote-cli-port 22 client port diff --git a/core/generate_ctest/ctest_mapping/ctests-kylin-common.json b/core/generate_ctest/ctest_mapping/ctests-kylin-common.json new file mode 100644 index 00000000..b4374dbe --- /dev/null +++ b/core/generate_ctest/ctest_mapping/ctests-kylin-common.json @@ -0,0 +1 @@ +{"kylin.metadata.url": ["org.apache.kylin.common.KylinConfigTest#testCalciteExtrasProperties", "org.apache.kylin.common.KylinConfigTest#testThreadLocalOverride", "org.apache.kylin.common.KylinConfigTest#testCreateInstanceFromUriThrowsRuntimeException", "org.apache.kylin.common.KylinConfigTest#testGetMetadataUrlPrefix", "org.apache.kylin.common.persistence.HDFSResourceStoreTest#testListResourcesImpl", "org.apache.kylin.common.util.SSHClientTest#testCmd", "org.apache.kylin.common.KylinConfigTest#testSetKylinConfigInEnvIfMissingTakingEmptyProperties", "org.apache.kylin.common.util.SSHClientTest#testScp", "org.apache.kylin.common.restclient.RestClientTest#basicTests", "org.apache.kylin.common.KylinConfigTest#testExtShareTheBase", "org.apache.kylin.common.KylinConfigTest#testUnexpectedBlackInPro", "org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test", "org.apache.kylin.common.util.SourceConfigurationUtilTest#testHiveConf", "org.apache.kylin.common.KylinConfigTest#testBackwardCompatibility", "org.apache.kylin.common.KylinConfigTest#testHdfsWorkingDir", "org.apache.kylin.common.KylinConfigTest#testMRConfigOverride", "org.apache.kylin.common.KylinConfigTest#testPropertiesHotLoad", "org.apache.kylin.common.KylinConfigTest#testCreateInstanceFromUriThrowsIllegalStateExceptionOne", "org.apache.kylin.common.util.EncryptUtilTest#testNullInput"], "kylin.job.remote-cli-port": ["org.apache.kylin.common.util.SSHClientTest#testCmd", "org.apache.kylin.common.util.SSHClientTest#testScp"], "kylin.env.zookeeper-is-local": ["org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test"], "kylin.resourcestore.reconnect-base-ms": [], "kylin.env.zookeeper-base-path": ["org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test"], "kylin.env.hdfs-working-dir": ["org.apache.kylin.common.persistence.HDFSResourceStoreTest#testListResourcesImpl", "org.apache.kylin.common.KylinConfigTest#testHdfsWorkingDir"], "kylin.restclient.connection.default-max-per-route": ["org.apache.kylin.common.restclient.RestClientTest#basicTests", "org.apache.kylin.common.KylinConfigTest#testCreateInstanceFromUriThrowsRuntimeException"]} \ No newline at end of file diff --git a/core/generate_ctest/ctest_mapping/ctests-kylin-cube.json b/core/generate_ctest/ctest_mapping/ctests-kylin-cube.json new file mode 100644 index 00000000..4101d126 --- /dev/null +++ b/core/generate_ctest/ctest_mapping/ctests-kylin-cube.json @@ -0,0 +1 @@ +{"kylin.cube.is-automerge-enabled": [], "kylin.cube.aggrgroup.max-combination": ["org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", "org.apache.kylin.cube.CubeDescTest#testBadInit10", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", "org.apache.kylin.cube.CubeDescTest#testBadInit7", "org.apache.kylin.cube.CubeSpecificConfigTest#test", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", "org.apache.kylin.cube.CubeSpecificConfigTest#test2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", "org.apache.kylin.cube.CubeDescTest#testSerializeMap", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", "org.apache.kylin.cube.CubeDescTest#testSerialize", "org.apache.kylin.cube.CubeDescTest#testBadInit5", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", "org.apache.kylin.cube.CubeDescTest#testBadInit4", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", "org.apache.kylin.cube.CubeDescTest#testBadInit3", "org.apache.kylin.cube.CubeDescTest#testBadInit12", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", "org.apache.kylin.cube.CubeDescTest#testGoodInit", "org.apache.kylin.cube.CubeDescTest#testBadInit15", "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", "org.apache.kylin.cube.CubeDescTest#testCiCube", "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", "org.apache.kylin.cube.CubeDescTest#testBadInit8", "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", "org.apache.kylin.cube.CubeDescTest#testBadInit14", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", "org.apache.kylin.cube.CubeDescTest#testBadInit6", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", "org.apache.kylin.cube.CubeDescTest#testBadInit1", "org.apache.kylin.cube.CubeDescTest#testBadInit2", "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", "org.apache.kylin.cube.CubeDescTest#testBadInit9", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", "org.apache.kylin.cube.CubeDescTest#testBadInit11", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", "org.apache.kylin.cube.CubeManagerTest#testBasics", "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned"], "kylin.storage.hbase.table-name-prefix": ["org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap"], "kylin.cube.rowkey.max-size": ["org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", "org.apache.kylin.cube.CubeDescTest#testBadInit7", "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", "org.apache.kylin.cube.CubeSpecificConfigTest#test2", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", "org.apache.kylin.cube.CubeDescTest#testBadInit14", "org.apache.kylin.cube.CubeDescTest#testCiCube", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", "org.apache.kylin.cube.CubeDescTest#testBadInit12", "org.apache.kylin.cube.CubeDescTest#testBadInit5", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", "org.apache.kylin.cube.CubeManagerTest#testBasics", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow", "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", "org.apache.kylin.cube.CubeDescTest#testBadInit1", "org.apache.kylin.cube.CubeDescTest#testBadInit4", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", "org.apache.kylin.cube.CubeDescTest#testBadInit8", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", "org.apache.kylin.cube.CubeDescTest#testBadInit3", "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", "org.apache.kylin.cube.CubeDescTest#testBadInit2", "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", "org.apache.kylin.cube.CubeDescTest#testBadInit9", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", "org.apache.kylin.cube.CubeDescTest#testBadInit11", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", "org.apache.kylin.cube.CubeDescTest#testBadInit6", "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", "org.apache.kylin.cube.CubeDescTest#testSerializeMap", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", "org.apache.kylin.cube.CubeDescTest#testSerialize", "org.apache.kylin.cube.CubeDescTest#testGoodInit", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", "org.apache.kylin.cube.CubeSpecificConfigTest#test", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", "org.apache.kylin.cube.CubeDescTest#testBadInit10", "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", "org.apache.kylin.cube.CubeDescTest#testBadInit15", "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad"], "kylin.cube.aggrgroup.is-mandatory-only-valid": ["org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", "org.apache.kylin.cube.CubeDescTest#testBadInit14", "org.apache.kylin.cube.CubeDescTest#testCiCube", "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", "org.apache.kylin.cube.CubeDescTest#testBadInit9", "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", "org.apache.kylin.cube.CubeDescTest#testSerialize", "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", "org.apache.kylin.cube.CubeManagerTest#testBasics", "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", "org.apache.kylin.cube.CubeDescTest#testBadInit7", "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", "org.apache.kylin.cube.CubeDescTest#testBadInit2", "org.apache.kylin.cube.CubeDescTest#testGoodInit", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", "org.apache.kylin.cube.CubeSpecificConfigTest#test2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", "org.apache.kylin.cube.CubeDescTest#testBadInit3", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", "org.apache.kylin.cube.CubeDescTest#testBadInit6", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", "org.apache.kylin.cube.CubeDescTest#testBadInit15", "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", "org.apache.kylin.cube.CubeDescTest#testBadInit10", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", "org.apache.kylin.cube.CubeDescTest#testBadInit11", "org.apache.kylin.cube.CubeDescTest#testBadInit4", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", "org.apache.kylin.cube.CubeDescTest#testSerializeMap", "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", "org.apache.kylin.cube.CubeDescTest#testBadInit5", "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", "org.apache.kylin.cube.CubeDescTest#testBadInit1", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", "org.apache.kylin.cube.CubeDescTest#testBadInit8", "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", "org.apache.kylin.cube.CubeSpecificConfigTest#test", "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", "org.apache.kylin.cube.CubeDescTest#testBadInit12"], "kylin.resourcestore.reconnect-base-ms": ["org.apache.kylin.cube.CubeDescTest#testBadInit9", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", "org.apache.kylin.cube.CubeDescTest#testBadInit4", "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonemptyProject", "org.apache.kylin.cube.CubeDescTest#testSerialize", "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", "org.apache.kylin.cube.CubeDescTest#testCiCube", "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", "org.apache.kylin.cube.CubeSpecificConfigTest#test", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", "org.apache.kylin.cube.CubeSpecificConfigTest#test2", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", "org.apache.kylin.cube.CubeDescTest#testBadInit15", "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", "org.apache.kylin.cube.CubeDescTest#testBadInit5", "org.apache.kylin.cube.CubeManagerTest#testGetAllCubes", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", "org.apache.kylin.cube.CubeManagerTest#testBasics", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", "org.apache.kylin.cube.CubeDescTest#testBadInit3", "org.apache.kylin.cube.CubeDescTest#testBadInit10", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", "org.apache.kylin.cube.CubeDescTest#testBadInit2", "org.apache.kylin.cube.CubeDescTest#testBadInit8", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", "org.apache.kylin.cube.CubeDescTest#testSerializeMap", "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", "org.apache.kylin.cube.CubeDescTest#testGoodInit", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", "org.apache.kylin.cube.CubeDescTest#testBadInit12", "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", "org.apache.kylin.cube.CubeDescTest#testBadInit14", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", "org.apache.kylin.cube.CubeDescTest#testBadInit11", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", "org.apache.kylin.cube.CubeDescTest#testBadInit7", "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", "org.apache.kylin.cube.CubeDescTest#testBadInit6", "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonexistProject", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", "org.apache.kylin.cube.CubeDescTest#testBadInit1"], "kylin.job.cube-auto-ready-enabled": ["org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge"], "kylin.query.skip-empty-segments": ["org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg"], "kylin.metadata.check-copy-on-write": ["org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", "org.apache.kylin.cube.CubeManagerTest#testBasics", "org.apache.kylin.cube.CubeDescTest#testBadInit15", "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonexistProject", "org.apache.kylin.cube.CubeDescTest#testBadInit14", "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", "org.apache.kylin.cube.CubeDescTest#testBadInit1", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", "org.apache.kylin.cube.CubeDescTest#testBadInit7", "org.apache.kylin.cube.CubeDescTest#testCiCube", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", "org.apache.kylin.cube.CubeDescTest#testBadInit12", "org.apache.kylin.cube.CubeDescTest#testBadInit4", "org.apache.kylin.cube.CubeDescTest#testSerializeMap", "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow", "org.apache.kylin.cube.CubeDescTest#testBadInit10", "org.apache.kylin.cube.CubeSpecificConfigTest#test2", "org.apache.kylin.cube.CubeDescTest#testBadInit9", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", "org.apache.kylin.cube.CubeDescTest#testBadInit3", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", "org.apache.kylin.cube.CubeDescTest#testSerialize", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", "org.apache.kylin.cube.CubeDescTest#testBadInit8", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", "org.apache.kylin.cube.CubeDescTest#testBadInit11", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", "org.apache.kylin.cube.CubeDescTest#testBadInit6", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonemptyProject", "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", "org.apache.kylin.cube.CubeSpecificConfigTest#test", "org.apache.kylin.cube.CubeDescTest#testBadInit5", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", "org.apache.kylin.cube.CubeDescTest#testGoodInit", "org.apache.kylin.cube.CubeDescTest#testBadInit2", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2"]} \ No newline at end of file diff --git a/core/generate_ctest/ctest_mapping/ctests-kylin-storage.json b/core/generate_ctest/ctest_mapping/ctests-kylin-storage.json new file mode 100644 index 00000000..b0b09080 --- /dev/null +++ b/core/generate_ctest/ctest_mapping/ctests-kylin-storage.json @@ -0,0 +1 @@ +{"kylin.cube.aggrgroup.max-combination": ["org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics"], "kylin.cube.rowkey.max-size": ["org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics"], "kylin.cube.aggrgroup.is-mandatory-only-valid": ["org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics"], "kylin.resourcestore.reconnect-base-ms": ["org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics"], "kylin.metadata.check-copy-on-write": ["org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics"]} \ No newline at end of file diff --git a/core/generate_ctest/ctest_mapping/ctests-kylin-tool.json b/core/generate_ctest/ctest_mapping/ctests-kylin-tool.json new file mode 100644 index 00000000..36df2984 --- /dev/null +++ b/core/generate_ctest/ctest_mapping/ctests-kylin-tool.json @@ -0,0 +1 @@ +{"kylin.cube.aggrgroup.max-combination": ["org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", "org.apache.kylin.tool.HybridCubeCLITest#test2Update", "org.apache.kylin.tool.HybridCubeCLITest#test1Create", "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap"], "kylin.storage.hbase.table-name-prefix": ["org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap"], "kylin.cube.rowkey.max-size": ["org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", "org.apache.kylin.tool.HybridCubeCLITest#test1Create", "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", "org.apache.kylin.tool.HybridCubeCLITest#test2Update", "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj"], "kylin.cube.aggrgroup.is-mandatory-only-valid": ["org.apache.kylin.tool.HybridCubeCLITest#test2Update", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap", "org.apache.kylin.tool.HybridCubeCLITest#test1Create", "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap"], "kylin.resourcestore.reconnect-base-ms": ["org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", "org.apache.kylin.tool.HybridCubeCLITest#test1Create", "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", "org.apache.kylin.tool.HybridCubeCLITest#test2Update", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap"], "kylin.env": ["org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute"], "kylin.metadata.check-copy-on-write": ["org.apache.kylin.tool.HybridCubeCLITest#test3Delete", "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap", "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", "org.apache.kylin.tool.HybridCubeCLITest#test1Create", "org.apache.kylin.tool.HybridCubeCLITest#test2Update"]} \ No newline at end of file diff --git a/core/generate_ctest/inject.py b/core/generate_ctest/inject.py index 75f5b443..2d334c52 100644 --- a/core/generate_ctest/inject.py +++ b/core/generate_ctest/inject.py @@ -14,7 +14,7 @@ def inject_config(param_value_pairs): for p, v in param_value_pairs.items(): print(">>>>[ctest_core] injecting {} with value {}".format(p, v)) - if project in [ZOOKEEPER, ALLUXIO]: + if project in [ZOOKEEPER, ALLUXIO, KCOMMON, KTOOL, KSTORAGE, KCUBE]: for inject_path in INJECTION_PATH[project]: print(">>>>[ctest_core] injecting into file: {}".format(inject_path)) file = open(inject_path, "w") @@ -41,7 +41,7 @@ def inject_config(param_value_pairs): def clean_conf_file(project): print(">>>> cleaning injected configuration from file") - if project in [ZOOKEEPER, ALLUXIO]: + if project in [ZOOKEEPER, ALLUXIO, KCOMMON, KTOOL, KSTORAGE, KCUBE]: for inject_path in INJECTION_PATH[project]: file = open(inject_path, "w") file.write("\n") diff --git a/core/generate_ctest/main.py b/core/generate_ctest/main.py index a53169d6..5a4a5458 100644 --- a/core/generate_ctest/main.py +++ b/core/generate_ctest/main.py @@ -33,7 +33,7 @@ def test_value_pair(test_input): mt_file = open(os.path.join(GENCTEST_TR_DIR, project, MT_FILE.format(id=param)), "w") associated_tests = mapping[param] if param in mapping else [] - if len(mapping[param]) != 0: + if len(associated_tests) != 0: for value in values: tr = run_test_seperate(param, value, associated_tests) diff --git a/core/generate_ctest/program_input.py b/core/generate_ctest/program_input.py index 9147868a..09721445 100644 --- a/core/generate_ctest/program_input.py +++ b/core/generate_ctest/program_input.py @@ -4,17 +4,17 @@ # run mode "run_mode": "generate_ctest", # string # name of the project, i.e. hadoop-common, hadoop-hdfs, see constant.py - "project": "hadoop-common", # string + "project": "kylin-cube", # string # path to param -> tests json mapping - "mapping_path": "../../data/ctest_mapping/opensource-hadoop-common.json", # string + "mapping_path": "../../data/ctest_mapping/opensource-kylin-cube.json", # string # good values of params tests will be run against - "param_value_tsv": "sample-hadoop-common.tsv", # string + "param_value_tsv": "sample-kylin-cube.tsv", # string # display the terminal output live, without saving any results "display_mode": False, # bool # whether to use mvn test or mvn surefire:test - "use_surefire": True, # bool + "use_surefire": False, # bool # additional maven options to pass to `mvn surefire:test -Dtest=...` - "maven_args": [], # list of strings, each element is an option + "maven_args": ["-DfailIfNoTests=false"], # list of strings, each element is an option # timeout on the mvn test command "cmd_timeout": None, # int } diff --git a/core/generate_ctest/run_test.py b/core/generate_ctest/run_test.py index 63847227..ed376dad 100644 --- a/core/generate_ctest/run_test.py +++ b/core/generate_ctest/run_test.py @@ -14,7 +14,10 @@ display_mode = p_input["display_mode"] project = p_input["project"] cmd_timeout = p_input["cmd_timeout"] -testing_dir = os.path.join(PROJECT_DIR[project], MODULE_SUBDIR[project]) +if project in [KCOMMON,KTOOL,KSTORAGE,KCUBE]: + testing_dir = os.path.join(PROJECT_DIR[project]) +else: + testing_dir = os.path.join(PROJECT_DIR[project],MODULE_SUBDIR[project]) def run_test_seperate(param, value, associated_tests): diff --git a/core/generate_ctest/run_test_utils.py b/core/generate_ctest/run_test_utils.py index 6ac063c8..ff26f958 100644 --- a/core/generate_ctest/run_test_utils.py +++ b/core/generate_ctest/run_test_utils.py @@ -7,6 +7,7 @@ maven_args = p_input["maven_args"] use_surefire = p_input["use_surefire"] ansi_escape = re.compile(r'(\x9B|\x1B\[)[0-?]*[ -\/]*[@-~]') +project = p_input["project"] class TestResult: def __init__(self, ran_tests_and_time=set(), failed_tests=set()): @@ -18,7 +19,15 @@ def maven_cmd(test, add_time=False): # surefire:test reuses test build from last compilation # if you modified the test and want to rerun it, you must use `mvn test` test_mode = "surefire:test" if use_surefire else "test" - cmd = ["mvn", test_mode, "-Dtest={}".format(test)] + maven_args + if project in [KCUBE, KSTORAGE]: + modulename = "core-" + project.split("-")[1] + cmd = ["mvn", "-pl", "core-common,"+ modulename, test_mode, "-Dtest={}".format(test)] + maven_args + elif project == KTOOL: + cmd = ["mvn", "-pl", "core-common,tool", test_mode, "-Dtest={}".format(test)] + maven_args + else: + cmd = ["mvn", test_mode, "-Dtest={}".format(test)] + maven_args + if add_time: + cmd = ["time"] + cmd if add_time: cmd = ["time"] + cmd print(">>>>[ctest_core] command: " + " ".join(cmd)) diff --git a/core/generate_ctest/sample-kylin-common.tsv b/core/generate_ctest/sample-kylin-common.tsv new file mode 100644 index 00000000..585fcd59 --- /dev/null +++ b/core/generate_ctest/sample-kylin-common.tsv @@ -0,0 +1,8 @@ +kylin.env.zookeeper-is-local true SKIP +kylin.resourcestore.reconnect-base-ms 50 200 +kylin.job.remote-cli-port 11 44 +kylin.metadata.url kylin_metadata@job kylin_metadata@url +kylin.restclient.connection.default-max-per-route 10 40 +kylin.env.zookeeper-base-path /valid/file1 /valid/file2 +kylin.env.hdfs-working-dir /valid/file1 /valid/file2 +kylin.restclient.connection.default-max-per-route 10 40 diff --git a/core/generate_ctest/sample-kylin-cube.tsv b/core/generate_ctest/sample-kylin-cube.tsv new file mode 100644 index 00000000..1814309d --- /dev/null +++ b/core/generate_ctest/sample-kylin-cube.tsv @@ -0,0 +1,283 @@ +kylin.env.hdfs-working-dir /valid/file1 /valid/file2 +kylin.env DEV DEV +kylin.env.zookeeper-base-path /valid/file1 /valid/file2 +kylin.env.zookeeper-connect-string SKIP SKIP +kylin.env.hadoop-conf-dir SKIP SKIP +kylin.server.mode SKIP SKIP +kylin.server.cluster-name SKIP SKIP +kylin.job.scheduler.default 1 4 +kylin.job.lock SKIP SKIP +kylin.job.scheduler.safemode FALSE SKIP +kylin.job.scheduler.safemode.runable-projects project1 project2 +kylin.storage.hbase.cluster-fs SKIP SKIP +kylin.storage.hbase.cluster-hdfs-config-file SKIP SKIP +kylin.web.timezone REST SKIP +kylin.web.cross-domain-enabled FALSE SKIP +kylin.web.export-allow-admin FALSE SKIP +kylin.web.export-allow-other FALSE SKIP +kylin.web.dashboard-enabled TRUE SKIP +kylin.metadata.url SKIP SKIP +kylin.metadata.dimension-encoding-max-length 128 512 +kylin.metadata.sync-retries 1 6 +kylin.metadata.sync-error-handler SKIP SKIP +kylin.metadata.check-copy-on-write TRUE SKIP +kylin.metadata.hbase-client-scanner-timeout-period 5000 20000 +kylin.metadata.hbase-rpc-timeout 2500 10000 +kylin.metadata.hbase-client-retries-number 0 2 +kylin.metadata.resource-store-provider.jdbc SKIP SKIP +kylin.metadata.jdbc.dialect SKIP SKIP +kylin.metadata.jdbc.json-always-small-cell FALSE SKIP +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold 50 200 +kylin.metadata.jdbc.small-cell-meta-size-error-threshold 0 2 +kylin.metadata.jdbc.max-cell-size 0 2 +kylin.source.hive.client SKIP SKIP +kylin.source.hive.beeline-shell SKIP SKIP +kylin.source.hive.beeline-params SKIP SKIP +kylin.source.hive.enable-sparksql-for-table-ops FALSE SKIP +kylin.source.hive.sparksql-beeline-shell SKIP SKIP +kylin.source.hive.sparksql-beeline-params SKIP SKIP +kylin.source.default SKIP SKIP +kylin.source.jdbc.connection-url SKIP SKIP +kylin.source.jdbc.driver SKIP SKIP +kylin.source.jdbc.dialect SKIP SKIP +kylin.source.jdbc.user xdsuper samsuper +kylin.source.jdbc.pass SKIP SKIP +kylin.source.jdbc.sqoop-home SKIP SKIP +kylin.source.jdbc.sqoop-mapper-num 1 8 +kylin.source.jdbc.field-delimiter SKIP SKIP +kylin.source.hive.default-varchar-precision SKIP SKIP +kylin.source.hive.default-char-precision 127 510 +kylin.source.hive.default-decimal-precision SKIP SKIP +kylin.source.hive.default-decimal-scale SKIP SKIP +kylin.cube.ignore-signature-inconsistency TRUE SKIP +kylin.cube.aggrgroup.max-combination 16384 65536 +kylin.cube.aggrgroup.is-mandatory-only-valid FALSE SKIP +kylin.cube.rowkey.max-size 31 126 +kylin.cube.allow-appear-in-multiple-projects SKIP SKIP +kylin.cube.gtscanrequest-serialization-level 0 2 +kylin.web.hide-measures SKIP SKIP +kylin.cube.size-estimate-ratio 0.125 0.5 +kylin.cube.size-estimate-memhungry-ratio SKIP SKIP +kylin.cube.size-estimate-countdistinct-ratio 0.25 1.0 +kylin.cube.size-estimate-topn-ratio 0.25 1.0 +kylin.cube.algorithm SKIP SKIP +kylin.cube.algorithm.layer-or-inmem-threshold 1 14 +kylin.cube.algorithm.inmem-split-limit 250 1000 +kylin.cube.algorithm.inmem-concurrent-threads 0 2 +kylin.job.sampling-percentage 50 200 +kylin.cube.is-automerge-enabled FALSE SKIP +kylin.snapshot.max-mb 150 600 +kylin.snapshot.max-cache-entry 250 1000 +kylin.snapshot.ext.shard-mb 250 1000 +kylin.snapshot.ext.local.cache.path /valid/file1 /valid/file2 +kylin.snapshot.ext.local.cache.max-size-gb SKIP SKIP +kylin.storage.default 1 4 +kylin.source.hive.keep-flat-table TRUE SKIP +kylin.source.hive.database-for-flat-table SKIP SKIP +kylin.source.hive.flat-table-storage-format SKIP SKIP +kylin.source.hive.flat-table-field-delimiter SKIP SKIP +kylin.source.hive.intermediate-table-prefix SKIP SKIP +kylin.source.hive.redistribute-flat-table FALSE SKIP +kylin.source.hive.redistribute-column-count 1 6 +kylin.source.hive.table-dir-create-first TRUE SKIP +kylin.storage.partition.aggr-spill-enabled FALSE SKIP +kylin.engine.mr.lib-dir SKIP SKIP +kylin.engine.mr.reduce-input-mb 250 1000 +kylin.engine.mr.reduce-count-ratio 0.5 2.0 +kylin.engine.mr.min-reducer-number SKIP SKIP +kylin.engine.mr.max-reducer-number SKIP SKIP +kylin.engine.mr.mapper-input-rows 500000 2000000 +kylin.engine.mr.max-cuboid-stats-calculator-number 0 2 +kylin.engine.mr.build-dict-in-reducer FALSE SKIP +kylin.engine.mr.yarn-check-interval-seconds 1 20 +kylin.engine.mr.use-local-classpath FALSE SKIP +kylin.dictionary.use-forest-trie FALSE SKIP +kylin.dictionary.forest-trie-max-mb 250 1000 +kylin.dictionary.max-cache-entry 1500 6000 +kylin.dictionary.growing-enabled TRUE SKIP +kylin.dictionary.append-entry-size 5000000 20000000 +kylin.dictionary.append-max-versions 1 6 +kylin.dictionary.append-version-ttl 129600000 518400000 +kylin.dictionary.resuable TRUE SKIP +kylin.dictionary.shrunken-from-global-enabled FALSE SKIP +kylin.engine.mr.build-uhc-dict-in-additional-step FALSE SKIP +kylin.engine.mr.uhc-reducer-count 0 2 +kylin.engine.spark-conf.spark.master SKIP SKIP +kylin.engine.spark-conf.spark.submit.deployMode SKIP SKIP +kylin.engine.spark-conf.spark.yarn.queue SKIP SKIP +kylin.engine.spark-conf.spark.driver.memory G SKIP +kylin.engine.spark-conf.spark.executor.memory G SKIP +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead 512 2048 +kylin.engine.spark-conf.spark.executor.cores 0 2 +kylin.engine.spark-conf.spark.network.timeout SKIP SKIP +kylin.engine.spark-conf.spark.executor.instances 0 2 +kylin.engine.spark-conf.spark.eventLog.enabled FALSE SKIP +kylin.engine.spark-conf.spark.hadoop.dfs.replication SKIP SKIP +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress FALSE SKIP +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec SKIP SKIP +kylin.engine.spark.rdd-partition-cut-mb 1 20 +kylin.engine.spark.min-partition 0 2 +kylin.engine.spark.max-partition SKIP SKIP +kylin.engine.spark.storage-level RDD SKIP +kylin.engine.spark-conf-mergedict.spark.executor.memory G SKIP +kylin.engine.spark-conf-mergedict.spark.memory.fraction 0.1 0.4 +kylin.engine.livy-conf.livy-enabled TRUE SKIP +kylin.engine.livy-conf.livy-url SKIP SKIP +kylin.engine.spark-conf.spark.shuffle.service.enabled SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.enabled SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout 30 120 +kylin.job.log-dir /valid/file1 /valid/file2 +kylin.job.allow-empty-segment FALSE SKIP +kylin.job.max-concurrent-jobs SKIP SKIP +kylin.job.retry 1 -1 +kylin.job.retry-interval 15000 60000 +kylin.job.scheduler.priority-considered TRUE SKIP +kylin.job.scheduler.priority-bar-fetch-from-queue 10 40 +kylin.job.scheduler.poll-interval-second 15 60 +kylin.job.error-record-threshold 1 -1 +kylin.job.cube-auto-ready-enabled FALSE SKIP +kylin.cube.max-building-segments 1 20 +kylin.job.notification-enabled TRUE SKIP +kylin.job.notification-mail-enable-starttls TRUE SKIP +kylin.job.notification-mail-host SKIP SKIP +kylin.job.notification-mail-port 12 50 +kylin.job.notification-mail-username SKIP SKIP +kylin.job.notification-mail-password SKIP SKIP +kylin.job.notification-mail-sender SKIP SKIP +kylin.job.notification-admin-emails SKIP SKIP +kylin.cube.cubeplanner.enabled FALSE SKIP +kylin.server.query-metrics2-enabled FALSE SKIP +kylin.metrics.reporter-query-enabled FALSE SKIP +kylin.metrics.reporter-job-enabled FALSE SKIP +kylin.metrics.monitor-enabled FALSE SKIP +kylin.cube.cubeplanner.enabled-for-existing-cube FALSE SKIP +kylin.cube.cubeplanner.algorithm-threshold-greedy 1 16 +kylin.cube.cubeplanner.expansion-threshold 7.5 30.0 +kylin.cube.cubeplanner.recommend-cache-max-size 100 400 +kylin.cube.cubeplanner.query-uncertainty-ratio 0.05 0.2 +kylin.cube.cubeplanner.bpus-min-benefit-ratio 0.005 0.02 +kylin.cube.cubeplanner.algorithm-threshold-genetic 11 46 +kylin.storage.hbase.table-name-prefix KYLIN SKIP +kylin.storage.hbase.namespace SKIP SKIP +kylin.storage.hbase.coprocessor-local-jar SKIP SKIP +kylin.storage.hbase.coprocessor-mem-gb 1.5 6.0 +kylin.storage.hbase.run-local-coprocessor TRUE SKIP +kylin.storage.hbase.coprocessor-timeout-seconds 1 -1 +kylin.storage.hbase.region-cut-gb SKIP SKIP +kylin.storage.hbase.min-region-count 0 2 +kylin.storage.hbase.max-region-count 250 1000 +kylin.storage.hbase.hfile-size-gb 1.0 4.0 +kylin.storage.hbase.max-scan-result-bytes 2621440 10485760 +kylin.storage.hbase.compression-codec SKIP SKIP +kylin.storage.hbase.rowkey-encoding SKIP SKIP +kylin.storage.hbase.block-size-bytes 524288 2097152 +kylin.storage.hbase.small-family-block-size-bytes 32768 131072 +kylin.storage.hbase.owner-tag SKIP SKIP +kylin.storage.hbase.endpoint-compress-result FALSE SKIP +kylin.storage.hbase.max-hconnection-threads 1024 4096 +kylin.storage.hbase.core-hconnection-threads 1024 4096 +kylin.storage.hbase.hconnection-threads-alive-seconds 30 120 +kylin.storage.hbase.replication-scope 1 -1 +kylin.storage.hbase.scan-cache-rows 512 2048 +kylin.secondary.storage.url kylin.secondary.storage.url=hostname:kylin_metadata@hbase hbase.zookeeper.quorum=hostname:11000 +kylin.job.execute-output.max-size 5242380 20969520 +kylin.engine.spark.output.max-size 5242380 20969520 +kylin.stream.job.dfs.block.size 0.1 0.5 +kylin.stream.index.path /valid/file1 /valid/file2 +kylin.stream.node SKIP SKIP +kylin.stream.metadata.store.type SKIP SKIP +kylin.stream.receiver.use-threads-per-query 1 16 +kylin.stream.index.maxrows 25000 100000 +kylin.stream.cube-num-of-consumer-tasks 1 6 +kylin.stream.segment.retention.policy SKIP SKIP +kylin.stream.build.additional.cuboids true SKIP +kylin.stream.cube.window 1800 7200 +kylin.stream.cube.duration 3600 14400 +kylin.stream.cube.duration.max 21600 86400 +kylin.stream.checkpoint.file.max.num 1 10 +kylin.stream.index.checkpoint.intervals 150 600 +kylin.stream.immutable.segments.max.num 50 200 +kylin.stream.consume.offsets.latest false SKIP +kylin.stream.assigner SKIP SKIP +kylin.stream.coordinator.client.timeout.millsecond 2500 10000 +kylin.stream.receiver.client.timeout.millsecond 2500 10000 +kylin.stream.receiver.http.max.threads 100 400 +kylin.stream.receiver.http.min.threads 1 20 +kylin.stream.receiver.query-core-threads 25 100 +kylin.stream.receiver.query-max-threads 100 400 +kylin.stream.segment-max-fragments 25 100 +kylin.stream.segment-min-fragments 7 30 +kylin.stream.max-fragment-size-mb 150 600 +kylin.stream.fragments-auto-merge-enable false SKIP +kylin.stream.metrics.option SKIP SKIP +kylin.stream.event.timezone SKIP SKIP +kylin.stream.auto-resubmit-after-discard-enabled SKIP SKIP +kylin.storage.clean-after-delete-operation TRUE SKIP +kylin.query.skip-empty-segments FALSE SKIP +kylin.query.large-query-threshold 500000 2000000 +kylin.query.security-enabled FALSE SKIP +kylin.query.security.table-acl-enabled FALSE SKIP +kylin.query.calcite.extras-props.conformance SKIP SKIP +kylin.query.calcite.extras-props.caseSensitive FALSE SKIP +kylin.query.calcite.extras-props.unquotedCasing UNCHANGED TO_UPPER +kylin.query.calcite.extras-props.quoting DOUBLE_QUOTE BRACKET +kylin.query.statement-cache-max-num 25000 100000 +kylin.query.statement-cache-max-num-per-key 25 100 +kylin.query.enable-dict-enumerator TRUE SKIP +kylin.query.enable-dynamic-column FALSE SKIP +kylin.storage.hbase.max-fuzzykey-scan 100 400 +kylin.storage.hbase.max-fuzzykey-scan-split 0 2 +kylin.storage.hbase.max-visit-scanrange 500000 2000000 +kylin.query.cache-enabled FALSE SKIP +kylin.query.cache-threshold-duration 1000 4000 +kylin.query.cache-threshold-scan-count 5120 20480 +kylin.query.cache-threshold-scan-bytes 524288 2097152 +kylin.query.timeout-seconds 1 -1 +kylin.query.timeout-seconds-coefficient 0.25 1.0 +kylin.query.max-scan-bytes 1 -1 +kylin.storage.partition.max-scan-bytes 1610612736 6442450944 +kylin.query.max-return-rows 2500000 10000000 +kylin.query.badquery-stacktrace-depth 1 20 +kylin.query.badquery-history-number 25 100 +kylin.query.badquery-alerting-seconds 45 180 +kylin.query.badquery-persistent-enabled false SKIP +kylin.query.pushdown.runner-class-name SKIP SKIP +kylin.query.pushdown.jdbc.url SKIP SKIP +kylin.query.pushdown.jdbc.driver SKIP SKIP +kylin.query.pushdown.jdbc.username SKIP SKIP +kylin.query.pushdown.jdbc.password SKIP SKIP +kylin.query.pushdown.jdbc.pool-max-total 1 16 +kylin.query.pushdown.jdbc.pool-max-idle 1 16 +kylin.query.pushdown.jdbc.pool-min-idle 1 -1 +kylin.query.pushdown.update-enabled TRUE SKIP +kylin.query.pushdown.cache-enabled TRUE SKIP +kylin.query.force-limit 0 -2 +kylin.storage.limit-push-down-enabled FALSE SKIP +kylin.query.flat-filter-max-children 250000 1000000 +kylin.server.query-metrics-enabled FALSE SKIP +kylin.security.profile SKIP SKIP +kylin.security.ldap.connection-server SKIP SKIP +kylin.security.ldap.connection-username SKIP SKIP +kylin.security.ldap.connection-password SKIP SKIP +kylin.security.ldap.user-search-base SKIP SKIP +kylin.security.ldap.user-search-pattern SKIP SKIP +kylin.security.ldap.user-group-search-base SKIP SKIP +kylin.security.ldap.user-group-search-filter SKIP SKIP +kylin.security.ldap.service-search-base SKIP SKIP +kylin.security.ldap.service-search-pattern SKIP SKIP +kylin.restclient.connection.default-max-per-route 10 40 +kylin.env.zookeeper-is-local true SKIP +kylin.server.auth-user-cache.expire-seconds SKIP SKIP +kylin.server.auth-user-cache.max-entries SKIP SKIP +kylin.server.external-acl-provider SKIP SKIP +kylin.env.zookeeper-acl-enabled TRUE SKIP +kylin.env.zookeeper.zk-auth SKIP SKIP +kylin.env.zookeeper.zk-acl SKIP SKIP +kylin.query.lazy-query-enabled true SKIP +kylin.query.cache-signature-enabled true SKIP +kylin.query.segment-cache-enabled true SKIP +kylin.resourcestore.reconnect-base-ms 50 200 +kylin.job.remote-cli-port 11 44 diff --git a/core/generate_ctest/sample-kylin-storage.tsv b/core/generate_ctest/sample-kylin-storage.tsv new file mode 100644 index 00000000..1814309d --- /dev/null +++ b/core/generate_ctest/sample-kylin-storage.tsv @@ -0,0 +1,283 @@ +kylin.env.hdfs-working-dir /valid/file1 /valid/file2 +kylin.env DEV DEV +kylin.env.zookeeper-base-path /valid/file1 /valid/file2 +kylin.env.zookeeper-connect-string SKIP SKIP +kylin.env.hadoop-conf-dir SKIP SKIP +kylin.server.mode SKIP SKIP +kylin.server.cluster-name SKIP SKIP +kylin.job.scheduler.default 1 4 +kylin.job.lock SKIP SKIP +kylin.job.scheduler.safemode FALSE SKIP +kylin.job.scheduler.safemode.runable-projects project1 project2 +kylin.storage.hbase.cluster-fs SKIP SKIP +kylin.storage.hbase.cluster-hdfs-config-file SKIP SKIP +kylin.web.timezone REST SKIP +kylin.web.cross-domain-enabled FALSE SKIP +kylin.web.export-allow-admin FALSE SKIP +kylin.web.export-allow-other FALSE SKIP +kylin.web.dashboard-enabled TRUE SKIP +kylin.metadata.url SKIP SKIP +kylin.metadata.dimension-encoding-max-length 128 512 +kylin.metadata.sync-retries 1 6 +kylin.metadata.sync-error-handler SKIP SKIP +kylin.metadata.check-copy-on-write TRUE SKIP +kylin.metadata.hbase-client-scanner-timeout-period 5000 20000 +kylin.metadata.hbase-rpc-timeout 2500 10000 +kylin.metadata.hbase-client-retries-number 0 2 +kylin.metadata.resource-store-provider.jdbc SKIP SKIP +kylin.metadata.jdbc.dialect SKIP SKIP +kylin.metadata.jdbc.json-always-small-cell FALSE SKIP +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold 50 200 +kylin.metadata.jdbc.small-cell-meta-size-error-threshold 0 2 +kylin.metadata.jdbc.max-cell-size 0 2 +kylin.source.hive.client SKIP SKIP +kylin.source.hive.beeline-shell SKIP SKIP +kylin.source.hive.beeline-params SKIP SKIP +kylin.source.hive.enable-sparksql-for-table-ops FALSE SKIP +kylin.source.hive.sparksql-beeline-shell SKIP SKIP +kylin.source.hive.sparksql-beeline-params SKIP SKIP +kylin.source.default SKIP SKIP +kylin.source.jdbc.connection-url SKIP SKIP +kylin.source.jdbc.driver SKIP SKIP +kylin.source.jdbc.dialect SKIP SKIP +kylin.source.jdbc.user xdsuper samsuper +kylin.source.jdbc.pass SKIP SKIP +kylin.source.jdbc.sqoop-home SKIP SKIP +kylin.source.jdbc.sqoop-mapper-num 1 8 +kylin.source.jdbc.field-delimiter SKIP SKIP +kylin.source.hive.default-varchar-precision SKIP SKIP +kylin.source.hive.default-char-precision 127 510 +kylin.source.hive.default-decimal-precision SKIP SKIP +kylin.source.hive.default-decimal-scale SKIP SKIP +kylin.cube.ignore-signature-inconsistency TRUE SKIP +kylin.cube.aggrgroup.max-combination 16384 65536 +kylin.cube.aggrgroup.is-mandatory-only-valid FALSE SKIP +kylin.cube.rowkey.max-size 31 126 +kylin.cube.allow-appear-in-multiple-projects SKIP SKIP +kylin.cube.gtscanrequest-serialization-level 0 2 +kylin.web.hide-measures SKIP SKIP +kylin.cube.size-estimate-ratio 0.125 0.5 +kylin.cube.size-estimate-memhungry-ratio SKIP SKIP +kylin.cube.size-estimate-countdistinct-ratio 0.25 1.0 +kylin.cube.size-estimate-topn-ratio 0.25 1.0 +kylin.cube.algorithm SKIP SKIP +kylin.cube.algorithm.layer-or-inmem-threshold 1 14 +kylin.cube.algorithm.inmem-split-limit 250 1000 +kylin.cube.algorithm.inmem-concurrent-threads 0 2 +kylin.job.sampling-percentage 50 200 +kylin.cube.is-automerge-enabled FALSE SKIP +kylin.snapshot.max-mb 150 600 +kylin.snapshot.max-cache-entry 250 1000 +kylin.snapshot.ext.shard-mb 250 1000 +kylin.snapshot.ext.local.cache.path /valid/file1 /valid/file2 +kylin.snapshot.ext.local.cache.max-size-gb SKIP SKIP +kylin.storage.default 1 4 +kylin.source.hive.keep-flat-table TRUE SKIP +kylin.source.hive.database-for-flat-table SKIP SKIP +kylin.source.hive.flat-table-storage-format SKIP SKIP +kylin.source.hive.flat-table-field-delimiter SKIP SKIP +kylin.source.hive.intermediate-table-prefix SKIP SKIP +kylin.source.hive.redistribute-flat-table FALSE SKIP +kylin.source.hive.redistribute-column-count 1 6 +kylin.source.hive.table-dir-create-first TRUE SKIP +kylin.storage.partition.aggr-spill-enabled FALSE SKIP +kylin.engine.mr.lib-dir SKIP SKIP +kylin.engine.mr.reduce-input-mb 250 1000 +kylin.engine.mr.reduce-count-ratio 0.5 2.0 +kylin.engine.mr.min-reducer-number SKIP SKIP +kylin.engine.mr.max-reducer-number SKIP SKIP +kylin.engine.mr.mapper-input-rows 500000 2000000 +kylin.engine.mr.max-cuboid-stats-calculator-number 0 2 +kylin.engine.mr.build-dict-in-reducer FALSE SKIP +kylin.engine.mr.yarn-check-interval-seconds 1 20 +kylin.engine.mr.use-local-classpath FALSE SKIP +kylin.dictionary.use-forest-trie FALSE SKIP +kylin.dictionary.forest-trie-max-mb 250 1000 +kylin.dictionary.max-cache-entry 1500 6000 +kylin.dictionary.growing-enabled TRUE SKIP +kylin.dictionary.append-entry-size 5000000 20000000 +kylin.dictionary.append-max-versions 1 6 +kylin.dictionary.append-version-ttl 129600000 518400000 +kylin.dictionary.resuable TRUE SKIP +kylin.dictionary.shrunken-from-global-enabled FALSE SKIP +kylin.engine.mr.build-uhc-dict-in-additional-step FALSE SKIP +kylin.engine.mr.uhc-reducer-count 0 2 +kylin.engine.spark-conf.spark.master SKIP SKIP +kylin.engine.spark-conf.spark.submit.deployMode SKIP SKIP +kylin.engine.spark-conf.spark.yarn.queue SKIP SKIP +kylin.engine.spark-conf.spark.driver.memory G SKIP +kylin.engine.spark-conf.spark.executor.memory G SKIP +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead 512 2048 +kylin.engine.spark-conf.spark.executor.cores 0 2 +kylin.engine.spark-conf.spark.network.timeout SKIP SKIP +kylin.engine.spark-conf.spark.executor.instances 0 2 +kylin.engine.spark-conf.spark.eventLog.enabled FALSE SKIP +kylin.engine.spark-conf.spark.hadoop.dfs.replication SKIP SKIP +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress FALSE SKIP +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec SKIP SKIP +kylin.engine.spark.rdd-partition-cut-mb 1 20 +kylin.engine.spark.min-partition 0 2 +kylin.engine.spark.max-partition SKIP SKIP +kylin.engine.spark.storage-level RDD SKIP +kylin.engine.spark-conf-mergedict.spark.executor.memory G SKIP +kylin.engine.spark-conf-mergedict.spark.memory.fraction 0.1 0.4 +kylin.engine.livy-conf.livy-enabled TRUE SKIP +kylin.engine.livy-conf.livy-url SKIP SKIP +kylin.engine.spark-conf.spark.shuffle.service.enabled SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.enabled SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors SKIP SKIP +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout 30 120 +kylin.job.log-dir /valid/file1 /valid/file2 +kylin.job.allow-empty-segment FALSE SKIP +kylin.job.max-concurrent-jobs SKIP SKIP +kylin.job.retry 1 -1 +kylin.job.retry-interval 15000 60000 +kylin.job.scheduler.priority-considered TRUE SKIP +kylin.job.scheduler.priority-bar-fetch-from-queue 10 40 +kylin.job.scheduler.poll-interval-second 15 60 +kylin.job.error-record-threshold 1 -1 +kylin.job.cube-auto-ready-enabled FALSE SKIP +kylin.cube.max-building-segments 1 20 +kylin.job.notification-enabled TRUE SKIP +kylin.job.notification-mail-enable-starttls TRUE SKIP +kylin.job.notification-mail-host SKIP SKIP +kylin.job.notification-mail-port 12 50 +kylin.job.notification-mail-username SKIP SKIP +kylin.job.notification-mail-password SKIP SKIP +kylin.job.notification-mail-sender SKIP SKIP +kylin.job.notification-admin-emails SKIP SKIP +kylin.cube.cubeplanner.enabled FALSE SKIP +kylin.server.query-metrics2-enabled FALSE SKIP +kylin.metrics.reporter-query-enabled FALSE SKIP +kylin.metrics.reporter-job-enabled FALSE SKIP +kylin.metrics.monitor-enabled FALSE SKIP +kylin.cube.cubeplanner.enabled-for-existing-cube FALSE SKIP +kylin.cube.cubeplanner.algorithm-threshold-greedy 1 16 +kylin.cube.cubeplanner.expansion-threshold 7.5 30.0 +kylin.cube.cubeplanner.recommend-cache-max-size 100 400 +kylin.cube.cubeplanner.query-uncertainty-ratio 0.05 0.2 +kylin.cube.cubeplanner.bpus-min-benefit-ratio 0.005 0.02 +kylin.cube.cubeplanner.algorithm-threshold-genetic 11 46 +kylin.storage.hbase.table-name-prefix KYLIN SKIP +kylin.storage.hbase.namespace SKIP SKIP +kylin.storage.hbase.coprocessor-local-jar SKIP SKIP +kylin.storage.hbase.coprocessor-mem-gb 1.5 6.0 +kylin.storage.hbase.run-local-coprocessor TRUE SKIP +kylin.storage.hbase.coprocessor-timeout-seconds 1 -1 +kylin.storage.hbase.region-cut-gb SKIP SKIP +kylin.storage.hbase.min-region-count 0 2 +kylin.storage.hbase.max-region-count 250 1000 +kylin.storage.hbase.hfile-size-gb 1.0 4.0 +kylin.storage.hbase.max-scan-result-bytes 2621440 10485760 +kylin.storage.hbase.compression-codec SKIP SKIP +kylin.storage.hbase.rowkey-encoding SKIP SKIP +kylin.storage.hbase.block-size-bytes 524288 2097152 +kylin.storage.hbase.small-family-block-size-bytes 32768 131072 +kylin.storage.hbase.owner-tag SKIP SKIP +kylin.storage.hbase.endpoint-compress-result FALSE SKIP +kylin.storage.hbase.max-hconnection-threads 1024 4096 +kylin.storage.hbase.core-hconnection-threads 1024 4096 +kylin.storage.hbase.hconnection-threads-alive-seconds 30 120 +kylin.storage.hbase.replication-scope 1 -1 +kylin.storage.hbase.scan-cache-rows 512 2048 +kylin.secondary.storage.url kylin.secondary.storage.url=hostname:kylin_metadata@hbase hbase.zookeeper.quorum=hostname:11000 +kylin.job.execute-output.max-size 5242380 20969520 +kylin.engine.spark.output.max-size 5242380 20969520 +kylin.stream.job.dfs.block.size 0.1 0.5 +kylin.stream.index.path /valid/file1 /valid/file2 +kylin.stream.node SKIP SKIP +kylin.stream.metadata.store.type SKIP SKIP +kylin.stream.receiver.use-threads-per-query 1 16 +kylin.stream.index.maxrows 25000 100000 +kylin.stream.cube-num-of-consumer-tasks 1 6 +kylin.stream.segment.retention.policy SKIP SKIP +kylin.stream.build.additional.cuboids true SKIP +kylin.stream.cube.window 1800 7200 +kylin.stream.cube.duration 3600 14400 +kylin.stream.cube.duration.max 21600 86400 +kylin.stream.checkpoint.file.max.num 1 10 +kylin.stream.index.checkpoint.intervals 150 600 +kylin.stream.immutable.segments.max.num 50 200 +kylin.stream.consume.offsets.latest false SKIP +kylin.stream.assigner SKIP SKIP +kylin.stream.coordinator.client.timeout.millsecond 2500 10000 +kylin.stream.receiver.client.timeout.millsecond 2500 10000 +kylin.stream.receiver.http.max.threads 100 400 +kylin.stream.receiver.http.min.threads 1 20 +kylin.stream.receiver.query-core-threads 25 100 +kylin.stream.receiver.query-max-threads 100 400 +kylin.stream.segment-max-fragments 25 100 +kylin.stream.segment-min-fragments 7 30 +kylin.stream.max-fragment-size-mb 150 600 +kylin.stream.fragments-auto-merge-enable false SKIP +kylin.stream.metrics.option SKIP SKIP +kylin.stream.event.timezone SKIP SKIP +kylin.stream.auto-resubmit-after-discard-enabled SKIP SKIP +kylin.storage.clean-after-delete-operation TRUE SKIP +kylin.query.skip-empty-segments FALSE SKIP +kylin.query.large-query-threshold 500000 2000000 +kylin.query.security-enabled FALSE SKIP +kylin.query.security.table-acl-enabled FALSE SKIP +kylin.query.calcite.extras-props.conformance SKIP SKIP +kylin.query.calcite.extras-props.caseSensitive FALSE SKIP +kylin.query.calcite.extras-props.unquotedCasing UNCHANGED TO_UPPER +kylin.query.calcite.extras-props.quoting DOUBLE_QUOTE BRACKET +kylin.query.statement-cache-max-num 25000 100000 +kylin.query.statement-cache-max-num-per-key 25 100 +kylin.query.enable-dict-enumerator TRUE SKIP +kylin.query.enable-dynamic-column FALSE SKIP +kylin.storage.hbase.max-fuzzykey-scan 100 400 +kylin.storage.hbase.max-fuzzykey-scan-split 0 2 +kylin.storage.hbase.max-visit-scanrange 500000 2000000 +kylin.query.cache-enabled FALSE SKIP +kylin.query.cache-threshold-duration 1000 4000 +kylin.query.cache-threshold-scan-count 5120 20480 +kylin.query.cache-threshold-scan-bytes 524288 2097152 +kylin.query.timeout-seconds 1 -1 +kylin.query.timeout-seconds-coefficient 0.25 1.0 +kylin.query.max-scan-bytes 1 -1 +kylin.storage.partition.max-scan-bytes 1610612736 6442450944 +kylin.query.max-return-rows 2500000 10000000 +kylin.query.badquery-stacktrace-depth 1 20 +kylin.query.badquery-history-number 25 100 +kylin.query.badquery-alerting-seconds 45 180 +kylin.query.badquery-persistent-enabled false SKIP +kylin.query.pushdown.runner-class-name SKIP SKIP +kylin.query.pushdown.jdbc.url SKIP SKIP +kylin.query.pushdown.jdbc.driver SKIP SKIP +kylin.query.pushdown.jdbc.username SKIP SKIP +kylin.query.pushdown.jdbc.password SKIP SKIP +kylin.query.pushdown.jdbc.pool-max-total 1 16 +kylin.query.pushdown.jdbc.pool-max-idle 1 16 +kylin.query.pushdown.jdbc.pool-min-idle 1 -1 +kylin.query.pushdown.update-enabled TRUE SKIP +kylin.query.pushdown.cache-enabled TRUE SKIP +kylin.query.force-limit 0 -2 +kylin.storage.limit-push-down-enabled FALSE SKIP +kylin.query.flat-filter-max-children 250000 1000000 +kylin.server.query-metrics-enabled FALSE SKIP +kylin.security.profile SKIP SKIP +kylin.security.ldap.connection-server SKIP SKIP +kylin.security.ldap.connection-username SKIP SKIP +kylin.security.ldap.connection-password SKIP SKIP +kylin.security.ldap.user-search-base SKIP SKIP +kylin.security.ldap.user-search-pattern SKIP SKIP +kylin.security.ldap.user-group-search-base SKIP SKIP +kylin.security.ldap.user-group-search-filter SKIP SKIP +kylin.security.ldap.service-search-base SKIP SKIP +kylin.security.ldap.service-search-pattern SKIP SKIP +kylin.restclient.connection.default-max-per-route 10 40 +kylin.env.zookeeper-is-local true SKIP +kylin.server.auth-user-cache.expire-seconds SKIP SKIP +kylin.server.auth-user-cache.max-entries SKIP SKIP +kylin.server.external-acl-provider SKIP SKIP +kylin.env.zookeeper-acl-enabled TRUE SKIP +kylin.env.zookeeper.zk-auth SKIP SKIP +kylin.env.zookeeper.zk-acl SKIP SKIP +kylin.query.lazy-query-enabled true SKIP +kylin.query.cache-signature-enabled true SKIP +kylin.query.segment-cache-enabled true SKIP +kylin.resourcestore.reconnect-base-ms 50 200 +kylin.job.remote-cli-port 11 44 diff --git a/core/generate_ctest/sample-kylin-tool.tsv b/core/generate_ctest/sample-kylin-tool.tsv new file mode 100644 index 00000000..45b39bb8 --- /dev/null +++ b/core/generate_ctest/sample-kylin-tool.tsv @@ -0,0 +1,7 @@ +kylin.resourcestore.reconnect-base-ms 50 200 +kylin.metadata.check-copy-on-write TRUE SKIP +kylin.cube.rowkey.max-size 31 126 +kylin.cube.aggrgroup.is-mandatory-only-valid FALSE SKIP +kylin.cube.aggrgroup.max-combination 16384 65536 +kylin.storage.hbase.table-name-prefix KYLIN SKIP +kylin.env DEV DEV \ No newline at end of file diff --git a/core/generate_value/config.py b/core/generate_value/config.py index 5503f27e..17e4d69f 100644 --- a/core/generate_value/config.py +++ b/core/generate_value/config.py @@ -11,6 +11,8 @@ ZKPORTADDRS = ["0.0.0.0:3000", "0.0.0.0:3001"] ZKLIMIT = ["1", "10"] ZKSIZE = ["1", "10"] +RATIO = ["0.1", "0.9"] +ENV = ["Dev", "QA"] key_phrases_plural = [ "values are:", diff --git a/core/generate_value/gutil.py b/core/generate_value/gutil.py index 59421fd3..4a483785 100644 --- a/core/generate_value/gutil.py +++ b/core/generate_value/gutil.py @@ -30,6 +30,9 @@ NAMESERVICES = "NAMESERVICES" INTERFACE = "INTERFACE" POTENTIALFLOAT = "POTENTIALFLOAT" +RATIO = "RATIO" +ENV = "ENV" +MURL = "MURL" timeunits = ["ms", "millisecond", "s", "sec", "second", "m", "min", "minute", "h", "hr", "hour", "d", "day"] datasize = ["MB"] @@ -164,6 +167,15 @@ def isInterface(name): def isPotentialFloat(name): return name.endswith("limit") or name.endswith("size") +def isRatio(name): + return name[-(len("ratio") + 1):] == "ratio" or name[-(len("coefficient") + 1):] == "coefficient" + +def isEnv(name): + return name == 'Dev' or name == 'QA' or name == 'Prod' + +def isMetadataUrl(name): + return "metadata.url" in name + # guess from semantics def isFilePath4(semantics): return "relative path" in semantics or "directory" in semantics or "folder" in semantics @@ -296,6 +308,15 @@ def genAlgorithm(param): def genPotentialFloat(param): return [0.1, 0.5] +def genRatio(param): + return [0.1, 0.9] + +def genEnv(param): + return ["Dev", "QA"] + +def genMetadataUrl(param): + return ["kylin_metadata@job", "kylin_metadata@url"] + def semanticExtractionClassName(param): # strategies # replace "/" in semantics with " " @@ -489,4 +510,4 @@ def genZKLimit(param): return config.ZKLIMIT def genZKSize(param): - return config.ZKSIZE + return config.ZKSIZE \ No newline at end of file diff --git a/core/generate_value/value_generation.py b/core/generate_value/value_generation.py index 82a5bde8..e2246d6a 100644 --- a/core/generate_value/value_generation.py +++ b/core/generate_value/value_generation.py @@ -25,6 +25,9 @@ def read_tsv(module): if module == "zookeeper-server": assert len(params) == 32 return 32 + elif module == "kylin-common" or module == "kylin-tool" or module == "kylin-cube" or module == "kylin-storage": + assert len(params) == 283 + return 283 else: assert len(params) == 90 return 90 @@ -94,6 +97,25 @@ def infer_category(param, module): return ZKLIMIT if isZKSize(name): return ZKSIZE + + if module == "kylin": + if isZKDirPath(name): + return ZKDIR + if isZKPort(name): + return ZKPORT + if isZKPortAddress(name): + return ZKPORTADDRESS + if isZKLimit(name): + return ZKLIMIT + if isZKSize(name): + return ZKSIZE + if isRatio(name): + return RATIO + if isEnv(name): + return ENV + if isMetadataUrl(name): + return MURL + if isPotentialFloat(name): return POTENTIALFLOAT return NONE @@ -164,12 +186,23 @@ def generate(module): generators[NAMESERVICES] = genNameservices generators[INTERFACE] = genInterface generators[POTENTIALFLOAT] = genPotentialFloat + if module == "zookeeper-server": generators[ZKDIR] = genZKDir generators[ZKLIMIT] = genZKLimit generators[ZKSIZE] = genZKSize generators[ZKPORT] = genZKPort generators[ZKPORTADDRESS] = genZKPortAddress + if module == "kylin": + generators[ZKDIR] = genZKDir + generators[ZKLIMIT] = genZKLimit + generators[ZKSIZE] = genZKSize + generators[ZKPORT] = genZKPort + generators[ZKPORTADDRESS] = genZKPortAddress + generators[RATIO] = genRatio + generators[ENV] = genEnv + generators[MURL] = genMetadataUrl + for param in params: param.gvalues = generators[param.cate](param) diff --git a/core/identify_param/add_project.sh b/core/identify_param/add_project.sh index 954dbab8..9b38cfd2 100755 --- a/core/identify_param/add_project.sh +++ b/core/identify_param/add_project.sh @@ -47,6 +47,13 @@ function setup_alluxio() { mvn clean install -DskipTests -Dcheckstyle.skip -Dlicense.skip -Dfindbugs.skip -Dmaven.javadoc.skip=true } +function setup_kylin(){ + [ ! -d "app/ctest-kylin" ] && git clone https://github.com/rtao6/kylin.git app/ctest-kylin + cd app/ctest-kylin + git fetch && git checkout ctest-logging + mvn clean install -DskipTests -Dcheckstyle.skip -Dlicense.skip -Dfindbugs.skip -Dmaven.javadoc.skip=true +} + function usage() { echo "Usage: add_project.sh
" exit 1 @@ -63,7 +70,8 @@ function main() { hbase) setup_hbase ;; zookeeper) setup_zookeeper ;; alluxio) setup_alluxio ;; - *) echo "Unexpected project: $project - only support hadoop, hbase, zookeeper and alluxio." ;; + kylin) setup_kylin ;; + *) echo "Unexpected project: $project - only support hadoop, hbase, zookeeper alluxio, and kylin." ;; esac fi } diff --git a/core/identify_param/constant.py b/core/identify_param/constant.py index a0b2d067..5798bd7d 100644 --- a/core/identify_param/constant.py +++ b/core/identify_param/constant.py @@ -7,12 +7,17 @@ CTEST_HBASE_DIR = os.path.join(APP_DIR, "ctest-hbase") CTEST_ZOOKEEPER_DIR = os.path.join(APP_DIR, "ctest-zookeeper") CTEST_ALLUXIO_DIR = os.path.join(APP_DIR, "ctest-alluxio") +CTEST_KYLIN_DIR = os.path.join(APP_DIR, "ctest-kylin") MODULE_PATH = { "hadoop-common": CTEST_HADOOP_DIR, "hadoop-hdfs": CTEST_HADOOP_DIR, "hbase-server": CTEST_HBASE_DIR, - "alluxio-core": CTEST_ALLUXIO_DIR + "alluxio-core": CTEST_ALLUXIO_DIR, + "kylin-common": CTEST_KYLIN_DIR, + "kylin-tool": CTEST_KYLIN_DIR, + "kylin-storage": CTEST_KYLIN_DIR, + "kylin-cube": CTEST_KYLIN_DIR, } SRC_SUBDIR = { @@ -20,7 +25,12 @@ "hadoop-hdfs": "hadoop-hdfs-project/hadoop-hdfs", "hbase-server": "hbase-server", "zookeeper-server": "zookeeper-server", - "alluxio-core": "core" + "alluxio-core": "core", + "kylin-common": "", + "kylin-tool": "", + "kylin-storage": "", + "kylin-cube": "", + } MVN_TEST_PATH = { @@ -29,6 +39,10 @@ "hbase-server": os.path.join(CTEST_HBASE_DIR, SRC_SUBDIR["hbase-server"]), "zookeeper-server": os.path.join(CTEST_ZOOKEEPER_DIR, SRC_SUBDIR["zookeeper-server"]), "alluxio-core": os.path.join(CTEST_ALLUXIO_DIR, SRC_SUBDIR["alluxio-core"]), + "kylin-common": os.path.join(CTEST_KYLIN_DIR, SRC_SUBDIR["kylin-common"]), + "kylin-tool": os.path.join(CTEST_KYLIN_DIR, SRC_SUBDIR["kylin-tool"]), + "kylin-storage": os.path.join(CTEST_KYLIN_DIR, SRC_SUBDIR["kylin-storage"]), + "kylin-cube": os.path.join(CTEST_KYLIN_DIR, SRC_SUBDIR["kylin-cube"]), } LOCAL_CONF_PATH = { @@ -36,7 +50,11 @@ "hadoop-hdfs": "results/hadoop-hdfs/conf_params.txt", "hbase-server": "results/hbase-server/conf_params.txt", "zookeeper-server": "results/zookeeper-server/conf_params.txt", - "alluxio-core": "results/alluxio-core/conf_params.txt" + "alluxio-core": "results/alluxio-core/conf_params.txt", + "kylin-common": "results/kylin-common/conf_params.txt", + "kylin-tool": "results/kylin-tool/conf_params.txt", + "kylin-storage": "results/kylin-storage/conf_params.txt", + "kylin-cube": "results/kylin-cube/conf_params.txt" } SUREFIRE_SUBDIR = "target/surefire-reports/*" @@ -63,7 +81,19 @@ os.path.join(CTEST_ALLUXIO_DIR, "core/server/proxy", SUREFIRE_SUBDIR), os.path.join(CTEST_ALLUXIO_DIR, "core/server/worker", SUREFIRE_SUBDIR), os.path.join(CTEST_ALLUXIO_DIR, "core/server/master", SUREFIRE_SUBDIR) - ] + ], + "kylin-common": [ + os.path.join(CTEST_KYLIN_DIR, SUREFIRE_SUBDIR) + ], + "kylin-tool": [ + os.path.join(CTEST_KYLIN_DIR, SUREFIRE_SUBDIR) + ], + "kylin-storage": [ + os.path.join(CTEST_KYLIN_DIR, SUREFIRE_SUBDIR) + ], + "kylin-cube": [ + os.path.join(CTEST_KYLIN_DIR, SUREFIRE_SUBDIR) + ], } LOCAL_SUREFIRE_SUFFIX = "surefire-reports/*" @@ -83,5 +113,17 @@ ], "alluxio-core": [ os.path.join("surefire-reports/alluxio-core", LOCAL_SUREFIRE_SUFFIX) + ], + "kylin-common": [ + os.path.join("surefire-reports/kylin-common", LOCAL_SUREFIRE_SUFFIX) + ], + "kylin-tool": [ + os.path.join("surefire-reports/kylin-tool", LOCAL_SUREFIRE_SUFFIX) + ], + "kylin-storage": [ + os.path.join("surefire-reports/kylin-storage", LOCAL_SUREFIRE_SUFFIX) + ], + "kylin-cube": [ + os.path.join("surefire-reports/kylin-cube", LOCAL_SUREFIRE_SUFFIX) ] } diff --git a/core/identify_param/identify_param.sh b/core/identify_param/identify_param.sh index 76963419..1bdb0623 100755 --- a/core/identify_param/identify_param.sh +++ b/core/identify_param/identify_param.sh @@ -12,9 +12,9 @@ function main() { usage else case $project in - hadoop-common | hadoop-hdfs | hbase-server | zookeeper-server | alluxio-core) python3 runner.py $project; python3 collector.py $project ;; + hadoop-common | hadoop-hdfs | hbase-server | zookeeper-server | alluxio-core | kylin-common | kylin-tool | kylin-storage | kylin-cube) python3 runner.py $project; python3 collector.py $project ;; -h | --help) usage ;; - *) echo "Unexpected project: $project - only support hadoop-common, hadoop-hdfs, hbase-server, zookeeper-server and alluxio-core." ;; + *) echo "Unexpected project: $project - only support hadoop-common, hadoop-hdfs, hbase-server, zookeeper-server, alluxio-core, kylin-core, kylin-tool, kylin-storage and kylin-cube." ;; esac fi } diff --git a/core/identify_param/results/kylin-common/conf_params.txt b/core/identify_param/results/kylin-common/conf_params.txt new file mode 100644 index 00000000..a787b0d8 --- /dev/null +++ b/core/identify_param/results/kylin-common/conf_params.txt @@ -0,0 +1,288 @@ +kylin.env.hdfs-working-dir +kylin.env +kylin.env.zookeeper-base-path +kylin.env.zookeeper-connect-string +kylin.env.hadoop-conf-dir +kylin.server.mode +kylin.server.cluster-name +kylin.job.scheduler.default +kylin.job.lock +kylin.job.scheduler.safemode +kylin.job.scheduler.safemode.runable-projects +kylin.storage.hbase.cluster-fs +kylin.storage.hbase.cluster-hdfs-config-file +kylin.web.timezone +kylin.web.cross-domain-enabled +kylin.web.export-allow-admin +kylin.web.export-allow-other +kylin.web.dashboard-enabled +kylin.metadata.url +kylin.metadata.dimension-encoding-max-length +kylin.metadata.sync-retries +kylin.metadata.sync-error-handler +kylin.metadata.check-copy-on-write +kylin.metadata.hbase-client-scanner-timeout-period +kylin.metadata.hbase-rpc-timeout +kylin.metadata.hbase-client-retries-number +kylin.metadata.resource-store-provider.jdbc +kylin.metadata.jdbc.dialect +kylin.metadata.jdbc.json-always-small-cell +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold +kylin.metadata.jdbc.small-cell-meta-size-error-threshold +kylin.metadata.jdbc.max-cell-size +kylin.source.hive.client +kylin.source.hive.beeline-shell +kylin.source.hive.beeline-params +kylin.source.hive.enable-sparksql-for-table-ops +kylin.source.hive.sparksql-beeline-shell +kylin.source.hive.sparksql-beeline-params +kylin.source.default +kylin.source.jdbc.connection-url +kylin.source.jdbc.driver +kylin.source.jdbc.dialect +kylin.source.jdbc.user +kylin.source.jdbc.pass +kylin.source.jdbc.sqoop-home +kylin.source.jdbc.sqoop-mapper-num +kylin.source.jdbc.field-delimiter +kylin.source.hive.default-varchar-precision +kylin.source.hive.default-char-precision +kylin.source.hive.default-decimal-precision +kylin.source.hive.default-decimal-scale +kylin.cube.ignore-signature-inconsistency +kylin.cube.aggrgroup.max-combination +kylin.cube.aggrgroup.is-mandatory-only-valid +kylin.cube.rowkey.max-size +kylin.cube.allow-appear-in-multiple-projects +kylin.cube.gtscanrequest-serialization-level +kylin.web.hide-measures +kylin.cube.size-estimate-ratio +kylin.cube.size-estimate-memhungry-ratio +kylin.cube.size-estimate-countdistinct-ratio +kylin.cube.size-estimate-topn-ratio +kylin.cube.algorithm +kylin.cube.algorithm.layer-or-inmem-threshold +kylin.cube.algorithm.inmem-split-limit +kylin.cube.algorithm.inmem-concurrent-threads +kylin.job.sampling-percentage +kylin.cube.is-automerge-enabled +kylin.snapshot.max-mb +kylin.snapshot.max-cache-entry +kylin.snapshot.ext.shard-mb +kylin.snapshot.ext.local.cache.path +kylin.snapshot.ext.local.cache.max-size-gb +kylin.storage.default +kylin.source.hive.keep-flat-table +kylin.source.hive.database-for-flat-table +kylin.source.hive.flat-table-storage-format +kylin.source.hive.flat-table-field-delimiter +kylin.source.hive.intermediate-table-prefix +kylin.source.hive.redistribute-flat-table +kylin.source.hive.redistribute-column-count +kylin.source.hive.table-dir-create-first +kylin.storage.partition.aggr-spill-enabled +kylin.engine.mr.lib-dir +kylin.engine.mr.reduce-input-mb +kylin.engine.mr.reduce-count-ratio +kylin.engine.mr.min-reducer-number +kylin.engine.mr.max-reducer-number +kylin.engine.mr.mapper-input-rows +kylin.engine.mr.max-cuboid-stats-calculator-number +kylin.engine.mr.build-dict-in-reducer +kylin.engine.mr.yarn-check-interval-seconds +kylin.engine.mr.use-local-classpath +kylin.dictionary.use-forest-trie +kylin.dictionary.forest-trie-max-mb +kylin.dictionary.max-cache-entry +kylin.dictionary.growing-enabled +kylin.dictionary.append-entry-size +kylin.dictionary.append-max-versions +kylin.dictionary.append-version-ttl +kylin.dictionary.resuable +kylin.dictionary.shrunken-from-global-enabled +kylin.engine.mr.build-uhc-dict-in-additional-step +kylin.engine.mr.uhc-reducer-count +kylin.engine.spark-conf.spark.master +kylin.engine.spark-conf.spark.submit.deployMode +kylin.engine.spark-conf.spark.yarn.queue +kylin.engine.spark-conf.spark.driver.memory +kylin.engine.spark-conf.spark.executor.memory +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead +kylin.engine.spark-conf.spark.executor.cores +kylin.engine.spark-conf.spark.network.timeout +kylin.engine.spark-conf.spark.executor.instances +kylin.engine.spark-conf.spark.eventLog.enabled +kylin.engine.spark-conf.spark.hadoop.dfs.replication +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec +kylin.engine.spark.rdd-partition-cut-mb +kylin.engine.spark.min-partition +kylin.engine.spark.max-partition +kylin.engine.spark.storage-level +kylin.engine.spark-conf-mergedict.spark.executor.memory +kylin.engine.spark-conf-mergedict.spark.memory.fraction +kylin.engine.livy-conf.livy-enabled +kylin.engine.livy-conf.livy-url +kylin.engine.spark-conf.spark.shuffle.service.enabled +kylin.engine.spark-conf.spark.dynamicAllocation.enabled +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout +kylin.job.log-dir +kylin.job.allow-empty-segment +kylin.job.max-concurrent-jobs +kylin.job.retry +kylin.job.retry-interval +kylin.job.scheduler.priority-considered +kylin.job.scheduler.priority-bar-fetch-from-queue +kylin.job.scheduler.poll-interval-second +kylin.job.error-record-threshold +kylin.job.cube-auto-ready-enabled +kylin.cube.max-building-segments +kylin.job.notification-enabled +kylin.job.notification-mail-enable-starttls +kylin.job.notification-mail-host +kylin.job.notification-mail-port +kylin.job.notification-mail-username +kylin.job.notification-mail-password +kylin.job.notification-mail-sender +kylin.job.notification-admin-emails +kylin.cube.cubeplanner.enabled +kylin.server.query-metrics2-enabled +kylin.metrics.reporter-query-enabled +kylin.metrics.reporter-job-enabled +kylin.metrics.monitor-enabled +kylin.cube.cubeplanner.enabled-for-existing-cube +kylin.cube.cubeplanner.algorithm-threshold-greedy +kylin.cube.cubeplanner.expansion-threshold +kylin.cube.cubeplanner.recommend-cache-max-size +kylin.cube.cubeplanner.query-uncertainty-ratio +kylin.cube.cubeplanner.bpus-min-benefit-ratio +kylin.cube.cubeplanner.algorithm-threshold-genetic +kylin.storage.hbase.table-name-prefix +kylin.storage.hbase.namespace +kylin.storage.hbase.coprocessor-local-jar +kylin.storage.hbase.coprocessor-mem-gb +kylin.storage.hbase.run-local-coprocessor +kylin.storage.hbase.coprocessor-timeout-seconds +kylin.storage.hbase.region-cut-gb +kylin.storage.hbase.min-region-count +kylin.storage.hbase.max-region-count +kylin.storage.hbase.hfile-size-gb +kylin.storage.hbase.max-scan-result-bytes +kylin.storage.hbase.compression-codec +kylin.storage.hbase.rowkey-encoding +kylin.storage.hbase.block-size-bytes +kylin.storage.hbase.small-family-block-size-bytes +kylin.storage.hbase.owner-tag +kylin.storage.hbase.endpoint-compress-result +kylin.storage.hbase.max-hconnection-threads +kylin.storage.hbase.core-hconnection-threads +kylin.storage.hbase.hconnection-threads-alive-seconds +kylin.storage.hbase.replication-scope +kylin.storage.hbase.scan-cache-rows +kylin.secondary.storage.url +kylin.job.execute-output.max-size +kylin.engine.spark.output.max-size +kylin.stream.job.dfs.block.size +kylin.stream.index.path +kylin.stream.node +kylin.stream.metadata.store.type +kylin.stream.receiver.use-threads-per-query +kylin.stream.index.maxrows +kylin.stream.cube-num-of-consumer-tasks +kylin.stream.segment.retention.policy +kylin.stream.build.additional.cuboids +kylin.stream.cube.window +kylin.stream.cube.duration +kylin.stream.cube.duration.max +kylin.stream.checkpoint.file.max.num +kylin.stream.index.checkpoint.intervals +kylin.stream.immutable.segments.max.num +kylin.stream.consume.offsets.latest +kylin.stream.assigner +kylin.stream.coordinator.client.timeout.millsecond +kylin.stream.receiver.client.timeout.millsecond +kylin.stream.receiver.http.max.threads +kylin.stream.receiver.http.min.threads +kylin.stream.receiver.query-core-threads +kylin.stream.receiver.query-max-threads +kylin.stream.segment-max-fragments +kylin.stream.segment-min-fragments +kylin.stream.max-fragment-size-mb +kylin.stream.fragments-auto-merge-enable +kylin.stream.metrics.option +kylin.stream.event.timezone +kylin.stream.auto-resubmit-after-discard-enabled +kylin.storage.clean-after-delete-operation +kylin.query.skip-empty-segments +kylin.query.large-query-threshold +kylin.query.security-enabled +kylin.query.security.table-acl-enabled +kylin.query.calcite.extras-props.conformance +kylin.query.calcite.extras-props.caseSensitive +kylin.query.calcite.extras-props.unquotedCasing +kylin.query.calcite.extras-props.quoting +kylin.query.statement-cache-max-num +kylin.query.statement-cache-max-num-per-key +kylin.query.enable-dict-enumerator +kylin.query.enable-dynamic-column +kylin.storage.hbase.max-fuzzykey-scan +kylin.storage.hbase.max-fuzzykey-scan-split +kylin.storage.hbase.max-visit-scanrange +kylin.query.cache-enabled +kylin.query.cache-threshold-duration +kylin.query.cache-threshold-scan-count +kylin.query.cache-threshold-scan-bytes +kylin.query.timeout-seconds +kylin.query.timeout-seconds-coefficient +kylin.query.max-scan-bytes +kylin.storage.partition.max-scan-bytes +kylin.query.max-return-rows +kylin.query.badquery-stacktrace-depth +kylin.query.badquery-history-number +kylin.query.badquery-alerting-seconds +kylin.query.badquery-persistent-enabled +kylin.query.pushdown.runner-class-name +kylin.query.pushdown.jdbc.url +kylin.query.pushdown.jdbc.driver +kylin.query.pushdown.jdbc.username +kylin.query.pushdown.jdbc.password +kylin.query.pushdown.jdbc.pool-max-total +kylin.query.pushdown.jdbc.pool-max-idle +kylin.query.pushdown.jdbc.pool-min-idle +kylin.query.pushdown.update-enabled +kylin.query.pushdown.cache-enabled +kylin.query.force-limit +kylin.storage.limit-push-down-enabled +kylin.query.flat-filter-max-children +kylin.server.query-metrics-enabled +kylin.security.profile +kylin.security.ldap.connection-server +kylin.security.ldap.connection-username +kylin.security.ldap.connection-password +kylin.security.ldap.user-search-base +kylin.security.ldap.user-search-pattern +kylin.security.ldap.user-group-search-base +kylin.security.ldap.user-group-search-filter +kylin.security.ldap.service-search-base +kylin.security.ldap.service-search-pattern +kylin.security.ldap.service-group-search-base +kylin.security.acl.admin-role +kylin.server.auth-user-cache.expire-seconds +kylin.server.auth-user-cache.max-entries +kylin.server.external-acl-provider +kylin.env.zookeeper-acl-enabled +kylin.env.zookeeper.zk-auth +kylin.env.zookeeper.zk-acl +kylin.query.lazy-query-enabled +kylin.query.cache-signature-enabled +kylin.query.segment-cache-enabled +kylin.cache.memcached.hosts +kylin.resourcestore.reconnect-base-ms +kylin.env.zookeeper-base-sleep-time +kylin.env.zookeeper-is-local +kylin.job.remote-cli-port +kylin.restclient.connection.default-max-per-route +kylin.job.use-remote-cli \ No newline at end of file diff --git a/core/identify_param/results/kylin-common/test_method_list.json b/core/identify_param/results/kylin-common/test_method_list.json new file mode 100644 index 00000000..cc0870e9 --- /dev/null +++ b/core/identify_param/results/kylin-common/test_method_list.json @@ -0,0 +1 @@ +["org.apache.kylin.common.KylinVersionTest#testNormal", "org.apache.kylin.common.KylinVersionTest#testNoRevision", "org.apache.kylin.common.KylinVersionTest#testToString", "org.apache.kylin.common.KylinVersionTest#testCompare", "org.apache.kylin.common.KylinConfigTest#testMRConfigOverride", "org.apache.kylin.common.KylinConfigTest#testBackwardCompatibility", "org.apache.kylin.common.KylinConfigTest#testExtShareTheBase", "org.apache.kylin.common.KylinConfigTest#testPropertiesHotLoad", "org.apache.kylin.common.KylinConfigTest#testGetMetadataUrlPrefix", "org.apache.kylin.common.KylinConfigTest#testThreadLocalOverride", "org.apache.kylin.common.KylinConfigTest#testHdfsWorkingDir", "org.apache.kylin.common.KylinConfigTest#testUnexpectedBlackInPro", "org.apache.kylin.common.KylinConfigTest#testCalciteExtrasProperties", "org.apache.kylin.common.KylinConfigTest#testSetKylinConfigInEnvIfMissingTakingEmptyProperties", "org.apache.kylin.common.KylinConfigTest#testCreateInstanceFromUriThrowsIllegalStateExceptionOne", "org.apache.kylin.common.KylinConfigTest#testCreateInstanceFromUriThrowsRuntimeException", "org.apache.kylin.common.StorageURLTest#testBasic", "org.apache.kylin.common.StorageURLTest#testNullInput", "org.apache.kylin.common.StorageURLTest#testHDFS", "org.apache.kylin.common.StorageURLTest#testEdgeCases", "org.apache.kylin.common.StorageURLTest#testValueOfCache", "org.apache.kylin.common.QueryTraceTest#test", "org.apache.kylin.common.metrics.metrics2.HadoopMetrics2ReporterTest#testBuilderDefaults", "org.apache.kylin.common.metrics.metrics2.HadoopMetrics2ReporterTest#testGaugeReporting", "org.apache.kylin.common.metrics.metrics2.HadoopMetrics2ReporterTest#testCounterReporting", "org.apache.kylin.common.metrics.metrics2.HadoopMetrics2ReporterTest#testHistogramReporting", "org.apache.kylin.common.metrics.metrics2.HadoopMetrics2ReporterTest#testTimerReporting", "org.apache.kylin.common.metrics.metrics2.HadoopMetrics2ReporterTest#testMeterReporting", "org.apache.kylin.common.metrics.metrics2.HadoopMetrics2ReporterTest#metrics2CycleIsNonDestructive", "org.apache.kylin.common.metrics.metrics2.HadoopMetrics2ReporterTest#cachedMetricsAreClearedAfterCycle", "org.apache.kylin.common.util.SourceConfigurationUtilTest#testHiveConf", "org.apache.kylin.common.util.SourceConfigurationUtilTest#testSqoopConf", "org.apache.kylin.common.util.BasicTest#testxx", "org.apache.kylin.common.util.BasicTest#testyy", "org.apache.kylin.common.util.BasicTest#test0", "org.apache.kylin.common.util.BasicTest#test1", "org.apache.kylin.common.util.BasicTest#test3", "org.apache.kylin.common.util.BasicTest#testStringSplit", "org.apache.kylin.common.util.DateFormatTest#testIsSupportedDateFormat", "org.apache.kylin.common.util.ImplementationSwitchTest#test", "org.apache.kylin.common.util.ImplementationSwitchTest#testException", "org.apache.kylin.common.util.SortUtilTest#testExtractAndSort", "org.apache.kylin.common.util.SSHClientTest#testCmd", "org.apache.kylin.common.util.SSHClientTest#testScp", "org.apache.kylin.common.util.JacksonTest#foo", "org.apache.kylin.common.util.ParameterFilterTest#testParameter", "org.apache.kylin.common.util.ParameterFilterTest#testURI", "org.apache.kylin.common.util.ParameterFilterTest#testHiveProperties", "org.apache.kylin.common.util.ParameterFilterTest#testSparkConf", "org.apache.kylin.common.util.CaseInsensitiveStringCollectionTest#testCaseInsensitiveMap", "org.apache.kylin.common.util.CaseInsensitiveStringCollectionTest#testCaseInsensitiveSet", "org.apache.kylin.common.util.RandomUtilTest#testRandomUUID", "org.apache.kylin.common.util.AutoReadWriteLockTest#testBasics", "org.apache.kylin.common.util.IdentityUtilTest#basicTest", "org.apache.kylin.common.util.ToolUtilTest#testGetFirstIPV4NonLoopBackAddress", "org.apache.kylin.common.util.StringSplitterTest#testSplitReturningNonEmptyArray", "org.apache.kylin.common.util.StringSplitterTest#testSplitWithNonEmptyString", "org.apache.kylin.common.util.MailServiceTest#testSendEmail", "org.apache.kylin.common.util.StringUtilTest#splitTest", "org.apache.kylin.common.util.StringUtilTest#splitAndTrimTest", "org.apache.kylin.common.util.StringUtilTest#splitByCommaTest", "org.apache.kylin.common.util.StringUtilTest#testJoin", "org.apache.kylin.common.util.StringUtilTest#testDropSuffixWithNonEmptyString", "org.apache.kylin.common.util.StringUtilTest#testDropSuffixWithEmptyString", "org.apache.kylin.common.util.StringUtilTest#testNoBlankWithNull", "org.apache.kylin.common.util.StringUtilTest#testNoBlankWithNonEmptyString", "org.apache.kylin.common.util.StringUtilTest#testToUpperCaseArrayWithNonEmptyArray", "org.apache.kylin.common.util.StringUtilTest#testJoinReturningNonEmptyString", "org.apache.kylin.common.util.StringUtilTest#testJoinOne", "org.apache.kylin.common.util.StringUtilTest#testJoinTwo", "org.apache.kylin.common.util.StringUtilTest#testJoinReturningNull", "org.apache.kylin.common.util.StringUtilTest#testTrimSuffixWithEmptyString", "org.apache.kylin.common.util.StringUtilTest#testTrimSuffixWithNonEmptyString", "org.apache.kylin.common.util.StringUtilTest#testFilterSystemArgsThrowsIllegalArgumentException", "org.apache.kylin.common.util.StringUtilTest#testFilterSystemArgs", "org.apache.kylin.common.util.BytesUtilTest#test", "org.apache.kylin.common.util.BytesUtilTest#testBooleanArray", "org.apache.kylin.common.util.BytesUtilTest#testWriteReadUnsignedInt", "org.apache.kylin.common.util.BytesUtilTest#testReadable", "org.apache.kylin.common.util.SumHelperTest#testSumDouble", "org.apache.kylin.common.util.SumHelperTest#testSumIntegerReturningLongWhereShortValueIsPositive", "org.apache.kylin.common.util.SumHelperTest#testSumLong", "org.apache.kylin.common.util.EncryptUtilTest#testNullInput", "org.apache.kylin.common.util.TimeUtilTest#basicTest", "org.apache.kylin.common.util.TimeUtilTest#basicTestWithTimeZone", "org.apache.kylin.common.util.CacheBuilderTest#foo", "org.apache.kylin.common.util.RangeTest#extremeCase", "org.apache.kylin.common.util.RangeTest#testClosed", "org.apache.kylin.common.util.RangeTest#testOpen", "org.apache.kylin.common.util.PartialSorterTest#basicTest", "org.apache.kylin.common.util.RandomSamplerTest#test", "org.apache.kylin.common.util.RangeUtilTest#testFilter", "org.apache.kylin.common.util.RangeUtilTest#testBuildRanges", "org.apache.kylin.common.util.BitSetsTest#basicTest", "org.apache.kylin.common.util.BitSetsTest#testValueOfWithNull", "org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test", "org.apache.kylin.common.persistence.HDFSResourceStoreTest#testListResourcesImpl", "org.apache.kylin.common.persistence.ResourceToolTest#testCopy", "org.apache.kylin.common.persistence.AutoDeleteDirectoryTest#testBasic", "org.apache.kylin.common.persistence.LocalFileResourceStoreTest#testFileStore", "org.apache.kylin.common.persistence.LocalFileResourceStoreTest#testRollback", "org.apache.kylin.common.restclient.RestClientTest#basicTests"] \ No newline at end of file diff --git a/core/identify_param/results/kylin-cube/conf_params.txt b/core/identify_param/results/kylin-cube/conf_params.txt new file mode 100644 index 00000000..a787b0d8 --- /dev/null +++ b/core/identify_param/results/kylin-cube/conf_params.txt @@ -0,0 +1,288 @@ +kylin.env.hdfs-working-dir +kylin.env +kylin.env.zookeeper-base-path +kylin.env.zookeeper-connect-string +kylin.env.hadoop-conf-dir +kylin.server.mode +kylin.server.cluster-name +kylin.job.scheduler.default +kylin.job.lock +kylin.job.scheduler.safemode +kylin.job.scheduler.safemode.runable-projects +kylin.storage.hbase.cluster-fs +kylin.storage.hbase.cluster-hdfs-config-file +kylin.web.timezone +kylin.web.cross-domain-enabled +kylin.web.export-allow-admin +kylin.web.export-allow-other +kylin.web.dashboard-enabled +kylin.metadata.url +kylin.metadata.dimension-encoding-max-length +kylin.metadata.sync-retries +kylin.metadata.sync-error-handler +kylin.metadata.check-copy-on-write +kylin.metadata.hbase-client-scanner-timeout-period +kylin.metadata.hbase-rpc-timeout +kylin.metadata.hbase-client-retries-number +kylin.metadata.resource-store-provider.jdbc +kylin.metadata.jdbc.dialect +kylin.metadata.jdbc.json-always-small-cell +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold +kylin.metadata.jdbc.small-cell-meta-size-error-threshold +kylin.metadata.jdbc.max-cell-size +kylin.source.hive.client +kylin.source.hive.beeline-shell +kylin.source.hive.beeline-params +kylin.source.hive.enable-sparksql-for-table-ops +kylin.source.hive.sparksql-beeline-shell +kylin.source.hive.sparksql-beeline-params +kylin.source.default +kylin.source.jdbc.connection-url +kylin.source.jdbc.driver +kylin.source.jdbc.dialect +kylin.source.jdbc.user +kylin.source.jdbc.pass +kylin.source.jdbc.sqoop-home +kylin.source.jdbc.sqoop-mapper-num +kylin.source.jdbc.field-delimiter +kylin.source.hive.default-varchar-precision +kylin.source.hive.default-char-precision +kylin.source.hive.default-decimal-precision +kylin.source.hive.default-decimal-scale +kylin.cube.ignore-signature-inconsistency +kylin.cube.aggrgroup.max-combination +kylin.cube.aggrgroup.is-mandatory-only-valid +kylin.cube.rowkey.max-size +kylin.cube.allow-appear-in-multiple-projects +kylin.cube.gtscanrequest-serialization-level +kylin.web.hide-measures +kylin.cube.size-estimate-ratio +kylin.cube.size-estimate-memhungry-ratio +kylin.cube.size-estimate-countdistinct-ratio +kylin.cube.size-estimate-topn-ratio +kylin.cube.algorithm +kylin.cube.algorithm.layer-or-inmem-threshold +kylin.cube.algorithm.inmem-split-limit +kylin.cube.algorithm.inmem-concurrent-threads +kylin.job.sampling-percentage +kylin.cube.is-automerge-enabled +kylin.snapshot.max-mb +kylin.snapshot.max-cache-entry +kylin.snapshot.ext.shard-mb +kylin.snapshot.ext.local.cache.path +kylin.snapshot.ext.local.cache.max-size-gb +kylin.storage.default +kylin.source.hive.keep-flat-table +kylin.source.hive.database-for-flat-table +kylin.source.hive.flat-table-storage-format +kylin.source.hive.flat-table-field-delimiter +kylin.source.hive.intermediate-table-prefix +kylin.source.hive.redistribute-flat-table +kylin.source.hive.redistribute-column-count +kylin.source.hive.table-dir-create-first +kylin.storage.partition.aggr-spill-enabled +kylin.engine.mr.lib-dir +kylin.engine.mr.reduce-input-mb +kylin.engine.mr.reduce-count-ratio +kylin.engine.mr.min-reducer-number +kylin.engine.mr.max-reducer-number +kylin.engine.mr.mapper-input-rows +kylin.engine.mr.max-cuboid-stats-calculator-number +kylin.engine.mr.build-dict-in-reducer +kylin.engine.mr.yarn-check-interval-seconds +kylin.engine.mr.use-local-classpath +kylin.dictionary.use-forest-trie +kylin.dictionary.forest-trie-max-mb +kylin.dictionary.max-cache-entry +kylin.dictionary.growing-enabled +kylin.dictionary.append-entry-size +kylin.dictionary.append-max-versions +kylin.dictionary.append-version-ttl +kylin.dictionary.resuable +kylin.dictionary.shrunken-from-global-enabled +kylin.engine.mr.build-uhc-dict-in-additional-step +kylin.engine.mr.uhc-reducer-count +kylin.engine.spark-conf.spark.master +kylin.engine.spark-conf.spark.submit.deployMode +kylin.engine.spark-conf.spark.yarn.queue +kylin.engine.spark-conf.spark.driver.memory +kylin.engine.spark-conf.spark.executor.memory +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead +kylin.engine.spark-conf.spark.executor.cores +kylin.engine.spark-conf.spark.network.timeout +kylin.engine.spark-conf.spark.executor.instances +kylin.engine.spark-conf.spark.eventLog.enabled +kylin.engine.spark-conf.spark.hadoop.dfs.replication +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec +kylin.engine.spark.rdd-partition-cut-mb +kylin.engine.spark.min-partition +kylin.engine.spark.max-partition +kylin.engine.spark.storage-level +kylin.engine.spark-conf-mergedict.spark.executor.memory +kylin.engine.spark-conf-mergedict.spark.memory.fraction +kylin.engine.livy-conf.livy-enabled +kylin.engine.livy-conf.livy-url +kylin.engine.spark-conf.spark.shuffle.service.enabled +kylin.engine.spark-conf.spark.dynamicAllocation.enabled +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout +kylin.job.log-dir +kylin.job.allow-empty-segment +kylin.job.max-concurrent-jobs +kylin.job.retry +kylin.job.retry-interval +kylin.job.scheduler.priority-considered +kylin.job.scheduler.priority-bar-fetch-from-queue +kylin.job.scheduler.poll-interval-second +kylin.job.error-record-threshold +kylin.job.cube-auto-ready-enabled +kylin.cube.max-building-segments +kylin.job.notification-enabled +kylin.job.notification-mail-enable-starttls +kylin.job.notification-mail-host +kylin.job.notification-mail-port +kylin.job.notification-mail-username +kylin.job.notification-mail-password +kylin.job.notification-mail-sender +kylin.job.notification-admin-emails +kylin.cube.cubeplanner.enabled +kylin.server.query-metrics2-enabled +kylin.metrics.reporter-query-enabled +kylin.metrics.reporter-job-enabled +kylin.metrics.monitor-enabled +kylin.cube.cubeplanner.enabled-for-existing-cube +kylin.cube.cubeplanner.algorithm-threshold-greedy +kylin.cube.cubeplanner.expansion-threshold +kylin.cube.cubeplanner.recommend-cache-max-size +kylin.cube.cubeplanner.query-uncertainty-ratio +kylin.cube.cubeplanner.bpus-min-benefit-ratio +kylin.cube.cubeplanner.algorithm-threshold-genetic +kylin.storage.hbase.table-name-prefix +kylin.storage.hbase.namespace +kylin.storage.hbase.coprocessor-local-jar +kylin.storage.hbase.coprocessor-mem-gb +kylin.storage.hbase.run-local-coprocessor +kylin.storage.hbase.coprocessor-timeout-seconds +kylin.storage.hbase.region-cut-gb +kylin.storage.hbase.min-region-count +kylin.storage.hbase.max-region-count +kylin.storage.hbase.hfile-size-gb +kylin.storage.hbase.max-scan-result-bytes +kylin.storage.hbase.compression-codec +kylin.storage.hbase.rowkey-encoding +kylin.storage.hbase.block-size-bytes +kylin.storage.hbase.small-family-block-size-bytes +kylin.storage.hbase.owner-tag +kylin.storage.hbase.endpoint-compress-result +kylin.storage.hbase.max-hconnection-threads +kylin.storage.hbase.core-hconnection-threads +kylin.storage.hbase.hconnection-threads-alive-seconds +kylin.storage.hbase.replication-scope +kylin.storage.hbase.scan-cache-rows +kylin.secondary.storage.url +kylin.job.execute-output.max-size +kylin.engine.spark.output.max-size +kylin.stream.job.dfs.block.size +kylin.stream.index.path +kylin.stream.node +kylin.stream.metadata.store.type +kylin.stream.receiver.use-threads-per-query +kylin.stream.index.maxrows +kylin.stream.cube-num-of-consumer-tasks +kylin.stream.segment.retention.policy +kylin.stream.build.additional.cuboids +kylin.stream.cube.window +kylin.stream.cube.duration +kylin.stream.cube.duration.max +kylin.stream.checkpoint.file.max.num +kylin.stream.index.checkpoint.intervals +kylin.stream.immutable.segments.max.num +kylin.stream.consume.offsets.latest +kylin.stream.assigner +kylin.stream.coordinator.client.timeout.millsecond +kylin.stream.receiver.client.timeout.millsecond +kylin.stream.receiver.http.max.threads +kylin.stream.receiver.http.min.threads +kylin.stream.receiver.query-core-threads +kylin.stream.receiver.query-max-threads +kylin.stream.segment-max-fragments +kylin.stream.segment-min-fragments +kylin.stream.max-fragment-size-mb +kylin.stream.fragments-auto-merge-enable +kylin.stream.metrics.option +kylin.stream.event.timezone +kylin.stream.auto-resubmit-after-discard-enabled +kylin.storage.clean-after-delete-operation +kylin.query.skip-empty-segments +kylin.query.large-query-threshold +kylin.query.security-enabled +kylin.query.security.table-acl-enabled +kylin.query.calcite.extras-props.conformance +kylin.query.calcite.extras-props.caseSensitive +kylin.query.calcite.extras-props.unquotedCasing +kylin.query.calcite.extras-props.quoting +kylin.query.statement-cache-max-num +kylin.query.statement-cache-max-num-per-key +kylin.query.enable-dict-enumerator +kylin.query.enable-dynamic-column +kylin.storage.hbase.max-fuzzykey-scan +kylin.storage.hbase.max-fuzzykey-scan-split +kylin.storage.hbase.max-visit-scanrange +kylin.query.cache-enabled +kylin.query.cache-threshold-duration +kylin.query.cache-threshold-scan-count +kylin.query.cache-threshold-scan-bytes +kylin.query.timeout-seconds +kylin.query.timeout-seconds-coefficient +kylin.query.max-scan-bytes +kylin.storage.partition.max-scan-bytes +kylin.query.max-return-rows +kylin.query.badquery-stacktrace-depth +kylin.query.badquery-history-number +kylin.query.badquery-alerting-seconds +kylin.query.badquery-persistent-enabled +kylin.query.pushdown.runner-class-name +kylin.query.pushdown.jdbc.url +kylin.query.pushdown.jdbc.driver +kylin.query.pushdown.jdbc.username +kylin.query.pushdown.jdbc.password +kylin.query.pushdown.jdbc.pool-max-total +kylin.query.pushdown.jdbc.pool-max-idle +kylin.query.pushdown.jdbc.pool-min-idle +kylin.query.pushdown.update-enabled +kylin.query.pushdown.cache-enabled +kylin.query.force-limit +kylin.storage.limit-push-down-enabled +kylin.query.flat-filter-max-children +kylin.server.query-metrics-enabled +kylin.security.profile +kylin.security.ldap.connection-server +kylin.security.ldap.connection-username +kylin.security.ldap.connection-password +kylin.security.ldap.user-search-base +kylin.security.ldap.user-search-pattern +kylin.security.ldap.user-group-search-base +kylin.security.ldap.user-group-search-filter +kylin.security.ldap.service-search-base +kylin.security.ldap.service-search-pattern +kylin.security.ldap.service-group-search-base +kylin.security.acl.admin-role +kylin.server.auth-user-cache.expire-seconds +kylin.server.auth-user-cache.max-entries +kylin.server.external-acl-provider +kylin.env.zookeeper-acl-enabled +kylin.env.zookeeper.zk-auth +kylin.env.zookeeper.zk-acl +kylin.query.lazy-query-enabled +kylin.query.cache-signature-enabled +kylin.query.segment-cache-enabled +kylin.cache.memcached.hosts +kylin.resourcestore.reconnect-base-ms +kylin.env.zookeeper-base-sleep-time +kylin.env.zookeeper-is-local +kylin.job.remote-cli-port +kylin.restclient.connection.default-max-per-route +kylin.job.use-remote-cli \ No newline at end of file diff --git a/core/identify_param/results/kylin-cube/test_method_list.json b/core/identify_param/results/kylin-cube/test_method_list.json new file mode 100644 index 00000000..6fbad3a3 --- /dev/null +++ b/core/identify_param/results/kylin-cube/test_method_list.json @@ -0,0 +1 @@ +["org.apache.kylin.cube.RowKeyAttrRuleTest#testGoodDesc", "org.apache.kylin.cube.RowKeyAttrRuleTest#testBadDesc", "org.apache.kylin.cube.CubeDescManagerTest#testNullProcessLogic", "org.apache.kylin.cube.CubeDescManagerTest#testDictProcessLogic", "org.apache.kylin.cube.CubeDescManagerTest#testStartDictProcessLogic", "org.apache.kylin.cube.CubeDescManagerTest#testNonDictProcessLogic", "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc2", "org.apache.kylin.cube.AggregationGroupRuleTest#testBadDesc1", "org.apache.kylin.cube.AggregationGroupRuleTest#testBadDesc2", "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow", "org.apache.kylin.cube.CubeDescTest#testCiCube", "org.apache.kylin.cube.CubeDescTest#testGoodInit", "org.apache.kylin.cube.CubeDescTest#testBadInit1", "org.apache.kylin.cube.CubeDescTest#testBadInit2", "org.apache.kylin.cube.CubeDescTest#testBadInit3", "org.apache.kylin.cube.CubeDescTest#testBadInit4", "org.apache.kylin.cube.CubeDescTest#testBadInit5", "org.apache.kylin.cube.CubeDescTest#testBadInit6", "org.apache.kylin.cube.CubeDescTest#testBadInit7", "org.apache.kylin.cube.CubeDescTest#testBadInit8", "org.apache.kylin.cube.CubeDescTest#testBadInit9", "org.apache.kylin.cube.CubeDescTest#testBadInit10", "org.apache.kylin.cube.CubeDescTest#testBadInit11", "org.apache.kylin.cube.CubeDescTest#testBadInit12", "org.apache.kylin.cube.CubeDescTest#testBadInit14", "org.apache.kylin.cube.CubeDescTest#testBadInit15", "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", "org.apache.kylin.cube.CubeDescTest#testSerialize", "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", "org.apache.kylin.cube.CubeDescTest#testSerializeMap", "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", "org.apache.kylin.cube.CubeSpecificConfigTest#test", "org.apache.kylin.cube.CubeSpecificConfigTest#test2", "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", "org.apache.kylin.cube.CubeManagerTest#testBasics", "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", "org.apache.kylin.cube.CubeManagerTest#testGetAllCubes", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", "org.apache.kylin.cube.CubeInstanceTest#getTreeCuboidSchedulerTest", "org.apache.kylin.cube.CubeInstanceTest#copyCubeSegmentTest", "org.apache.kylin.cube.CubeInstanceTest#equalTest", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", "org.apache.kylin.cube.kv.RowKeyDecoderTest#testDecodeWithoutSlr", "org.apache.kylin.cube.kv.RowKeyDecoderTest#testDecodeWithSlr", "org.apache.kylin.cube.kv.RowKeyDecoderTest#testEncodeAndDecodeWithUtf8", "org.apache.kylin.cube.kv.RowKeyEncoderTest#testEncodeWithoutSlr", "org.apache.kylin.cube.kv.RowKeyEncoderTest#testEncodeWithSlr", "org.apache.kylin.cube.kv.RowKeyEncoderTest#testEncodeWithSlr2", "org.apache.kylin.cube.inmemcubing.ConsumeBlockingQueueControllerTest#testIterator", "org.apache.kylin.cube.inmemcubing.MemDiskStoreTest#testSingleThreadWriteRead", "org.apache.kylin.cube.inmemcubing.MemDiskStoreTest#testMultiThreadWriteRead", "org.apache.kylin.cube.inmemcubing.ConcurrentDiskStoreTest#testSingleThreadRead", "org.apache.kylin.cube.inmemcubing.ConcurrentDiskStoreTest#testMultiThreadRead", "org.apache.kylin.cube.inmemcubing.MemoryBudgetControllerTest#test", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", "org.apache.kylin.cube.cuboid.CuboidUtilTest#testGetLongestDepth", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", "org.apache.kylin.cube.cuboid.TreeCuboidSchedulerTest#testCreateCuboidTree", "org.apache.kylin.cube.cuboid.TreeCuboidSchedulerTest#testSpanningChild", "org.apache.kylin.cube.cuboid.TreeCuboidSchedulerTest#testFindBestMatchCuboid", "org.apache.kylin.cube.cuboid.CombinationTest#testComb3", "org.apache.kylin.cube.cuboid.algorithm.CuboidStatsUtilTest#isDescendantTest", "org.apache.kylin.cube.cuboid.algorithm.CuboidStatsUtilTest#generateMandatoryCuboidSetTest", "org.apache.kylin.cube.cuboid.algorithm.CuboidStatsUtilTest#complementRowCountForMandatoryCuboidsTest", "org.apache.kylin.cube.cuboid.algorithm.CuboidStatsUtilTest#testAdjustMandatoryCuboidStats", "org.apache.kylin.cube.cuboid.algorithm.CuboidStatsUtilTest#testAdjustCuboidStats", "org.apache.kylin.cube.cuboid.algorithm.CuboidStatsUtilTest#createDirectChildrenCacheTest", "org.apache.kylin.cube.cuboid.algorithm.CuboidStatsUtilTest#createDirectChildrenCacheStressTest", "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonemptyProject", "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonexistProject", "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", "org.apache.kylin.cube.common.BytesSplitterTest#test", "org.apache.kylin.cube.common.BytesSplitterTest#testNullValue", "org.apache.kylin.cube.common.RowKeySplitterTest#testWithSlr", "org.apache.kylin.cube.common.RowKeySplitterTest#testWithoutSlr", "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc"] \ No newline at end of file diff --git a/core/identify_param/results/kylin-storage/conf_params.txt b/core/identify_param/results/kylin-storage/conf_params.txt new file mode 100644 index 00000000..a787b0d8 --- /dev/null +++ b/core/identify_param/results/kylin-storage/conf_params.txt @@ -0,0 +1,288 @@ +kylin.env.hdfs-working-dir +kylin.env +kylin.env.zookeeper-base-path +kylin.env.zookeeper-connect-string +kylin.env.hadoop-conf-dir +kylin.server.mode +kylin.server.cluster-name +kylin.job.scheduler.default +kylin.job.lock +kylin.job.scheduler.safemode +kylin.job.scheduler.safemode.runable-projects +kylin.storage.hbase.cluster-fs +kylin.storage.hbase.cluster-hdfs-config-file +kylin.web.timezone +kylin.web.cross-domain-enabled +kylin.web.export-allow-admin +kylin.web.export-allow-other +kylin.web.dashboard-enabled +kylin.metadata.url +kylin.metadata.dimension-encoding-max-length +kylin.metadata.sync-retries +kylin.metadata.sync-error-handler +kylin.metadata.check-copy-on-write +kylin.metadata.hbase-client-scanner-timeout-period +kylin.metadata.hbase-rpc-timeout +kylin.metadata.hbase-client-retries-number +kylin.metadata.resource-store-provider.jdbc +kylin.metadata.jdbc.dialect +kylin.metadata.jdbc.json-always-small-cell +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold +kylin.metadata.jdbc.small-cell-meta-size-error-threshold +kylin.metadata.jdbc.max-cell-size +kylin.source.hive.client +kylin.source.hive.beeline-shell +kylin.source.hive.beeline-params +kylin.source.hive.enable-sparksql-for-table-ops +kylin.source.hive.sparksql-beeline-shell +kylin.source.hive.sparksql-beeline-params +kylin.source.default +kylin.source.jdbc.connection-url +kylin.source.jdbc.driver +kylin.source.jdbc.dialect +kylin.source.jdbc.user +kylin.source.jdbc.pass +kylin.source.jdbc.sqoop-home +kylin.source.jdbc.sqoop-mapper-num +kylin.source.jdbc.field-delimiter +kylin.source.hive.default-varchar-precision +kylin.source.hive.default-char-precision +kylin.source.hive.default-decimal-precision +kylin.source.hive.default-decimal-scale +kylin.cube.ignore-signature-inconsistency +kylin.cube.aggrgroup.max-combination +kylin.cube.aggrgroup.is-mandatory-only-valid +kylin.cube.rowkey.max-size +kylin.cube.allow-appear-in-multiple-projects +kylin.cube.gtscanrequest-serialization-level +kylin.web.hide-measures +kylin.cube.size-estimate-ratio +kylin.cube.size-estimate-memhungry-ratio +kylin.cube.size-estimate-countdistinct-ratio +kylin.cube.size-estimate-topn-ratio +kylin.cube.algorithm +kylin.cube.algorithm.layer-or-inmem-threshold +kylin.cube.algorithm.inmem-split-limit +kylin.cube.algorithm.inmem-concurrent-threads +kylin.job.sampling-percentage +kylin.cube.is-automerge-enabled +kylin.snapshot.max-mb +kylin.snapshot.max-cache-entry +kylin.snapshot.ext.shard-mb +kylin.snapshot.ext.local.cache.path +kylin.snapshot.ext.local.cache.max-size-gb +kylin.storage.default +kylin.source.hive.keep-flat-table +kylin.source.hive.database-for-flat-table +kylin.source.hive.flat-table-storage-format +kylin.source.hive.flat-table-field-delimiter +kylin.source.hive.intermediate-table-prefix +kylin.source.hive.redistribute-flat-table +kylin.source.hive.redistribute-column-count +kylin.source.hive.table-dir-create-first +kylin.storage.partition.aggr-spill-enabled +kylin.engine.mr.lib-dir +kylin.engine.mr.reduce-input-mb +kylin.engine.mr.reduce-count-ratio +kylin.engine.mr.min-reducer-number +kylin.engine.mr.max-reducer-number +kylin.engine.mr.mapper-input-rows +kylin.engine.mr.max-cuboid-stats-calculator-number +kylin.engine.mr.build-dict-in-reducer +kylin.engine.mr.yarn-check-interval-seconds +kylin.engine.mr.use-local-classpath +kylin.dictionary.use-forest-trie +kylin.dictionary.forest-trie-max-mb +kylin.dictionary.max-cache-entry +kylin.dictionary.growing-enabled +kylin.dictionary.append-entry-size +kylin.dictionary.append-max-versions +kylin.dictionary.append-version-ttl +kylin.dictionary.resuable +kylin.dictionary.shrunken-from-global-enabled +kylin.engine.mr.build-uhc-dict-in-additional-step +kylin.engine.mr.uhc-reducer-count +kylin.engine.spark-conf.spark.master +kylin.engine.spark-conf.spark.submit.deployMode +kylin.engine.spark-conf.spark.yarn.queue +kylin.engine.spark-conf.spark.driver.memory +kylin.engine.spark-conf.spark.executor.memory +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead +kylin.engine.spark-conf.spark.executor.cores +kylin.engine.spark-conf.spark.network.timeout +kylin.engine.spark-conf.spark.executor.instances +kylin.engine.spark-conf.spark.eventLog.enabled +kylin.engine.spark-conf.spark.hadoop.dfs.replication +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec +kylin.engine.spark.rdd-partition-cut-mb +kylin.engine.spark.min-partition +kylin.engine.spark.max-partition +kylin.engine.spark.storage-level +kylin.engine.spark-conf-mergedict.spark.executor.memory +kylin.engine.spark-conf-mergedict.spark.memory.fraction +kylin.engine.livy-conf.livy-enabled +kylin.engine.livy-conf.livy-url +kylin.engine.spark-conf.spark.shuffle.service.enabled +kylin.engine.spark-conf.spark.dynamicAllocation.enabled +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout +kylin.job.log-dir +kylin.job.allow-empty-segment +kylin.job.max-concurrent-jobs +kylin.job.retry +kylin.job.retry-interval +kylin.job.scheduler.priority-considered +kylin.job.scheduler.priority-bar-fetch-from-queue +kylin.job.scheduler.poll-interval-second +kylin.job.error-record-threshold +kylin.job.cube-auto-ready-enabled +kylin.cube.max-building-segments +kylin.job.notification-enabled +kylin.job.notification-mail-enable-starttls +kylin.job.notification-mail-host +kylin.job.notification-mail-port +kylin.job.notification-mail-username +kylin.job.notification-mail-password +kylin.job.notification-mail-sender +kylin.job.notification-admin-emails +kylin.cube.cubeplanner.enabled +kylin.server.query-metrics2-enabled +kylin.metrics.reporter-query-enabled +kylin.metrics.reporter-job-enabled +kylin.metrics.monitor-enabled +kylin.cube.cubeplanner.enabled-for-existing-cube +kylin.cube.cubeplanner.algorithm-threshold-greedy +kylin.cube.cubeplanner.expansion-threshold +kylin.cube.cubeplanner.recommend-cache-max-size +kylin.cube.cubeplanner.query-uncertainty-ratio +kylin.cube.cubeplanner.bpus-min-benefit-ratio +kylin.cube.cubeplanner.algorithm-threshold-genetic +kylin.storage.hbase.table-name-prefix +kylin.storage.hbase.namespace +kylin.storage.hbase.coprocessor-local-jar +kylin.storage.hbase.coprocessor-mem-gb +kylin.storage.hbase.run-local-coprocessor +kylin.storage.hbase.coprocessor-timeout-seconds +kylin.storage.hbase.region-cut-gb +kylin.storage.hbase.min-region-count +kylin.storage.hbase.max-region-count +kylin.storage.hbase.hfile-size-gb +kylin.storage.hbase.max-scan-result-bytes +kylin.storage.hbase.compression-codec +kylin.storage.hbase.rowkey-encoding +kylin.storage.hbase.block-size-bytes +kylin.storage.hbase.small-family-block-size-bytes +kylin.storage.hbase.owner-tag +kylin.storage.hbase.endpoint-compress-result +kylin.storage.hbase.max-hconnection-threads +kylin.storage.hbase.core-hconnection-threads +kylin.storage.hbase.hconnection-threads-alive-seconds +kylin.storage.hbase.replication-scope +kylin.storage.hbase.scan-cache-rows +kylin.secondary.storage.url +kylin.job.execute-output.max-size +kylin.engine.spark.output.max-size +kylin.stream.job.dfs.block.size +kylin.stream.index.path +kylin.stream.node +kylin.stream.metadata.store.type +kylin.stream.receiver.use-threads-per-query +kylin.stream.index.maxrows +kylin.stream.cube-num-of-consumer-tasks +kylin.stream.segment.retention.policy +kylin.stream.build.additional.cuboids +kylin.stream.cube.window +kylin.stream.cube.duration +kylin.stream.cube.duration.max +kylin.stream.checkpoint.file.max.num +kylin.stream.index.checkpoint.intervals +kylin.stream.immutable.segments.max.num +kylin.stream.consume.offsets.latest +kylin.stream.assigner +kylin.stream.coordinator.client.timeout.millsecond +kylin.stream.receiver.client.timeout.millsecond +kylin.stream.receiver.http.max.threads +kylin.stream.receiver.http.min.threads +kylin.stream.receiver.query-core-threads +kylin.stream.receiver.query-max-threads +kylin.stream.segment-max-fragments +kylin.stream.segment-min-fragments +kylin.stream.max-fragment-size-mb +kylin.stream.fragments-auto-merge-enable +kylin.stream.metrics.option +kylin.stream.event.timezone +kylin.stream.auto-resubmit-after-discard-enabled +kylin.storage.clean-after-delete-operation +kylin.query.skip-empty-segments +kylin.query.large-query-threshold +kylin.query.security-enabled +kylin.query.security.table-acl-enabled +kylin.query.calcite.extras-props.conformance +kylin.query.calcite.extras-props.caseSensitive +kylin.query.calcite.extras-props.unquotedCasing +kylin.query.calcite.extras-props.quoting +kylin.query.statement-cache-max-num +kylin.query.statement-cache-max-num-per-key +kylin.query.enable-dict-enumerator +kylin.query.enable-dynamic-column +kylin.storage.hbase.max-fuzzykey-scan +kylin.storage.hbase.max-fuzzykey-scan-split +kylin.storage.hbase.max-visit-scanrange +kylin.query.cache-enabled +kylin.query.cache-threshold-duration +kylin.query.cache-threshold-scan-count +kylin.query.cache-threshold-scan-bytes +kylin.query.timeout-seconds +kylin.query.timeout-seconds-coefficient +kylin.query.max-scan-bytes +kylin.storage.partition.max-scan-bytes +kylin.query.max-return-rows +kylin.query.badquery-stacktrace-depth +kylin.query.badquery-history-number +kylin.query.badquery-alerting-seconds +kylin.query.badquery-persistent-enabled +kylin.query.pushdown.runner-class-name +kylin.query.pushdown.jdbc.url +kylin.query.pushdown.jdbc.driver +kylin.query.pushdown.jdbc.username +kylin.query.pushdown.jdbc.password +kylin.query.pushdown.jdbc.pool-max-total +kylin.query.pushdown.jdbc.pool-max-idle +kylin.query.pushdown.jdbc.pool-min-idle +kylin.query.pushdown.update-enabled +kylin.query.pushdown.cache-enabled +kylin.query.force-limit +kylin.storage.limit-push-down-enabled +kylin.query.flat-filter-max-children +kylin.server.query-metrics-enabled +kylin.security.profile +kylin.security.ldap.connection-server +kylin.security.ldap.connection-username +kylin.security.ldap.connection-password +kylin.security.ldap.user-search-base +kylin.security.ldap.user-search-pattern +kylin.security.ldap.user-group-search-base +kylin.security.ldap.user-group-search-filter +kylin.security.ldap.service-search-base +kylin.security.ldap.service-search-pattern +kylin.security.ldap.service-group-search-base +kylin.security.acl.admin-role +kylin.server.auth-user-cache.expire-seconds +kylin.server.auth-user-cache.max-entries +kylin.server.external-acl-provider +kylin.env.zookeeper-acl-enabled +kylin.env.zookeeper.zk-auth +kylin.env.zookeeper.zk-acl +kylin.query.lazy-query-enabled +kylin.query.cache-signature-enabled +kylin.query.segment-cache-enabled +kylin.cache.memcached.hosts +kylin.resourcestore.reconnect-base-ms +kylin.env.zookeeper-base-sleep-time +kylin.env.zookeeper-is-local +kylin.job.remote-cli-port +kylin.restclient.connection.default-max-per-route +kylin.job.use-remote-cli \ No newline at end of file diff --git a/core/identify_param/results/kylin-storage/test_method_list.json b/core/identify_param/results/kylin-storage/test_method_list.json new file mode 100644 index 00000000..d0705998 --- /dev/null +++ b/core/identify_param/results/kylin-storage/test_method_list.json @@ -0,0 +1 @@ +["org.apache.kylin.storage.StorageFactoryTest#testSingleThread", "org.apache.kylin.storage.StorageFactoryTest#testMultipleThread", "org.apache.kylin.storage.StorageContextTest#testSetLimit", "org.apache.kylin.storage.StorageContextTest#testApplyLimitPushDownUsingStorageLimitLevelNO_LIMIT", "org.apache.kylin.storage.cache.EhcacheTest#basicTest", "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testBasics", "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testSomeNull", "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testAllNulls", "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testCap", "org.apache.kylin.storage.gtrecord.SortedIteratorMergerWithLimitTest#basic1", "org.apache.kylin.storage.gtrecord.SortedIteratorMergerWithLimitTest#basic2", "org.apache.kylin.storage.gtrecord.SortedIteratorMergerWithLimitTest#basic3", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifySegmentSkipping", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifySegmentSkipping2", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifyScanRangePlanner", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifyFirstRow", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifyScanWithUnevaluatableFilter", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifyScanWithEvaluatableFilter", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifyAggregateAndHavingFilter", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifyConvertFilterConstants1", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifyConvertFilterConstants2", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifyConvertFilterConstants3", "org.apache.kylin.storage.gtrecord.DictGridTableTest#verifyConvertFilterConstants4", "org.apache.kylin.storage.gtrecord.SortedIteratorMergerTest#basic1", "org.apache.kylin.storage.gtrecord.SortedIteratorMergerTest#basic2", "org.apache.kylin.storage.gtrecord.SortedIteratorMergerTest#basic3", "org.apache.kylin.storage.hybrid.HybridInstanceTest#testGetCost", "org.apache.kylin.storage.hybrid.HybridInstanceTest#testIsCapable", "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics"] \ No newline at end of file diff --git a/core/identify_param/results/kylin-tool/conf_params.txt b/core/identify_param/results/kylin-tool/conf_params.txt new file mode 100644 index 00000000..a787b0d8 --- /dev/null +++ b/core/identify_param/results/kylin-tool/conf_params.txt @@ -0,0 +1,288 @@ +kylin.env.hdfs-working-dir +kylin.env +kylin.env.zookeeper-base-path +kylin.env.zookeeper-connect-string +kylin.env.hadoop-conf-dir +kylin.server.mode +kylin.server.cluster-name +kylin.job.scheduler.default +kylin.job.lock +kylin.job.scheduler.safemode +kylin.job.scheduler.safemode.runable-projects +kylin.storage.hbase.cluster-fs +kylin.storage.hbase.cluster-hdfs-config-file +kylin.web.timezone +kylin.web.cross-domain-enabled +kylin.web.export-allow-admin +kylin.web.export-allow-other +kylin.web.dashboard-enabled +kylin.metadata.url +kylin.metadata.dimension-encoding-max-length +kylin.metadata.sync-retries +kylin.metadata.sync-error-handler +kylin.metadata.check-copy-on-write +kylin.metadata.hbase-client-scanner-timeout-period +kylin.metadata.hbase-rpc-timeout +kylin.metadata.hbase-client-retries-number +kylin.metadata.resource-store-provider.jdbc +kylin.metadata.jdbc.dialect +kylin.metadata.jdbc.json-always-small-cell +kylin.metadata.jdbc.small-cell-meta-size-warning-threshold +kylin.metadata.jdbc.small-cell-meta-size-error-threshold +kylin.metadata.jdbc.max-cell-size +kylin.source.hive.client +kylin.source.hive.beeline-shell +kylin.source.hive.beeline-params +kylin.source.hive.enable-sparksql-for-table-ops +kylin.source.hive.sparksql-beeline-shell +kylin.source.hive.sparksql-beeline-params +kylin.source.default +kylin.source.jdbc.connection-url +kylin.source.jdbc.driver +kylin.source.jdbc.dialect +kylin.source.jdbc.user +kylin.source.jdbc.pass +kylin.source.jdbc.sqoop-home +kylin.source.jdbc.sqoop-mapper-num +kylin.source.jdbc.field-delimiter +kylin.source.hive.default-varchar-precision +kylin.source.hive.default-char-precision +kylin.source.hive.default-decimal-precision +kylin.source.hive.default-decimal-scale +kylin.cube.ignore-signature-inconsistency +kylin.cube.aggrgroup.max-combination +kylin.cube.aggrgroup.is-mandatory-only-valid +kylin.cube.rowkey.max-size +kylin.cube.allow-appear-in-multiple-projects +kylin.cube.gtscanrequest-serialization-level +kylin.web.hide-measures +kylin.cube.size-estimate-ratio +kylin.cube.size-estimate-memhungry-ratio +kylin.cube.size-estimate-countdistinct-ratio +kylin.cube.size-estimate-topn-ratio +kylin.cube.algorithm +kylin.cube.algorithm.layer-or-inmem-threshold +kylin.cube.algorithm.inmem-split-limit +kylin.cube.algorithm.inmem-concurrent-threads +kylin.job.sampling-percentage +kylin.cube.is-automerge-enabled +kylin.snapshot.max-mb +kylin.snapshot.max-cache-entry +kylin.snapshot.ext.shard-mb +kylin.snapshot.ext.local.cache.path +kylin.snapshot.ext.local.cache.max-size-gb +kylin.storage.default +kylin.source.hive.keep-flat-table +kylin.source.hive.database-for-flat-table +kylin.source.hive.flat-table-storage-format +kylin.source.hive.flat-table-field-delimiter +kylin.source.hive.intermediate-table-prefix +kylin.source.hive.redistribute-flat-table +kylin.source.hive.redistribute-column-count +kylin.source.hive.table-dir-create-first +kylin.storage.partition.aggr-spill-enabled +kylin.engine.mr.lib-dir +kylin.engine.mr.reduce-input-mb +kylin.engine.mr.reduce-count-ratio +kylin.engine.mr.min-reducer-number +kylin.engine.mr.max-reducer-number +kylin.engine.mr.mapper-input-rows +kylin.engine.mr.max-cuboid-stats-calculator-number +kylin.engine.mr.build-dict-in-reducer +kylin.engine.mr.yarn-check-interval-seconds +kylin.engine.mr.use-local-classpath +kylin.dictionary.use-forest-trie +kylin.dictionary.forest-trie-max-mb +kylin.dictionary.max-cache-entry +kylin.dictionary.growing-enabled +kylin.dictionary.append-entry-size +kylin.dictionary.append-max-versions +kylin.dictionary.append-version-ttl +kylin.dictionary.resuable +kylin.dictionary.shrunken-from-global-enabled +kylin.engine.mr.build-uhc-dict-in-additional-step +kylin.engine.mr.uhc-reducer-count +kylin.engine.spark-conf.spark.master +kylin.engine.spark-conf.spark.submit.deployMode +kylin.engine.spark-conf.spark.yarn.queue +kylin.engine.spark-conf.spark.driver.memory +kylin.engine.spark-conf.spark.executor.memory +kylin.engine.spark-conf.spark.yarn.executor.memoryOverhead +kylin.engine.spark-conf.spark.executor.cores +kylin.engine.spark-conf.spark.network.timeout +kylin.engine.spark-conf.spark.executor.instances +kylin.engine.spark-conf.spark.eventLog.enabled +kylin.engine.spark-conf.spark.hadoop.dfs.replication +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress +kylin.engine.spark-conf.spark.hadoop.mapreduce.output.fileoutputformat.compress.codec +kylin.engine.spark.rdd-partition-cut-mb +kylin.engine.spark.min-partition +kylin.engine.spark.max-partition +kylin.engine.spark.storage-level +kylin.engine.spark-conf-mergedict.spark.executor.memory +kylin.engine.spark-conf-mergedict.spark.memory.fraction +kylin.engine.livy-conf.livy-enabled +kylin.engine.livy-conf.livy-url +kylin.engine.spark-conf.spark.shuffle.service.enabled +kylin.engine.spark-conf.spark.dynamicAllocation.enabled +kylin.engine.spark-conf.spark.dynamicAllocation.initialExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.minExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.maxExecutors +kylin.engine.spark-conf.spark.dynamicAllocation.executorIdleTimeout +kylin.job.log-dir +kylin.job.allow-empty-segment +kylin.job.max-concurrent-jobs +kylin.job.retry +kylin.job.retry-interval +kylin.job.scheduler.priority-considered +kylin.job.scheduler.priority-bar-fetch-from-queue +kylin.job.scheduler.poll-interval-second +kylin.job.error-record-threshold +kylin.job.cube-auto-ready-enabled +kylin.cube.max-building-segments +kylin.job.notification-enabled +kylin.job.notification-mail-enable-starttls +kylin.job.notification-mail-host +kylin.job.notification-mail-port +kylin.job.notification-mail-username +kylin.job.notification-mail-password +kylin.job.notification-mail-sender +kylin.job.notification-admin-emails +kylin.cube.cubeplanner.enabled +kylin.server.query-metrics2-enabled +kylin.metrics.reporter-query-enabled +kylin.metrics.reporter-job-enabled +kylin.metrics.monitor-enabled +kylin.cube.cubeplanner.enabled-for-existing-cube +kylin.cube.cubeplanner.algorithm-threshold-greedy +kylin.cube.cubeplanner.expansion-threshold +kylin.cube.cubeplanner.recommend-cache-max-size +kylin.cube.cubeplanner.query-uncertainty-ratio +kylin.cube.cubeplanner.bpus-min-benefit-ratio +kylin.cube.cubeplanner.algorithm-threshold-genetic +kylin.storage.hbase.table-name-prefix +kylin.storage.hbase.namespace +kylin.storage.hbase.coprocessor-local-jar +kylin.storage.hbase.coprocessor-mem-gb +kylin.storage.hbase.run-local-coprocessor +kylin.storage.hbase.coprocessor-timeout-seconds +kylin.storage.hbase.region-cut-gb +kylin.storage.hbase.min-region-count +kylin.storage.hbase.max-region-count +kylin.storage.hbase.hfile-size-gb +kylin.storage.hbase.max-scan-result-bytes +kylin.storage.hbase.compression-codec +kylin.storage.hbase.rowkey-encoding +kylin.storage.hbase.block-size-bytes +kylin.storage.hbase.small-family-block-size-bytes +kylin.storage.hbase.owner-tag +kylin.storage.hbase.endpoint-compress-result +kylin.storage.hbase.max-hconnection-threads +kylin.storage.hbase.core-hconnection-threads +kylin.storage.hbase.hconnection-threads-alive-seconds +kylin.storage.hbase.replication-scope +kylin.storage.hbase.scan-cache-rows +kylin.secondary.storage.url +kylin.job.execute-output.max-size +kylin.engine.spark.output.max-size +kylin.stream.job.dfs.block.size +kylin.stream.index.path +kylin.stream.node +kylin.stream.metadata.store.type +kylin.stream.receiver.use-threads-per-query +kylin.stream.index.maxrows +kylin.stream.cube-num-of-consumer-tasks +kylin.stream.segment.retention.policy +kylin.stream.build.additional.cuboids +kylin.stream.cube.window +kylin.stream.cube.duration +kylin.stream.cube.duration.max +kylin.stream.checkpoint.file.max.num +kylin.stream.index.checkpoint.intervals +kylin.stream.immutable.segments.max.num +kylin.stream.consume.offsets.latest +kylin.stream.assigner +kylin.stream.coordinator.client.timeout.millsecond +kylin.stream.receiver.client.timeout.millsecond +kylin.stream.receiver.http.max.threads +kylin.stream.receiver.http.min.threads +kylin.stream.receiver.query-core-threads +kylin.stream.receiver.query-max-threads +kylin.stream.segment-max-fragments +kylin.stream.segment-min-fragments +kylin.stream.max-fragment-size-mb +kylin.stream.fragments-auto-merge-enable +kylin.stream.metrics.option +kylin.stream.event.timezone +kylin.stream.auto-resubmit-after-discard-enabled +kylin.storage.clean-after-delete-operation +kylin.query.skip-empty-segments +kylin.query.large-query-threshold +kylin.query.security-enabled +kylin.query.security.table-acl-enabled +kylin.query.calcite.extras-props.conformance +kylin.query.calcite.extras-props.caseSensitive +kylin.query.calcite.extras-props.unquotedCasing +kylin.query.calcite.extras-props.quoting +kylin.query.statement-cache-max-num +kylin.query.statement-cache-max-num-per-key +kylin.query.enable-dict-enumerator +kylin.query.enable-dynamic-column +kylin.storage.hbase.max-fuzzykey-scan +kylin.storage.hbase.max-fuzzykey-scan-split +kylin.storage.hbase.max-visit-scanrange +kylin.query.cache-enabled +kylin.query.cache-threshold-duration +kylin.query.cache-threshold-scan-count +kylin.query.cache-threshold-scan-bytes +kylin.query.timeout-seconds +kylin.query.timeout-seconds-coefficient +kylin.query.max-scan-bytes +kylin.storage.partition.max-scan-bytes +kylin.query.max-return-rows +kylin.query.badquery-stacktrace-depth +kylin.query.badquery-history-number +kylin.query.badquery-alerting-seconds +kylin.query.badquery-persistent-enabled +kylin.query.pushdown.runner-class-name +kylin.query.pushdown.jdbc.url +kylin.query.pushdown.jdbc.driver +kylin.query.pushdown.jdbc.username +kylin.query.pushdown.jdbc.password +kylin.query.pushdown.jdbc.pool-max-total +kylin.query.pushdown.jdbc.pool-max-idle +kylin.query.pushdown.jdbc.pool-min-idle +kylin.query.pushdown.update-enabled +kylin.query.pushdown.cache-enabled +kylin.query.force-limit +kylin.storage.limit-push-down-enabled +kylin.query.flat-filter-max-children +kylin.server.query-metrics-enabled +kylin.security.profile +kylin.security.ldap.connection-server +kylin.security.ldap.connection-username +kylin.security.ldap.connection-password +kylin.security.ldap.user-search-base +kylin.security.ldap.user-search-pattern +kylin.security.ldap.user-group-search-base +kylin.security.ldap.user-group-search-filter +kylin.security.ldap.service-search-base +kylin.security.ldap.service-search-pattern +kylin.security.ldap.service-group-search-base +kylin.security.acl.admin-role +kylin.server.auth-user-cache.expire-seconds +kylin.server.auth-user-cache.max-entries +kylin.server.external-acl-provider +kylin.env.zookeeper-acl-enabled +kylin.env.zookeeper.zk-auth +kylin.env.zookeeper.zk-acl +kylin.query.lazy-query-enabled +kylin.query.cache-signature-enabled +kylin.query.segment-cache-enabled +kylin.cache.memcached.hosts +kylin.resourcestore.reconnect-base-ms +kylin.env.zookeeper-base-sleep-time +kylin.env.zookeeper-is-local +kylin.job.remote-cli-port +kylin.restclient.connection.default-max-per-route +kylin.job.use-remote-cli \ No newline at end of file diff --git a/core/identify_param/results/kylin-tool/test_method_list.json b/core/identify_param/results/kylin-tool/test_method_list.json new file mode 100644 index 00000000..63e2b6c3 --- /dev/null +++ b/core/identify_param/results/kylin-tool/test_method_list.json @@ -0,0 +1 @@ +["org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", "org.apache.kylin.tool.HybridCubeCLITest#test1Create", "org.apache.kylin.tool.HybridCubeCLITest#test2Update", "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap", "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", "org.apache.kylin.tool.KylinConfigCLITest#testGetProperty", "org.apache.kylin.tool.KylinConfigCLITest#testGetPrefix", "org.apache.kylin.tool.ClientEnvExtractorTest#testNormal", "org.apache.kylin.tool.ClientEnvExtractorTest#testTimeout", "org.apache.kylin.tool.ClientEnvExtractorTest#testError", "org.apache.kylin.tool.CubeMetaIngesterTest#testHappyIngest", "org.apache.kylin.tool.CubeMetaIngesterTest#testHappyIngest2", "org.apache.kylin.tool.CubeMetaIngesterTest#testBadIngest", "org.apache.kylin.tool.CubeMetaIngesterTest#testProjectNotExist", "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testWriteSinkToolsJson", "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testReadSinkToolsJson"] \ No newline at end of file diff --git a/core/identify_param/runner.py b/core/identify_param/runner.py index 2ce7fd99..30c01f82 100644 --- a/core/identify_param/runner.py +++ b/core/identify_param/runner.py @@ -35,8 +35,8 @@ def __init__(self, module, aggressive=False): def get_full_report_path(self, suffix): all_reports = utils.get_ctest_surefire_report(self.module) for report in all_reports: - if report.endswith(suffix): - return report + if report.endswith(suffix): + return report return "none" def traceInTestCode(self, trace): @@ -78,6 +78,20 @@ def skipTrace(self, trace): if self.module == "alluxio-core": if "alluxio.conf" in trace and "Test" not in trace: return True + if self.module == "kylin-common": + if "testThreadLocalOverride" in trace and "Test" not in trace: + return True + if "testSetKylinConfigInEnvIfMissingTakingEmptyProperties" in trace and "Test" not in trace: + return True + if self.module == "kylin-cube": + if "ProjectSpecificConfigTest" in trace and "Test" not in trace: + return True + if "CubeSpecificConfigTest" in trace and "Test" not in trace: + return True + if self.module == "kylin-tool": + if "KylinConfigCLITest" in trace and "Test" not in trace: + return True + return False def setInTest(self, stacktrace): @@ -103,7 +117,7 @@ def parse(self, lines, method): assert line.count(" ") == 1, "more than one whitespace in " + line param_name = line.split(" ")[1] if param_name in self.params: - is_getter = True + is_getter = True self.getter_record.write(method + " " + param_name + "\n") self.getter_record.flush() elif "[CTEST][SET-PARAM]" in line: @@ -144,10 +158,10 @@ def persist_list(self, method_list, file_name): def run_individual_testmethod(self): all_test_methods = json.load(open("%s" % (self.run_list))) length = len(all_test_methods) - print ("number of all test methods: " + str(length)) + print("number of all test methods: " + str(length)) old_path = os.getcwd() - print (old_path) + print(old_path) os.chdir(constant.MVN_TEST_PATH[self.module]) print("change to " + constant.MVN_TEST_PATH[self.module]) @@ -163,11 +177,22 @@ def run_individual_testmethod(self): method_out = open(out_dir + method + "-log.txt", "w+") method_report_path = report_dir + method + "-report.txt" start_time_for_this_method = time.time() + if self.module == "alluxio-core": cmd = ["mvn", "surefire:test", "-Dtest=" + method, "-DfailIfNoTests=false"] + elif self.module == "kylin-common": + cmd = ["mvn", "-pl", "core-common", "surefire:test", "-Dtest=" + method, "-DfailIfNoTests=false"] + elif self.module == "kylin-tool": + cmd = ["mvn", "-pl", "tool", "test", "-Dtest=" + method, "-DfailIfNoTests=false"] + elif self.module == "kylin-cube": + cmd = ["mvn", "-pl", "core-cube", "test", "-Dtest=" + method, "-DfailIfNoTests=false"] + elif self.module == "kylin-storage": + cmd = ["mvn", "-pl", "core-storage", "test", "-Dtest=" + method, "-DfailIfNoTests=false"] + else: - cmd = ["mvn", "surefire:test", "-Dtest=" + method] - print ("mvn surefire:test -Dtest="+method) + cmd = ["mvn", "surefire:test", "-Dtest=" + method, "-DfailIfNoTests=false"] + command = " ".join(cmd) + print(command) child = subprocess.Popen(cmd, stdout=method_out, stderr=method_out) child.wait() @@ -187,11 +212,14 @@ def run_individual_testmethod(self): continue class_name = method.split("#")[0] - suffix_filename_to_check = class_name + "-output.txt" + suffix_filename_to_check = class_name + ".txt" + if self.module == "kylin-common" or "kylin-tool" or "kylin-cube" or "kylin-storage": + suffix_filename_to_check = class_name + "-output" + ".txt" full_path = self.get_full_report_path(suffix_filename_to_check) + print(full_path) if full_path == "none": print("no report for " + method) - self.no_report_list.append(method) + self.no_report_list.append(method) else: shutil.copy(full_path, method_report_path) self.parse(open(full_path, "r").readlines(), method) diff --git a/core/patch/kylin/interception.patch b/core/patch/kylin/interception.patch new file mode 100644 index 00000000..79936cd2 --- /dev/null +++ b/core/patch/kylin/interception.patch @@ -0,0 +1,67 @@ +From 6fc6ef08ebaa72c25accd51b3c3d7334e8083f56 Mon Sep 17 00:00:00 2001 +From: ConstaT99 +Date: Thu, 8 Dec 2022 19:24:52 -0600 +Subject: [PATCH] interception + +--- + .../main/java/org/apache/kylin/common/KylinConfig.java | 10 ++++++++++ + core-common/src/main/resources/ctest.properties | 0 + pom.xml | 3 ++- + 3 files changed, 12 insertions(+), 1 deletion(-) + create mode 100644 core-common/src/main/resources/ctest.properties + +diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java +index de5c16bfee..e35d5a823f 100644 +--- a/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java ++++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfig.java +@@ -62,6 +62,7 @@ public class KylinConfig extends KylinConfigBase { + */ + public static final String KYLIN_CONF_PROPERTIES_FILE = "kylin.properties"; + public static final String KYLIN_DEFAULT_CONF_PROPERTIES_FILE = "kylin-defaults.properties"; ++ public static final String CTEST_CONF_PROPERTIES_FILE = "ctest.properties"; // ctest + public static final String KYLIN_CONF = "KYLIN_CONF"; + + // static cached instances +@@ -128,6 +129,15 @@ public class KylinConfig extends KylinConfigBase { + loadPropertiesFromInputStream(additionalResource.openStream(), defaultOrderedProperties); + } + } ++ /** ++ * load ctest parameters ++ */ ++ URL ctestResource = Thread.currentThread().getContextClassLoader().getResource(CTEST_CONF_PROPERTIES_FILE); ++ logger.warn("[CTEST][LOAD-PARAM] Loading ctest.properties from {}" , ctestResource.getPath()); ++ loadPropertiesFromInputStream(ctestResource.openStream(), defaultOrderedProperties); ++ /** ++ * end ctest ++ */ + } catch (IOException e) { + throw new RuntimeException(e); + } +diff --git a/core-common/src/main/resources/ctest.properties b/core-common/src/main/resources/ctest.properties +new file mode 100644 +index 0000000000..e69de29bb2 +diff --git a/pom.xml b/pom.xml +index 4153ca9f49..818ccafcf4 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -1582,6 +1582,7 @@ + + ${project.basedir}/../target/surefire-reports + ++ true + + **/IT*.java + org.apache.kylin.engine.spark2.NManualBuildAndQueryCuboidTest +@@ -1601,7 +1602,7 @@ + + + -javaagent:${project.build.testOutputDirectory}/jamm.jar +- ${argLine} ${surefireArgLine} ++ ${argLine} + + + +-- +2.38.1 + diff --git a/core/patch/kylin/logging.patch b/core/patch/kylin/logging.patch new file mode 100644 index 00000000..37bff265 --- /dev/null +++ b/core/patch/kylin/logging.patch @@ -0,0 +1,115 @@ +From 35a50d5105f5a8c86822d1633913c9b2386c359c Mon Sep 17 00:00:00 2001 +From: ConstaT99 +Date: Thu, 8 Dec 2022 19:33:08 -0600 +Subject: [PATCH] logging + +--- + .../apache/kylin/common/KylinConfigBase.java | 41 +++++++++++++++---- + pom.xml | 3 +- + 2 files changed, 34 insertions(+), 10 deletions(-) + +diff --git a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java +index f800dfd21c..63850d3509 100644 +--- a/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java ++++ b/core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java +@@ -22,16 +22,8 @@ import java.io.File; + import java.io.IOException; + import java.io.Serializable; + import java.nio.file.Paths; +-import java.util.Arrays; +-import java.util.Collection; +-import java.util.HashMap; +-import java.util.List; +-import java.util.Locale; +-import java.util.Map; ++import java.util.*; + import java.util.Map.Entry; +-import java.util.Properties; +-import java.util.SortedSet; +-import java.util.TimeZone; + import java.util.regex.Matcher; + import java.util.regex.Pattern; + +@@ -180,6 +172,20 @@ public abstract class KylinConfigBase implements Serializable { + protected String getOptional(String prop, String dft) { + + final String property = System.getProperty(prop); ++ /* ++ * begin ctest ++ * */ ++ String res; ++ if(property != null){ ++ res = getSubstitutor().replace(property, System.getenv()); ++ logger.warn("[CTEST][GET-PARAM] " + prop + ' '+ res);//ctest ++ }else{ ++ res = getSubstitutor().replace(properties.getProperty(prop, dft), System.getenv()); ++ logger.warn("[CTEST][GET-PARAM] " + prop + ' '+ res);//ctest ++ } ++ /* ++ * end ctest ++ * */ + return property != null ? getSubstitutor().replace(property, System.getenv()) + : getSubstitutor().replace(properties.getProperty(prop, dft), System.getenv()); + } +@@ -201,6 +207,21 @@ public abstract class KylinConfigBase implements Serializable { + filteredProperties.put(entry.getKey(), sub.replace((String) entry.getValue())); + } + } ++ /** ++ * get properties for ctest ++ */ ++ if (propertyKeys != null) { ++ Set names = filteredProperties.stringPropertyNames(); ++ Iterator namesIterator = names.iterator(); ++ int i = 0; //ctest ++ while (namesIterator.hasNext()){ ++ logger.warn("[CTEST][GET-PARAM]" + namesIterator.next() + " index: " + i); ++ i ++; ++ } ++ } ++ /** ++ * end ctest ++ */ + return filteredProperties; + } + +@@ -222,6 +243,7 @@ public abstract class KylinConfigBase implements Serializable { + for (Entry entry : getAllProperties().entrySet()) { + String key = (String) entry.getKey(); + if (key.startsWith(prefix)) { ++ logger.warn("[CTEST][GET-PARAM] " + key);//ctest + result.put(key.substring(prefix.length()), (String) entry.getValue()); + } + } +@@ -258,6 +280,7 @@ public abstract class KylinConfigBase implements Serializable { + * Use with care, properties should be read-only. This is for testing only. + */ + final public void setProperty(String key, String value) { ++ logger.warn("[CTEST][SET-PARAM] {} {}", key, value);// Ctest + logger.info("Kylin Config was updated with {} : {}", key, value); + properties.setProperty(BCC.check(key), value); + } +diff --git a/pom.xml b/pom.xml +index 4153ca9f49..818ccafcf4 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -1582,6 +1582,7 @@ + + ${project.basedir}/../target/surefire-reports + ++ true + + **/IT*.java + org.apache.kylin.engine.spark2.NManualBuildAndQueryCuboidTest +@@ -1601,7 +1602,7 @@ + + + -javaagent:${project.build.testOutputDirectory}/jamm.jar +- ${argLine} ${surefireArgLine} ++ ${argLine} + + + +-- +2.38.1 + diff --git a/core/run_ctest/inject.py b/core/run_ctest/inject.py index 75f5b443..bef2a904 100644 --- a/core/run_ctest/inject.py +++ b/core/run_ctest/inject.py @@ -14,7 +14,7 @@ def inject_config(param_value_pairs): for p, v in param_value_pairs.items(): print(">>>>[ctest_core] injecting {} with value {}".format(p, v)) - if project in [ZOOKEEPER, ALLUXIO]: + if project in [ZOOKEEPER, ALLUXIO, KCOMMON, KTOOL, KCUBE, KSTORAGE]: for inject_path in INJECTION_PATH[project]: print(">>>>[ctest_core] injecting into file: {}".format(inject_path)) file = open(inject_path, "w") @@ -41,7 +41,7 @@ def inject_config(param_value_pairs): def clean_conf_file(project): print(">>>> cleaning injected configuration from file") - if project in [ZOOKEEPER, ALLUXIO]: + if project in [ZOOKEEPER, ALLUXIO, KCOMMON, KTOOL, KCUBE, KSTORAGE]: for inject_path in INJECTION_PATH[project]: file = open(inject_path, "w") file.write("\n") diff --git a/core/run_ctest/program_input.py b/core/run_ctest/program_input.py index 2b971f1c..84d05d42 100644 --- a/core/run_ctest/program_input.py +++ b/core/run_ctest/program_input.py @@ -4,17 +4,17 @@ # run mode "run_mode": "run_ctest", # string # name of the project, i.e. hadoop-common, hadoop-hdfs - "project": "hadoop-common", # string + "project": "kylin-common", # string # path to param -> tests json mapping - "mapping_path": "../../data/ctest_mapping/opensource-hadoop-common.json", # string + "mapping_path": "../../data/ctest_mapping/opensource-kylin-common.json", # string # input directory hosting configuration files to be test, target-project-format specific - "conf_file_dir": "sample-hadoop-common", # string + "conf_file_dir": "sample-kylin-common", # string # display the terminal output live, without saving any results "display_mode": False, # bool # whether to use mvn test or mvn surefire:test "use_surefire": False, # bool # additional maven options to pass to `mvn surefire:test -Dtest=...` - "maven_args": [], # list of strings, each element is an option + "maven_args": ["-Dcheckstyle.skip","-DfailIfNoTests=false"], # list of strings, each element is an option # timeout on the mvn test command "cmd_timeout": None, # int } diff --git a/core/run_ctest/run_test.py b/core/run_ctest/run_test.py index e156567f..f99af8ff 100644 --- a/core/run_ctest/run_test.py +++ b/core/run_ctest/run_test.py @@ -14,8 +14,10 @@ display_mode = p_input["display_mode"] project = p_input["project"] cmd_timeout = p_input["cmd_timeout"] -testing_dir = os.path.join(PROJECT_DIR[project], MODULE_SUBDIR[project]) - +if project in [KCOMMON,KTOOL,KSTORAGE,KCUBE]: + testing_dir = os.path.join(PROJECT_DIR[project]) +else: + testing_dir = os.path.join(PROJECT_DIR[project],MODULE_SUBDIR[project]) def run_test_batch(param_values, associated_test_map): print(">>>>[ctest_core] start running ctests for {} parameters".format(len(associated_test_map))) diff --git a/core/run_ctest/run_test_utils.py b/core/run_ctest/run_test_utils.py index 12dfa13c..b653931e 100644 --- a/core/run_ctest/run_test_utils.py +++ b/core/run_ctest/run_test_utils.py @@ -8,6 +8,7 @@ maven_args = p_input["maven_args"] use_surefire = p_input["use_surefire"] ansi_escape = re.compile(r'(\x9B|\x1B\[)[0-?]*[ -\/]*[@-~]') +project = p_input["project"] class TestResult: def __init__(self, ran_tests_and_time=set(), failed_tests=set()): @@ -19,7 +20,13 @@ def maven_cmd(test, add_time=False): # surefire:test reuses test build from last compilation # if you modified the test and want to rerun it, you must use `mvn test` test_mode = "surefire:test" if use_surefire else "test" - cmd = ["mvn", test_mode, "-Dtest={}".format(test)] + maven_args + if project in [KCUBE, KSTORAGE]: + modulename = "core-" + project.split("-")[1] + cmd = ["mvn", "-pl", "core-common,"+ modulename, test_mode, "-Dtest={}".format(test)] + maven_args + elif project == KTOOL: + cmd = ["mvn", "-pl", "core-common,tool", test_mode, "-Dtest={}".format(test)] + maven_args + else: + cmd = ["mvn", test_mode, "-Dtest={}".format(test)] + maven_args if add_time: cmd = ["time"] + cmd print(">>>>[ctest_core] command: " + " ".join(cmd)) diff --git a/data/ctest_mapping/opensource-kylin-common.json b/data/ctest_mapping/opensource-kylin-common.json new file mode 100644 index 00000000..3ca87671 --- /dev/null +++ b/data/ctest_mapping/opensource-kylin-common.json @@ -0,0 +1,77 @@ +{ + "kylin.metadata.url": [ + "org.apache.kylin.common.KylinConfigTest#testCalciteExtrasProperties", + "org.apache.kylin.common.persistence.LocalFileResourceStoreTest#testRollback", + "org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test", + "org.apache.kylin.common.util.EncryptUtilTest#testNullInput", + "org.apache.kylin.common.KylinConfigTest#testSetKylinConfigInEnvIfMissingTakingEmptyProperties", + "org.apache.kylin.common.KylinConfigTest#testUnexpectedBlackInPro", + "org.apache.kylin.common.util.SourceConfigurationUtilTest#testHiveConf", + "org.apache.kylin.common.KylinConfigTest#testGetMetadataUrlPrefix", + "org.apache.kylin.common.persistence.ResourceToolTest#testCopy", + "org.apache.kylin.common.persistence.HDFSResourceStoreTest#testListResourcesImpl", + "org.apache.kylin.common.restclient.RestClientTest#basicTests", + "org.apache.kylin.common.persistence.LocalFileResourceStoreTest#testFileStore", + "org.apache.kylin.common.KylinConfigTest#testPropertiesHotLoad", + "org.apache.kylin.common.KylinConfigTest#testThreadLocalOverride", + "org.apache.kylin.common.util.SSHClientTest#testCmd", + "org.apache.kylin.common.KylinConfigTest#testBackwardCompatibility", + "org.apache.kylin.common.KylinConfigTest#testCreateInstanceFromUriThrowsIllegalStateExceptionOne", + "org.apache.kylin.common.KylinConfigTest#testCreateInstanceFromUriThrowsRuntimeException", + "org.apache.kylin.common.util.SSHClientTest#testScp", + "org.apache.kylin.common.KylinConfigTest#testExtShareTheBase" + ], + "kylin.storage.hbase.owner-tag": [ + "org.apache.kylin.common.KylinConfigTest#testPropertiesHotLoad" + ], + "kylin.query.calcite.extras-props.caseSensitive": [ + "org.apache.kylin.common.KylinConfigTest#testCalciteExtrasProperties" + ], + "kylin.query.calcite.extras-props.conformance": [ + "org.apache.kylin.common.KylinConfigTest#testCalciteExtrasProperties" + ], + "kylin.query.calcite.extras-props.unquotedCasing": [ + "org.apache.kylin.common.KylinConfigTest#testCalciteExtrasProperties" + ], + "kylin.query.calcite.extras-props.quoting": [ + "org.apache.kylin.common.KylinConfigTest#testCalciteExtrasProperties" + ], + "kylin.restclient.connection.default-max-per-route": [ + "org.apache.kylin.common.KylinConfigTest#testCreateInstanceFromUriThrowsRuntimeException", + "org.apache.kylin.common.restclient.RestClientTest#basicTests" + ], + "kylin.job.use-remote-cli": [ + "org.apache.kylin.common.util.SSHClientTest#testCmd", + "org.apache.kylin.common.util.SSHClientTest#testScp" + ], + "kylin.job.remote-cli-port": [ + "org.apache.kylin.common.util.SSHClientTest#testCmd", + "org.apache.kylin.common.util.SSHClientTest#testScp" + ], + "kylin.env.zookeeper-base-path": [ + "org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test" + ], + "kylin.server.cluster-name": [ + "org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test" + ], + "kylin.env.zookeeper-base-sleep-time": [ + "org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test" + ], + "kylin.env.zookeeper-is-local": [ + "org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test" + ], + "kylin.env.zookeeper-connect-string": [ + "org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test" + ], + "kylin.server.mode": [ + "org.apache.kylin.common.zookeeper.KylinServerDiscoveryTest#test" + ], + "kylin.env.hdfs-working-dir": [ + "org.apache.kylin.common.persistence.HDFSResourceStoreTest#testListResourcesImpl" + ], + "kylin.resourcestore.reconnect-base-ms": [ + "org.apache.kylin.common.persistence.LocalFileResourceStoreTest#testFileStore", + "org.apache.kylin.common.persistence.LocalFileResourceStoreTest#testRollback", + "org.apache.kylin.common.persistence.ResourceToolTest#testCopy" + ] +} \ No newline at end of file diff --git a/data/ctest_mapping/opensource-kylin-cube.json b/data/ctest_mapping/opensource-kylin-cube.json new file mode 100644 index 00000000..1869b24b --- /dev/null +++ b/data/ctest_mapping/opensource-kylin-cube.json @@ -0,0 +1,969 @@ +{ + "kylin.metadata.url": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.inmemcubing.ConcurrentDiskStoreTest#testMultiThreadRead", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonexistProject", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testGetAllCubes", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.AggregationGroupRuleTest#testBadDesc2", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc2", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", + "org.apache.kylin.cube.inmemcubing.ConcurrentDiskStoreTest#testSingleThreadRead", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonemptyProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.inmemcubing.MemDiskStoreTest#testSingleThreadWriteRead", + "org.apache.kylin.cube.inmemcubing.MemDiskStoreTest#testMultiThreadWriteRead", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.AggregationGroupRuleTest#testBadDesc1", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap", + "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow" + ], + "kylin.metadata.check-copy-on-write": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonexistProject", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonemptyProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap", + "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow" + ], + "kylin.resourcestore.reconnect-base-ms": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonexistProject", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testGetAllCubes", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonemptyProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap", + "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow" + ], + "kylin.source.hive.default-varchar-precision": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap", + "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow" + ], + "kylin.source.hive.default-decimal-precision": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.inmemcubing.ConcurrentDiskStoreTest#testMultiThreadRead", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", + "org.apache.kylin.cube.inmemcubing.ConcurrentDiskStoreTest#testSingleThreadRead", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.inmemcubing.MemDiskStoreTest#testSingleThreadWriteRead", + "org.apache.kylin.cube.inmemcubing.MemDiskStoreTest#testMultiThreadWriteRead", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap", + "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow" + ], + "kylin.source.hive.default-decimal-scale": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.inmemcubing.ConcurrentDiskStoreTest#testMultiThreadRead", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", + "org.apache.kylin.cube.inmemcubing.ConcurrentDiskStoreTest#testSingleThreadRead", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.inmemcubing.MemDiskStoreTest#testSingleThreadWriteRead", + "org.apache.kylin.cube.inmemcubing.MemDiskStoreTest#testMultiThreadWriteRead", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap", + "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow" + ], + "kylin.metadata.sync-error-handler": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonexistProject", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.DimensionRangeInfoTest#testMergeRangeMap", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.project.ProjectManagerTest#testDropNonemptyProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap", + "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow" + ], + "kylin.cube.rowkey.max-size": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap", + "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow" + ], + "kylin.cube.aggrgroup.is-mandatory-only-valid": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap", + "org.apache.kylin.cube.AggregationGroupRuleTest#testCombinationIntOverflow" + ], + "kylin.cube.aggrgroup.max-combination": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.CubeDescTest#testDerivedInfo", + "org.apache.kylin.cube.CubeDescTest#testValidateNotifyList", + "org.apache.kylin.cube.CubeDescTest#testBadInit8", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboid_onlyBaseCuboid", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid1", + "org.apache.kylin.cube.CubeDescTest#testBadInit12", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts3", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid3", + "org.apache.kylin.cube.CubeSpecificConfigTest#test", + "org.apache.kylin.cube.CubeManagerTest#testBasics", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsDrop", + "org.apache.kylin.cube.CubeDescTest#testSerialize", + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeDescTest#testCiCube", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithMultiAggrGroup", + "org.apache.kylin.cube.CubeDescTest#testBadInit7", + "org.apache.kylin.cube.CubeDescTest#testBadInit3", + "org.apache.kylin.cube.CubeDescTest#testBadInit11", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts2", + "org.apache.kylin.cube.CubeManagerCacheTest#testReloadCache", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooManyCombination", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup2", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan", + "org.apache.kylin.cube.CubeDescTest#testInitPartialCube", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDimensionRangeCheck", + "org.apache.kylin.cube.CubeDescTest#testBadInit9", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration7", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts5", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeDescTest#testBadInit1", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts4", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testTooLargeCube", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid", + "org.apache.kylin.cube.CubeDescTest#testCombinationIntOverflow", + "org.apache.kylin.cube.CubeDescTest#testTooManyRowkeys", + "org.apache.kylin.cube.CubeDescTest#testBadInit15", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration2", + "org.apache.kylin.cube.model.validation.rule.FunctionRuleTest#testGoodDesc", + "org.apache.kylin.cube.CubeDescTest#testGetCubeDesc", + "org.apache.kylin.cube.CubeDescTest#testBadInit5", + "org.apache.kylin.cube.CubeDescTest#testBadInit2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testLargeCube", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.cuboid.CuboidTest#testIsValid2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration5", + "org.apache.kylin.cube.project.ProjectManagerTest#testNewProject", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration4", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration1", + "org.apache.kylin.cube.common.SegmentPrunerTest#testDynamicFilter", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testGetSpanningCuboid2", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodDesc", + "org.apache.kylin.cube.project.ProjectManagerTest#testProjectsLoadAfterProjectChange", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.cuboid.CuboidTest#testFindCuboidByIdWithSingleAggrGroup1", + "org.apache.kylin.cube.project.ProjectManagerTest#testExistingProject", + "org.apache.kylin.cube.CubeDescTest#testGoodInit", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts1", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeDescTest#testBadInit10", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeDescTest#testBadInit6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment", + "org.apache.kylin.cube.CubeDescTest#testGetCopyOf", + "org.apache.kylin.cube.CubeDescTest#testBadInit14", + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration6", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidCounts6", + "org.apache.kylin.cube.CubeDescTest#testBadInit4", + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerCacheTest#testCachedAndSharedFlag", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.AggregationGroupRuleTest#testGoodBecomeBadDesc", + "org.apache.kylin.cube.cuboid.CuboidSchedulerTest#testCuboidGeneration3", + "org.apache.kylin.cube.CubeManagerTest#testCreateAndDrop", + "org.apache.kylin.cube.CubeDescTest#testSerializeMap" + ], + "kylin.storage.hbase.table-name-prefix": [ + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan" + ], + "kylin.storage.hbase.namespace": [ + "org.apache.kylin.cube.CubeManagerTest#testBuildCubeWithPartitionStartDate", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeManagerTest#testGetCubeNameWithNamespace", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge", + "org.apache.kylin.cube.CubeManagerConcurrencyTest#test", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned2", + "org.apache.kylin.cube.CubeSegmentsTest#testAllowGap", + "org.apache.kylin.cube.CubeSegmentsTest#testAppendNonPartitioned", + "org.apache.kylin.cube.CubeSegmentsTest#testPartitioned", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan" + ], + "kylin.storage.hbase.owner-tag": [ + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject1", + "org.apache.kylin.cube.ProjectSpecificConfigTest#testProject2" + ], + "kylin.storage.hbase.compression-codec": [ + "org.apache.kylin.cube.CubeSpecificConfigTest#test2", + "org.apache.kylin.cube.CubeSpecificConfigTest#test" + ], + "kylin.job.max-concurrent-jobs": [ + "org.apache.kylin.cube.CubeSpecificConfigTest#testPropertiesHotLoad" + ], + "kylin.cube.is-automerge-enabled": [ + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithGap", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithVolatileRange", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeNormal", + "org.apache.kylin.cube.CubeManagerTest#testAutoMergeWithMaxSegmentMergeSpan" + ], + "kylin.job.cube-auto-ready-enabled": [ + "org.apache.kylin.cube.CubeManagerTest#testConcurrentBuildAndMerge", + "org.apache.kylin.cube.CubeManagerTest#testConcurrentMergeAndMerge" + ], + "kylin.query.skip-empty-segments": [ + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSegWithOrFilter", + "org.apache.kylin.cube.common.SegmentPrunerTest#testPruneSegWithFilterIN", + "org.apache.kylin.cube.common.SegmentPrunerTest#testLegacyCubeSeg", + "org.apache.kylin.cube.common.SegmentPrunerTest#testEmptySegment" + ] +} \ No newline at end of file diff --git a/data/ctest_mapping/opensource-kylin-storage.json b/data/ctest_mapping/opensource-kylin-storage.json new file mode 100644 index 00000000..a4c887f1 --- /dev/null +++ b/data/ctest_mapping/opensource-kylin-storage.json @@ -0,0 +1,42 @@ +{ + "kylin.metadata.url": [ + "org.apache.kylin.storage.StorageFactoryTest#testSingleThread", + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics", + "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testBasics", + "org.apache.kylin.storage.StorageFactoryTest#testMultipleThread", + "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testCap", + "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testAllNulls", + "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testSomeNull" + ], + "kylin.source.hive.default-varchar-precision": [ + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics", + "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testBasics", + "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testCap", + "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testAllNulls", + "org.apache.kylin.storage.translate.FuzzyValueCombinationTest#testSomeNull" + ], + "kylin.metadata.check-copy-on-write": [ + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics" + ], + "kylin.resourcestore.reconnect-base-ms": [ + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics" + ], + "kylin.metadata.sync-error-handler": [ + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics" + ], + "kylin.cube.rowkey.max-size": [ + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics" + ], + "kylin.source.hive.default-decimal-precision": [ + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics" + ], + "kylin.source.hive.default-decimal-scale": [ + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics" + ], + "kylin.cube.aggrgroup.is-mandatory-only-valid": [ + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics" + ], + "kylin.cube.aggrgroup.max-combination": [ + "org.apache.kylin.storage.hybrid.HybridManagerTest#testBasics" + ] +} \ No newline at end of file diff --git a/data/ctest_mapping/opensource-kylin-tool.json b/data/ctest_mapping/opensource-kylin-tool.json new file mode 100644 index 00000000..ae07f007 --- /dev/null +++ b/data/ctest_mapping/opensource-kylin-tool.json @@ -0,0 +1,113 @@ +{ + "kylin.metadata.url": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.ClientEnvExtractorTest#testNormal", + "org.apache.kylin.tool.ClientEnvExtractorTest#testTimeout", + "org.apache.kylin.tool.KylinConfigCLITest#testGetPrefix", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.KylinConfigCLITest#testGetProperty", + "org.apache.kylin.tool.ClientEnvExtractorTest#testError", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testReadSinkToolsJson", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testWriteSinkToolsJson" + ], + "kylin.job.use-remote-cli": [ + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.ClientEnvExtractorTest#testNormal", + "org.apache.kylin.tool.ClientEnvExtractorTest#testError", + "org.apache.kylin.tool.ClientEnvExtractorTest#testTimeout" + ], + "kylin.resourcestore.reconnect-base-ms": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.metadata.check-copy-on-write": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.source.hive.default-varchar-precision": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.source.hive.default-decimal-precision": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.source.hive.default-decimal-scale": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.metadata.sync-error-handler": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.cube.rowkey.max-size": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.cube.aggrgroup.is-mandatory-only-valid": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.cube.aggrgroup.max-combination": [ + "org.apache.kylin.tool.HybridCubeCLITest#test3Delete", + "org.apache.kylin.tool.HybridCubeCLITest#test1Create", + "org.apache.kylin.tool.CubeMetaExtractorTest#testExtractorByPrj", + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#test2Update", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.storage.hbase.table-name-prefix": [ + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.storage.hbase.namespace": [ + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentNotOverlap", + "org.apache.kylin.tool.HybridCubeCLITest#testSegmentOverlap" + ], + "kylin.env": [ + "org.apache.kylin.tool.metrics.systemcube.SCCreatorTest#testExecute" + ] +} \ No newline at end of file