Release Notes
To download latest release, please visit: http://kylin.apache.org/download/, there are source code package, binary package and installation guide avaliable.
Any problem or issue, please report to Apache Kylin JIRA project: https://issues.apache.org/jira/browse/KYLIN
or send to Apache Kylin mailing list:
- User relative: user@kylin.apache.org
- Development relative: dev@kylin.apache.org
v4.0.1 - 2022-01-05
New Feature
- [KYLIN-5117] - Support percentile function after aggregate sub query
Bug Fix
- [KYLIN-5067] - CubeBuildJob build unnecessary snapshot
- [KYLIN-5071] - kylin.engine.build-base-cuboid-enabled=false and kylin.cube.cubeplanner.enabled=true are conflict on build cube step, and will throw NPE.
- [KYLIN-5083] - Docker for kylin4 need to check hadoop service before start kylin
- [KYLIN-5086] - When query pushdown, only measure result is empty
- [KYLIN-5112] - Use 'return' instead of 'exit' in script prepare_hadoop_dependency.sh
- [KYLIN-5131] - java.lang.UnsupportedOperationException: API getTableSnapshots is not supported in Kylin 4.0
Improvement
- [KYLIN-4864] - Support building and testing Kylin on ARM64 architecture platform
- [KYLIN-5069] - Remove find-hive-dependency.sh in Kylin 4
- [KYLIN-5076] - Missing tracking URL in spark standalone mode in kylin4
- [KYLIN-5082] - Exactly aggregation for percentile function
- [KYLIN-5084] - Kylin4.0.0 is incompatible with HDP-3.1.5's Hive-3.1.0
- [KYLIN-5090] - The error message was not printed in class JobWoker
- [KYLIN-5111] - Record the time spent for each stage of query in kylin4's log
v3.1.3 - 2022-01-05
New Feature
- [KYLIN-4947] - Implement spark engine for cube optimization jobs
- [KYLIN-4948] - Provide an API to allow users to adjust cuboids manually
- [KYLIN-4982] - Add special spark-sql conf in create intermediate flat table
Bug Fix
- [KYLIN-3996] - postgresql can not to be used to construct the flat hive table in NO.1 step in building cube via datasourcedefaultSdk
- [KYLIN-4964] - Receiver consumer thread should be stoped while encounting unrecoverable error
- [KYLIN-4970] - Fix spark.executor.extraJavaOptions args
- [KYLIN-4974] - Kylin does not handle fucntion CURRENT_TIME().
- [KYLIN-4978] - NPE: submit refresh request using restful api when there is no segments
- [KYLIN-4983] - The stream cube will be paused when user append a batch segment first
- [KYLIN-4992] - Source row count statistics calculated in a wrong way in MergeDictionaryMapper
- [KYLIN-4995] - Query exception when the query statement contains a single left parenthesis
- [KYLIN-5003] - Fail to package Kylin due to legacy front end dependencies
- [KYLIN-5007] - queries with limit clause may fail when string dimension is encoded in integer type
- [KYLIN-5035] - Fix Merge Cuboid Statistics EOFException
- [KYLIN-5036] - The hive dependency of directory type is filtered out by mistake
- [KYLIN-5054] - Kylin_System project and cubes create time is wrong (1970).
- [KYLIN-5097] - modify hive dict table format from textfile to orc
Improvement
- [KYLIN-4554] - Validate "filter condition" on model saving
- [KYLIN-4864] - Support building and testing Kylin on ARM64 architecture platform
- [KYLIN-4944] - Upgrade CentOS version, Hadoop version and Spark version for Kylin Docker image
- [KYLIN-4972] - Don't allow segment merge when use dict.global.SegmentAppendTrieDictBuilder to build bitmap measure
- [KYLIN-5016] - Avoid potential NPE issue in RDBMS Pushdown case
Task
- [KYLIN-4971] - Add new measure bitmap_map for count distinct measure in UI
- [KYLIN-5053] - Update the website to link to TravisCI and Github Actions instead of Jenkins
v3.1.2 - 2021-04-26
New Feature
- [KYLIN-4794] - Make it possible to force hit a cube set for sqls with cube join
- [KYLIN-4938] - Remove segment by UUID
- [KYLIN-4939] - Transform lookup table snapshot from segment level to cube level
- [KYLIN-4940] - Implement the step of "Extract Dictionary from Global Dictionary" for spark cubing engine
Improvement
- [KYLIN-4613] - add buildCubeCLi as hadoop main class and jobRestClient
- [KYLIN-4636] - Make /api/admin/public_config callable for profile saml
- [KYLIN-4658] - Union all issue with regarding to windows function & aggregation on
- [KYLIN-4667] - Automatically set kylin.query.cache-signature-enabled to be true when memcached is enabled
- [KYLIN-4702] - Missing cube-level lookup table snapshot when doing cube migration
- [KYLIN-4711] - Change default value to 3 for kylin.metadata.hbase-client-retries-number
- [KYLIN-4827] - SparkMergingDictionary parallelize not work
- [KYLIN-4833] - use distcp to control the speed of writting hfile data to hbase cluster
- [KYLIN-4836] - fix CubeMigrationCLI bug
- [KYLIN-4837] - optimize CubeMigrationCLI
- [KYLIN-4838] - fix KYLIN-4679 bug
- [KYLIN-4854] - the official website document about system cube have some errors
- [KYLIN-4862] - Build Cube use two job engine, cause there is no valid state transfer from:ERROR to:SUCCEED
- [KYLIN-4863] - dependency cache script files not fully used
- [KYLIN-4920] - stream lambda: hive table can be in database other than default
- [KYLIN-4929] - Skip metrics update for simple queries to avoid NPE warnings
- [KYLIN-4933] - Support set cache strength for dict cache
- [KYLIN-4955] - fix typo in KYLIN UI when not set dictionary for count_distinct measure
Bug Fix
- [KYLIN-4640] - StepInfo saved wrong key about flink or spark
- [KYLIN-4771] - Query streaming cube - Thread pool of MultiThreadsResultCollector be blocked.
- [KYLIN-4787] - The script sample.sh cannot automatically switch to the hive database set by the user to create sample hive tables
- [KYLIN-4810] - TrieDictionary is not correctly build
- [KYLIN-4819] - build cube failed when
kylin.metadata.hbase-client-retries-numbergreat than 1 - [KYLIN-4826] - The value of config kylin.source.hive.warehouse-dir can not be found
- [KYLIN-4841] - Spark RDD cache is invalid when building with spark engine
- [KYLIN-4847] - Cuboid to HFile step failed on multiple job server env because of trying to read the metric jar file from the inactive job server's location.
- [KYLIN-4855] - kylin metrics prefix bug in system-cube.sh
- [KYLIN-4879] - The function of sql to remove comments is not perfect. In some cases, the sql query conditions used will be modified
- [KYLIN-4882] - config["kylin.engine.spark-fact-distinct"] overwrite in the Cube-level is invalid
- [KYLIN-4896] - cube metadata miss
- [KYLIN-4900] - The result of derived time columns are error, when timezone is GMT-1 or GMT-N
- [KYLIN-4901] - Query result use diff timezone in real-time stream
- [KYLIN-4921] - stream config lost when create table with same table_name in diff project.
- [KYLIN-4930] - unexpected empty search result in group/user management page
- [KYLIN-4962] - Fix NPE in ShrunkDict step
- [KYLIN-4979] - Fix flink shaded jar version error in download-flink.sh
v4.0.0-beta - 2021-02-07
Tag: kylin-4.0.0-beta This is a major release after 4.0.0-alpha, with 25 new features/improvements and 14 bug fixes.
New Feature
- [KYLIN-4842] - Supports grouping sets function for Kylin 4
- [KYLIN-4843] - Support INTERSECT_COUNT/INTERSECT_VALUE function for Kylin 4
Improvement
- [KYLIN-4712] - Optimize CubeMetaIngester.java CLI
- [KYLIN-4754] - The Cleanup tool cannot clean the the parquet file of the deleted cube and project
- [KYLIN-4760] - Optimize TopN measure
- [KYLIN-4763] - Rename ISourceAware.ID_SPARK to ISourceAware.ID_CSV
- [KYLIN-4766] - After the job is discarded, the temporary file and segment file are not deleted
- [KYLIN-4782] - Verify if the query hit the true cuboid in IT
- [KYLIN-4790] - Automaticly copy required jars to SPARK_HOME/jars for HDI3.6
- [KYLIN-4792] - Verify several attribute values of segment in the build/merge test
- [KYLIN-4800] - Add canary tool for sparder-context
- [KYLIN-4808] - Auto copy hive-site.xml to hadoop_conf_dir in kylin4
- [KYLIN-4811] - Support cube level configuration for BuildingJob
- [KYLIN-4813] - Refine spark logger for Kylin 4 build engine
- [KYLIN-4814] - Support Kylin4 delopyment on EMR 5.X
- [KYLIN-4815] - Support Kylin4 delopyment on EMR 6.x
- [KYLIN-4817] - Refine Cube Migration Tool for Kylin4
- [KYLIN-4825] - Add spark job tracking url in step details page
- [KYLIN-4828] - Add more sql test cases into NBuildAndQueryTest
- [KYLIN-4829] - Support to use thread-level SparkSession to execute query
- [KYLIN-4844] - Add lookup table duplicate key check when building job
- [KYLIN-4850] - Cube's override kylin_properties were ignored in building jobs
- [KYLIN-4857] - Refactor system cube for kylin4
- [KYLIN-4875] - Remove executor configurations when execute resource detect step (local mode)
- [KYLIN-4877] - Use all dimension columns as sort columns when saving cuboid data
Bug Fix
- [KYLIN-4737] - The precision in the returned result is different from the one by Spark SQL
- [KYLIN-4738] - The order in the returned result is wrong when use window function to query in kylin
- [KYLIN-4751] - Throws NPE when run test case TestTopNUDAF
- [KYLIN-4761] - Update some missing values of new segment when merge segments
- [KYLIN-4764] - Throws NoClassDefFoundError when run query test cases
- [KYLIN-4791] - Throws exception 'UnsupportedOperationException: empty.reduceLeft' when there are cast expressions in the filters of FilePruner
- [KYLIN-4793] - In some Hadoop versions, kylin calcite reported error because there is no guava14
- [KYLIN-4820] - Can not auto set spark resources configurations when building cube
- [KYLIN-4822] - The metrics 'Total spark scan time' of query log is negative in some cases
- [KYLIN-4824] - The metric 'Total scan bytes' of 'Query Log' is always 0 when querying
- [KYLIN-4853] - QueryPreparedStatementCache invalid in Spark Query Engine
- [KYLIN-4858] - Support Kylin4 deployment on CDH 6.X
- [KYLIN-4872] - Fix NPE when there are more than one segment if cube planner is open
- [KYLIN-4874] - Fix CubeMigrationCLI bug for kylin4
Sub-task
- [KYLIN-4818] - Calculate cuboid statistics in Kylin 4
v3.1.1 - 2020-10-18
Tag: kylin-3.1.1 This is a bug-fix release after 3.1.0, with 37 improvements and 21 bug fixes.
Sub-task
- [KYLIN-4557] - Refactor JobService to improve code readability
- [KYLIN-4558] - get all chained executable jobs through job API
- [KYLIN-4559] - show cardinality and lookup snapshot job on job page
- [KYLIN-4560] - support to re-run/delete cardinality and lookup snapshot job
- [KYLIN-4561] - overall job number statistics in monitor page is incorrect after change the job status
Bug Fix
- [KYLIN-4515] - could not send mail on ssl port
- [KYLIN-4578] - Throws TableNotFoundException in step 'Convert Cuboid Data to HFile' when the value of property * 'kylin.storage.hbase.table-name-prefix' or 'kylin.storage.hbase.namespace' is lowercase.
- [KYLIN-4603] - listjob return NPE
- [KYLIN-4610] - update kylin.engine.livy.backtick.quote default value
- [KYLIN-4617] - Check whether project/jobid exists before download diagnosis package
- [KYLIN-4628] - Fail to use custom measure type when specifying cube to query
- [KYLIN-4634] - Fail to specify cube in model of low priority to query
- [KYLIN-4656] - Guava classpath conflict caused by kylin-jdbc 3.1.0 jar
- [KYLIN-4657] - dead-loop in org.apache.kylin.engine.mr.common.MapReduceExecutable.doWork
- [KYLIN-4672] - Using Real-time Lambda to refresh the data lead to result not incorrect
- [KYLIN-4677] - StorageCleanupJob throw NPE
- [KYLIN-4683] - Fail to consume kafka when partition number get larger
- [KYLIN-4684] - Streaming Table V2创建 - TSPattern下拉选项前端bug修复
- [KYLIN-4688] - Too many tmp files in HDFS tmp directory
- [KYLIN-4697] - User info update logic is not correct
- [KYLIN-4700] - Wrong engine type for realtime streaming
- [KYLIN-4731] - Kylin query failing with 'null while executing SQL'
- [KYLIN-4753] - Merging job stop working after Kylin upgrade
- [KYLIN-4755] - Error while compiling generated Java code when using Kylin UDF in "case when"
- [KYLIN-4756] - user/group page has duplicate information between adjacent page numbers
- [KYLIN-4757] - Impossible precision for decimal datatype in kylin if the source column is numeric in postgres
Improvement
- [KYLIN-4527] - Beautify the drop-down list of the cube on query page
- [KYLIN-4549] - Show column cardinality in rowkeys area of advanced settings
- [KYLIN-4550] - Provide advanced refresh interface inside the refresh panel
- [KYLIN-4551] - Provide interfaces to transfer cube/model/project ownership
- [KYLIN-4576] - Add hint about password length
- [KYLIN-4581] - Add spark and flink engine test case for release test
- [KYLIN-4585] - Add cube count column for project table
- [KYLIN-4606] - throw olap exception when olap query and pushdown both error
- [KYLIN-4608] - add deletecubefast api for delete 300 cubes fast
- [KYLIN-4609] - setenv.sh add zgc config for big memory
- [KYLIN-4611] - modify PATTERN_SPARK_APP_URL to Tracking URL,ignore case
- [KYLIN-4612] - Support job status write to kafka
- [KYLIN-4616] - The value of config kylin.source.hive.databasedir can be self detected
- [KYLIN-4618] - Upgrade kylin docker image for kylin 3.1.0
- [KYLIN-4619] - Make shrunken dict able to coexist with mr-hive global dict
- [KYLIN-4626] - add set kylin home sh
- [KYLIN-4635] - Set Kylin default log level to info
- [KYLIN-4653] - Make the capacity for the LinkedBlockingQueue of BlockingReservoir configurable
- [KYLIN-4665] - set flink job name shown in resource manager
- [KYLIN-4678] - continue execute job when StorageCleanupJob sub step has error
- [KYLIN-4679] - StorageCleanupJob clean hive table support hive table prefix
- [KYLIN-4685] - return user friendly msg when stackoverflowerror
- [KYLIN-4686] - clean metadata support to delete all jobs
- [KYLIN-4687] - add unify clean sh to excute some clean shells
- [KYLIN-4709] - Upgrade spring to 4.3.26
- [KYLIN-4712] - Optimize CubeMetaIngester.java CLI
- [KYLIN-4714] - Failed to revoke role access of the project
- [KYLIN-4716] - Optimize the project page
- [KYLIN-4752] - Refine server mode checking
- [KYLIN-4770] - Move Kylin service on k8s from background to foreground
Task
- [KYLIN-4526] - Enhance get the hive table rows
- [KYLIN-4648] - Upgrade Spark to latest 2.3 or 2.4 version