This is an automated email from the ASF dual-hosted git repository.
liyang pushed a change to branch kylin5
in repository https://gitbox.apache.org/repos/asf/kylin.git
from 1d1ecbec63 KYLIN-5823,fix text recognition bug
new d6285db6ab KYLIN-5792 Support ldap memberid mode
new 07354967d4 KYLIN-5793 Fix Chinese gibberish when Spring ${} attribute
injection
new 91383f54d5 KYLIN-5795 Remove the check of `hadoop.tmp.dir`
new e824503eca KYLIN-5796 Support databinder auto grow collections limit
new 82ee25fdf1 KYLIN-5797 Remove nacos jar
new 4d3418c237 KYLIN-5798 Add user-table access cache for table-loading
new deb209f531 KYLIN-5799 Fix round, bround, lpad, rpad function
new dc344ce2ff KYLIN-5800 & KYLIN-5812 Support scalar subquery join
aggregate pushdown
new e33ef57cce KYLIN-5791 & KYLIN-5801 Fix computation of timestampdff &
add_month
new 9b8050e00a KYLIN-5802 Models with the same name exist when restore
metadata
new bfff6d002c KYLIN-5803 Add file segments and smart cache
new 085d707216 KYLIN-5805 Refactor project lock
new a212350a51 KYLIN-5807 Fix query execute as user without data query acl
new c4aad6e78b KYLIN-5808 Optimize performance when saving model/adding CC
new 630a3aa7ce KYLIN-5809 Add TableIndex suggestion control in open api
new dcfa26067f KYLIN-5810 Add the spark.session.isDefined check in
queryExec
new 5092e7a239 KYLIN-5811 Enhancement of SCD2
new ebd2f3d670 KYLIN-5814 Support lettuce sentinel mode
new 768a5ececc KYLIN-5815 Failed to add primaryKey of table when upgrading
concurrently
new 2159699d8e KYLIN-5816 Add zk lock for dict v3
new 00352e8c2d KYLIN-5817 Query scanRows and bytes are incorrect
new c61dc41899 KYLIN-5828 Concurrently dict v2 jobs lead to abnormal
encoding result
new f9255a515d KYLIN-5829 Add a tool for generating sql from dumped
metadata
new 191d08c272 KYLIN-5830 Push columns of sortRel to subOlapContexts
new d7f37675e2 KYLIN-5832 Support queryDetect api
new 412eff5c73 KYLIN-5833 Use TableIndex answer select * only works for
query
new e49c2f15a6 KYLIN-5836 Fix mapr env building error
new 148d8f61aa KYLIN-5837 Support only reusing user defined computedColumns
new eacb62b8aa KYLIN-5838 Replace join expression with the name of
computedColumn
new be22ca0de7 KYLIN-5839 Block agg-push-down for non-equal-join
new 1c05436a01 KYLIN-5840 Fix vulnerability, Upgrade
org.xerial.snappy:snappy-java to version 1.1.10.4
new 7d24ce642c KYLIN-5841 Fix vulnerability, Upgrade org.apache.avro:avro
to version 1.11.3
new e804eee81e KYLIN-5844 & KYLIN-5843 Column ACL works for PushDown
new 0bbb74ee79 KYLIN-5845 Avoid model initialization for multi-thread
new 3f9b9c83be KYLIN-5846 upgrade spark version to 3.2.0-kylin-4.6.16.0
The 35 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
build/bin/create-table.sh | 32 +
build/conf/kylin-tools-diag-log4j.xml | 6 +
build/conf/kylin-tools-log4j.xml | 6 +
.../kap/secondstorage/metadata/Manager.java | 23 +-
.../kap/secondstorage/metadata/NodeGroup.java | 5 +
.../kap/secondstorage/metadata/TablePlan.java | 5 +
pom.xml | 48 +-
.../kylin/rest/controller/NBasicController.java | 14 +
.../kylin/rest/controller/NSystemController.java | 33 +
src/common-service/pom.xml | 4 +
.../apache/kylin/rest/KylinPrepareEnvListener.java | 3 +-
.../kylin/rest/aspect/InsensitiveNameAspect.java | 3 +
.../kylin/rest/cache/AbstractKylinCache.java | 78 ++
.../apache/kylin/rest/cache/CacheConstant.java} | 12 +-
.../org/apache/kylin/rest/cache/RedisCache.java | 91 +--
.../org/apache/kylin/rest/cache/RedisCacheV2.java | 224 ++++++
.../apache/kylin/rest/config/AppInitializer.java | 21 +
.../config/initialize/EpochChangedListener.java | 16 +-
.../config/initialize/ModelBrokenListener.java | 12 +-
.../rest/request/SyncFileSegmentsRequest.java} | 23 +-
.../rest/response/SyncFileSegmentsResponse.java} | 29 +-
.../apache/kylin/rest/service/AccessService.java | 14 +-
.../kylin/rest/service/KylinUserService.java | 8 +-
.../apache/kylin/rest/service/ProjectService.java | 5 +-
.../apache/kylin/rest/service/SystemService.java | 44 +-
.../service/task/QueryHistoryTaskScheduler.java | 21 +-
.../task/RecommendationTopNUpdateScheduler.java | 16 +-
.../kylin/rest/cache/CacheConstantTest.java} | 13 +-
.../apache/kylin/rest/cache/RedisCacheTest.java} | 20 +-
.../apache/kylin/rest/cache/RedisCacheV2Test.java | 195 +++++
.../task/QueryHistoryTaskSchedulerTest.java | 17 +-
.../rest/util/InitResourceGroupUtilsTest.java} | 24 +-
src/core-common/pom.xml | 9 +
.../java/org/apache/kylin/common/KapConfig.java | 28 +-
.../org/apache/kylin/common/KylinConfigBase.java | 123 +++-
.../java/org/apache/kylin/common/QueryContext.java | 23 +-
.../apache/kylin/common/debug/BackdoorToggles.java | 5 -
.../kylin/common/exception/QueryErrorCode.java | 6 -
.../kylin/common/exception/ServerErrorCode.java | 2 +
.../common/exception/code/ErrorCodeServer.java | 9 +
.../common/exception/code/ErrorCodeSystem.java | 18 +-
.../kylin/common/exception/code/ErrorCodeTool.java | 3 +-
.../org/apache/kylin/common/msg/CnMessage.java | 10 +
.../java/org/apache/kylin/common/msg/Message.java | 9 +
.../common/persistence/InMemResourceStore.java | 7 +-
.../kylin/common/persistence/ResourceStore.java | 25 +-
.../common/persistence/RootPersistentEntity.java | 16 +-
.../persistence/ThreadViewResourceStore.java | 13 +-
.../persistence/lock/AbstractMemoryLock.java | 62 ++
.../persistence/lock/DeadLockException.java} | 9 +-
.../common/persistence/lock/DeadLockHandler.java} | 44 +-
.../common/persistence/lock/DeadLockInfo.java | 72 ++
.../common/persistence/lock/IntentionLock.java} | 8 +-
.../persistence/lock/IntentionReadWriteLock.java | 257 +++++++
.../persistence/lock/IntentionShareLock.java | 59 ++
.../persistence/lock/LockInterruptException.java} | 9 +-
.../common/persistence/lock/LockManager.java} | 27 +-
.../persistence/lock/LockManagerInstance.java} | 20 +-
.../persistence/lock/LockTimeoutException.java} | 9 +-
.../kylin/common/persistence/lock/MemoryLock.java} | 21 +-
.../common/persistence/lock/MemoryLockGraph.java | 171 +++++
.../common/persistence/lock/MemoryLockManager.java | 97 +++
.../common/persistence/lock/MemoryLockUtils.java | 206 ++++++
.../kylin/common/persistence/lock/ModuleLock.java} | 42 +-
.../common/persistence/lock/ModuleLockEnum.java | 87 +++
.../lock/OptimisticLockRetryException.java} | 7 +-
.../kylin/common/persistence/lock/PathLock.java} | 35 +-
.../common/persistence/lock/ProjectLock.java} | 36 +-
.../persistence/lock/ResourcePathParser.java | 121 ++++
.../kylin/common/persistence/lock/TempLock.java} | 7 +-
.../lock/TransactionDeadLockHandler.java | 168 +++++
.../common/persistence/lock/TransactionLock.java} | 11 +-
.../persistence/lock/TransactionLockManager.java} | 25 +-
.../persistence/lock/TransactionProjectLock.java} | 13 +-
.../persistence/lock/TransactionTempLock.java} | 12 +-
.../lock/rule/LockEliminationRule.java} | 24 +-
.../lock/rule/LockEliminationRuleExec.java | 57 ++
.../common/persistence/lock/rule/LockInfo.java | 49 ++
.../lock/rule/ModuleEliminationRule.java | 55 ++
.../persistence/lock/rule/PathEliminationRule.java | 70 ++
.../lock/rule/ProjectEliminationRule.java} | 25 +-
.../persistence/metadata/JdbcEpochStore.java | 20 +-
.../persistence/metadata/JdbcMetadataStore.java | 3 +
.../common/persistence/metadata/MetadataStore.java | 1 +
.../common/persistence/metadata/jdbc/JdbcUtil.java | 10 +
.../transaction/MessageSynchronization.java | 7 +-
.../persistence/transaction/TransactionLock.java | 96 ---
.../transaction/TransactionManagerInstance.java} | 33 +-
.../TransactionOptimisticLockManager.java} | 15 +-
.../TransactionPessimisticLockManager.java | 81 +++
.../common/persistence/transaction/UnitOfWork.java | 163 +++--
.../persistence/transaction/UnitOfWorkContext.java | 28 +-
.../persistence/transaction/UnitOfWorkParams.java | 24 +
.../org/apache/kylin/common/util/AddressUtil.java | 4 +
.../org/apache/kylin/common/util/ClassUtil.java | 25 +-
.../org/apache/kylin/common/util/HadoopUtil.java | 9 +-
.../org/apache/kylin/common/util/JsonUtil.java | 8 +
.../org/apache/kylin/common/util/ThreadUtil.java | 3 +
.../resources/kylin_error_msg_conf_cn.properties | 13 +
.../resources/kylin_error_msg_conf_en.properties | 13 +
.../main/resources/kylin_errorcode_conf.properties | 13 +
.../resources/kylin_errorcode_conf_en.properties | 2 +
.../resources/kylin_errorcode_conf_zh.properties | 2 +
.../org/apache/kylin/common/KapConfigTest.java | 15 +-
.../apache/kylin/common/KylinConfigBaseTest.java | 30 +
.../persistence/JdbcAuditLogRecoveryTest.java | 24 +-
.../common/persistence/JdbcMetadataStoreTest.java | 45 +-
.../kylin/common/persistence/UnitOfWorkTest.java | 113 ++-
.../common/persistence/lock/CloseWaitTest.java | 167 +++++
.../persistence/lock/MemoryLockGraphTest.java | 218 ++++++
.../lock/rule/LockEliminationRuleExecTest.java | 159 ++++
.../metadata/JdbcAuditLogStoreTest.java | 8 +-
.../persistence/metadata/jdbc/JdbcUtilTest.java | 17 +
...ckTest.java => TransactionProjectLockTest.java} | 13 +-
.../apache/kylin/common/util/AddressUtilTest.java | 1 +
.../apache/kylin/common/util/ClassUtilTest.java | 63 ++
.../org/apache/kylin/job/common/SegmentUtil.java | 5 +-
.../org/apache/kylin/job/dao/JobStatistics.java | 10 +-
.../apache/kylin/job/dao/JobStatisticsBasic.java | 12 +-
.../apache/kylin/job/dao/JobStatisticsManager.java | 28 +-
.../org/apache/kylin/job/dao/NExecutableDao.java | 20 +-
.../kylin/job/execution/NExecutableManager.java | 16 +-
.../kylin/metadata/TempStatementManager.java | 10 +-
.../java/org/apache/kylin/metadata/acl/AclTCR.java | 17 +-
.../apache/kylin/metadata/acl/AclTCRManager.java | 21 +-
.../metadata/cachesync/CacheReloadChecker.java | 6 +-
.../kylin/metadata/cachesync/CachedCrudAssist.java | 53 +-
.../kylin/metadata/cube/cuboid/IndexMatcher.java | 7 +-
.../kylin/metadata/cube/model/IndexPlan.java | 10 +-
.../cube/model/NDataLoadingRangeManager.java | 111 +--
.../cube/model/NDataSegDetailsManager.java | 41 +-
.../kylin/metadata/cube/model/NDataSegment.java | 7 +-
.../kylin/metadata/cube/model/NDataflow.java | 5 +
.../metadata/cube/model/NDataflowManager.java | 100 +--
.../metadata/cube/model/NIndexPlanManager.java | 38 +-
.../kylin/metadata/favorite/AbstractAsyncTask.java | 11 +
.../metadata/favorite/AsyncAccelerationTask.java | 3 +-
.../kylin/metadata/favorite/AsyncTaskManager.java | 30 +-
.../kylin/metadata/favorite/FavoriteRule.java | 17 +-
.../metadata/favorite/FavoriteRuleManager.java | 22 +-
.../metadata/favorite/QueryHistoryIdOffset.java | 11 +
.../favorite/QueryHistoryIdOffsetManager.java | 25 +-
.../apache/kylin/metadata/jar/JarInfoManager.java | 34 +-
.../kylin/metadata/model/ColExcludedChecker.java | 13 +-
.../apache/kylin/metadata/model/ColumnDesc.java | 5 +-
.../kylin/metadata/model/ComputedColumnDesc.java | 4 +
.../FilePartitionDesc.java} | 29 +-
.../apache/kylin/metadata/model/FusionModel.java | 10 +-
.../kylin/metadata/model/FusionModelManager.java | 11 +-
.../org/apache/kylin/metadata/model/JoinDesc.java | 30 +-
.../apache/kylin/metadata/model/NDataModel.java | 35 +-
.../kylin/metadata/model/NDataModelManager.java | 27 +-
.../metadata/model/NTableMetadataManager.java | 115 ++-
.../kylin/metadata/model/NonEquiJoinCondition.java | 301 +++++++-
.../apache/kylin/metadata/model/PartitionDesc.java | 36 +-
.../apache/kylin/metadata/model/SegmentRange.java | 86 +--
.../org/apache/kylin/metadata/model/Segments.java | 4 +
.../org/apache/kylin/metadata/model/TableDesc.java | 10 +-
.../apache/kylin/metadata/model/TableExtDesc.java | 24 +-
.../metadata/model/{tool => }/TruthTable.java | 184 +++--
.../metadata/model/schema/ImportModelContext.java | 2 +-
.../model/tool/JoinDescNonEquiCompBean.java | 60 --
.../model/tool/NonEquiJoinConditionComparator.java | 166 -----
.../model/tool/NonEquiJoinConditionVisitor.java | 59 --
.../metadata/model/tool/TypedLiteralConverter.java | 76 --
.../kylin/metadata/model/util/JoinDescUtil.java | 7 +-
.../metadata/model/util/scd2/SCD2CondChecker.java | 88 ++-
.../util/scd2/SCD2NonEquiCondSimplification.java | 201 ------
.../metadata/model/util/scd2/SCD2SqlConverter.java | 4 +-
.../metadata/model/util/scd2/Scd2Simplifier.java | 174 +++++
.../model/util/scd2/SimplifiedJoinDesc.java | 23 +-
.../kylin/metadata/project/NProjectManager.java | 22 +-
.../metadata/query/JdbcQueryHistoryStore.java | 8 +
.../metadata/query/NativeQueryRealization.java | 3 +
.../metadata/query/NoopJdbcQueryHistoryStore.java | 219 ++++++
.../kylin/metadata/query/QueryMetricsContext.java | 3 +-
.../kylin/metadata/query/RDBMSQueryHistoryDAO.java | 6 +-
.../metadata/querymeta/SelectedColumnMeta.java | 1 -
.../resourcegroup/ResourceGroupManager.java | 2 +-
.../metadata/sourceusage/SourceUsageManager.java | 9 +-
.../metadata/streaming/DataParserManager.java | 20 +-
.../metadata/streaming/KafkaConfigManager.java | 17 +-
.../kylin/metadata/streaming/StreamingManager.java | 13 +-
.../metadata/upgrade/GlobalAclVersionManager.java | 10 +-
.../apache/kylin/metadata/user/ManagedUser.java | 7 +
.../kylin/metadata/user/NKylinUserManager.java | 37 +-
.../metadata/usergroup/NUserGroupManager.java | 4 +-
.../apache/kylin/metadata/usergroup/UserGroup.java | 7 +
.../kylin/query/util/QueryInterruptChecker.java | 23 +-
.../org/apache/kylin/rest/security/AclManager.java | 18 +-
.../org/apache/kylin/rest/security/AclRecord.java | 2 +-
.../security/PasswordPlaceholderConfigurer.java | 1 +
.../org/apache/kylin/rest/security/UserAcl.java | 7 +
.../apache/kylin/rest/security/UserAclManager.java | 4 +-
.../apache/kylin/rest/util/AclPermissionUtil.java | 2 +-
.../org/apache/kylin/util/BrokenEntityProxy.java | 10 +-
.../metadata/cachesync/CachedCrudAssistTest.java | 63 ++
.../apache/kylin/metadata/cube/IndexPlanTest.java | 49 +-
.../cube/model/NDataLoadingRangeManagerTest.java | 28 +-
.../cube/model/NDataSegDetailsManagerTest.java | 2 +-
.../metadata/epoch/EnhancedUnitOfWorkTest.java | 8 +-
.../kylin/metadata/model/ModelNonEquiCondMock.java | 8 +-
.../metadata/model/NDataModelManagerTest.java | 50 ++
.../metadata/model/NeqEquiJoinConditionTest.java | 281 ++++++++
.../tool/NonEquiJoinConditionComparatorTest.java | 234 ------
.../metadata/project/NProjectManagerTest.java | 32 +
.../org/apache/kylin/model/NDataModelTest.java | 53 ++
.../rest/controller/v2/SegmentControllerV2.java | 60 +-
.../kylin/rest/response/ExecutableResponse.java | 4 +-
.../kylin/rest/service/ModelBuildService.java | 28 +-
.../sdk/datasource/PushdownRunnerSDKImplTest.java | 10 +-
.../apache/kylin/rest/service/TableExtService.java | 2 +-
.../apache/kylin/rest/service/TableService.java | 127 ++--
.../apache/kylin/rest/service/SparkDDLTest.java | 26 +-
.../rest/service/StreamingTableServiceTest.java | 4 -
.../e78a89dd-847f-4574-8afa-8768b4228b72.json | 1 -
.../e78a89dd-847f-4574-8afa-8768b4228b73.json | 1 -
.../e78a89dd-847f-4574-8afa-8768b4228b74.json | 1 -
.../org/apache/kylin/newten/AutoMergeTest.java | 7 +-
.../routing/DataflowCapabilityCheckerTest.java | 3 +-
.../query/routing/RealizationChooserTest.java | 24 +-
.../kylin/query/rules/AggPushdownRuleTest.java | 4 +-
.../kylin/query/rules/CalciteRuleTestBase.java | 12 +-
.../query/rules/ScalarSubqueryJoinRuleTest.java | 112 +++
.../org/apache/kylin/util/OlapContextTestUtil.java | 19 +-
.../query/rules/ScalarSubqueryJoinRuleTest.xml | 778 ++++++++++++++++++++
.../query/sql_scalar_subquery/query01.sql | 26 +
.../query/sql_scalar_subquery/query02.sql | 30 +
.../query/sql_scalar_subquery/query03.sql | 32 +
.../query/sql_scalar_subquery/query04.sql | 28 +
.../query/sql_scalar_subquery/query05.sql | 37 +
.../query/sql_scalar_subquery/query06.sql | 35 +
.../query/sql_scalar_subquery/query07.sql | 33 +
.../query/sql_scalar_subquery/query08.sql | 36 +
.../query/sql_scalar_subquery/query09.sql | 36 +
.../query/sql_scalar_subquery/query10.sql | 33 +
.../query/sql_scalar_subquery/query11.sql | 32 +
.../query/sql_scalar_subquery/query12.sql | 41 ++
.../query/sql_scalar_subquery/query13.sql | 36 +
.../query/sql_scalar_subquery/query14.sql | 32 +
.../query/sql_scalar_subquery/query15.sql | 27 +
.../query/sql_scalar_subquery/query16.sql | 33 +
.../query/sql_scalar_subquery/query17.sql | 31 +
.../query/sql_scalar_subquery/query18.sql | 65 ++
.../query/sql_scalar_subquery/query19.sql | 26 +
.../org/apache/kylin/event/HAMetadataTest.java | 23 +-
src/metadata-server/pom.xml | 5 +
.../kylin/rest/controller/NTableController.java | 5 +-
.../controller/NProjectControllerKylinTest.java | 17 +-
.../rest/controller/NProjectControllerV2Test.java | 17 +-
.../rest/controller/NUserGroupControllerTest.java | 38 +-
.../controller/NUserGroupControllerV2Test.java | 22 +-
.../rest/controller/OpenAclTCRControllerTest.java | 15 +-
.../controller/open/OpenAclTCRControllerTest.java | 8 +-
.../open/OpenUserGroupControllerTest.java | 14 +-
.../apache/kylin/rest/request/ModelRequest.java | 4 +
.../rest/response/LayoutRecDetailResponse.java | 4 +-
.../kylin/rest/service/ModelSemanticHelper.java | 58 +-
.../apache/kylin/rest/service/ModelService.java | 213 +++---
.../rest/service/params/BasicSegmentParams.java | 3 +-
.../params/IncrementBuildSegmentParams.java | 10 +-
.../rest/util/SCD2SimplificationConvertUtil.java | 30 +-
.../kylin/rest/request/ModelRequestTest.java | 6 +-
.../apache/kylin/rest/service/BaseIndexTest.java | 7 +-
.../kylin/rest/service/IndexPlanServiceTest.java | 13 +-
.../rest/service/ModelServiceBrokenRepairTest.java | 1 +
.../service/ModelServiceSemanticUpdateTest.java | 456 ++++++------
.../kylin/rest/service/ModelServiceTest.java | 34 +-
.../service/ModelTdsServiceColumnNameTest.java | 2 +-
.../kylin/rest/service/ModelTdsServiceTest.java | 13 +-
.../kylin/rest/service/TableReloadServiceTest.java | 8 +-
.../kylin/rest/service/TableServiceTest.java | 6 +-
.../apache/kylin/query/relnode/ContextUtil.java | 24 +-
.../kylin/query/relnode/KapNonEquiJoinRel.java | 30 +-
.../org/apache/kylin/query/relnode/KapSortRel.java | 19 +-
.../apache/kylin/query/relnode/KapTableScan.java | 10 +-
.../apache/kylin/query/relnode/KapValuesRel.java | 21 +-
.../apache/kylin/query/relnode/OLAPContext.java | 19 +-
.../apache/kylin/query/relnode/OLAPValuesRel.java | 13 +-
.../kylin/query/routing/QueryLayoutChooser.java | 7 +-
.../kylin/query/routing/RealizationChooser.java | 4 +-
.../security/HackSelectStarWithColumnACL.java | 259 ++++---
.../kylin/query/util/ComputedColumnRewriter.java | 17 +-
.../kylin/query/util/ConvertToComputedColumn.java | 80 ++-
.../org/apache/kylin/query/util/PushDownUtil.java | 79 +-
.../query/util/RestoreFromComputedColumn.java | 19 +-
.../kylin/rest/controller/NQueryController.java | 109 ++-
.../rest/controller/NQueryControllerTest.java | 27 +
.../rest/controller/NQueryMetaControllerTest.java | 2 +
.../rest/controller/SparkSourceControllerTest.java | 12 +-
src/query-service/pom.xml | 5 +
.../kylin/rest/request/QueryDetectRequest.java} | 17 +-
.../kylin/rest/response/QueryDetectResponse.java | 156 ++++
.../apache/kylin/rest/response/SQLResponse.java | 44 +-
.../apache/kylin/rest/response/SQLResponseV2.java | 19 +
.../kylin/rest/service/QueryCacheManager.java | 113 ++-
.../apache/kylin/rest/service/QueryService.java | 84 ++-
.../kylin/rest/service/QueryCacheManagerTest.java | 191 +++++
.../kylin/rest/service/QueryServiceTest.java | 302 +++++++-
.../rest/util/QueryCacheSignatureUtilTest.java | 16 +-
.../kyligence/kap/query/optrule/KAPValuesRule.java | 11 +-
.../kyligence/kap/query/optrule/KapJoinRule.java | 242 +++++--
.../kap/query/optrule/ScalarSubqueryJoinRule.java | 799 +++++++++++++++++++++
.../apache/kylin/query/blacklist/SQLBlacklist.java | 13 +-
.../kylin/query/blacklist/SQLBlacklistManager.java | 28 +-
.../apache/kylin/query/engine/PlannerFactory.java | 12 +-
.../org/apache/kylin/query/engine/QueryExec.java | 44 +-
.../kylin/query/engine/QueryRoutingEngine.java | 7 +
.../engine/exec/calcite/CalciteQueryPlanExec.java | 3 +
.../engine/exec/sparder/SparderQueryPlanExec.java | 19 +-
.../org/apache/kylin/query/udf/SparkMathUDF.java | 7 +-
.../org/apache/kylin/query/udf/SparkStringUDF.java | 15 +-
.../java/org/apache/kylin/query/util/HepUtils.java | 20 +-
.../kylin/query/util/QueryContextCutter.java | 24 +-
.../kylin/query/engine/QueryRoutingEngineTest.java | 37 +-
.../kylin/query/engine/SelectRealizationTest.java | 6 +-
.../security/HackSelectStarWithColumnACLTest.java | 405 +++++++----
.../apache/kylin/query/util/CCOnRealModelTest.java | 68 +-
.../apache/kylin/query/util/PushDownUtilTest.java | 359 +++++----
src/server/pom.xml | 2 +
.../org/apache/kylin/rest/QueryNodeFilter.java | 4 +
.../rest/health/MetaStoreHealthIndicator.java | 3 +-
.../engine/spark/application/SparkApplication.java | 16 +-
.../kylin/engine/spark/job/MppOnTheFlyImpl.java | 160 +++++
.../kylin/engine/spark/job/NSparkExecutable.java | 28 +-
.../engine/spark/job/NSparkUpdateMetadataStep.java | 6 +-
.../merger/AfterMergeOrRefreshResourceMerger.java | 3 +-
.../spark/source/NSparkMetadataExplorer.java | 25 +-
.../engine/spark/utils/ComputedColumnEvalUtil.java | 20 +-
.../engine/spark/builder/CreateFlatTable.scala | 15 +-
.../engine/spark/builder/DFBuilderHelper.scala | 6 +
.../engine/spark/builder/DFDictionaryBuilder.scala | 33 +-
.../engine/spark/builder/DFTableEncoder.scala | 13 +-
.../spark/builder/DictionaryBuilderHelper.java | 5 +-
.../spark/builder/SnapshotPartitionBuilder.scala | 6 +-
.../kylin/engine/spark/builder/ZKHelper.scala | 42 ++
.../spark/builder/v3dict/DictionaryBuilder.scala | 69 +-
.../kylin/engine/spark/job/FiltersUtil.scala | 2 +-
.../kylin/engine/spark/job/FlatTableHelper.scala | 2 +-
.../kylin/engine/spark/job/SegmentBuildJob.java | 7 +-
.../apache/kylin/engine/spark/job/SegmentJob.java | 2 +-
.../engine/spark/job/stage/build/BuildStage.scala | 2 +-
.../job/stage/build/FlatTableAndDictBase.scala | 77 +-
.../stage/build/MaterializedFactTableView.scala | 32 +-
.../spark/smarter/IndexDependencyParser.scala | 60 +-
.../engine/spark/dict/NGlobalDictionaryV2Test.java | 77 +-
.../kylin/engine/spark/job/JobManagerTest.java | 5 +-
.../engine/spark/job/NSparkMergingJobTest.java | 10 +-
.../spark/source/NSparkMetadataExplorerTest.java | 14 +-
.../kylin/engine/spark/builder/TestDFChooser.scala | 5 +-
.../engine/spark/builder/TestGlobalDictBuild.scala | 58 +-
.../v3dict/GlobalDictionaryUpdateSuite.scala | 6 +-
.../kylin-soft-affinity-cache-hadoop3/pom.xml | 81 +++
.../cache/kylin/KylinCacheFileSystemHadoop3.java | 43 ++
.../kylin-soft-affinity-cache/pom.xml | 26 +
.../kylin/cache/fs/AbstractCacheFileSystem.java | 277 ++++---
.../kylin/cache/fs/AlluxioHdfsFileInputStream.java | 10 +-
.../kylin/cache/fs/CacheFileSystemConstants.java | 32 +-
.../kylin/cache/fs/ManagerOfCacheFileContent.java | 116 +++
.../kylin/cache/fs/ManagerOfCacheFileStatus.java | 156 ++++
.../kylin/cache/kylin/KylinCacheFileSystem.java | 123 +++-
.../cache/kylin/OnlyForTestCacheFileSystem.java | 16 +-
.../softaffinity/SoftAffinityBookKeeping.java | 80 +++
.../cache/softaffinity/SoftAffinityConstants.java | 13 +-
.../softaffinity/SoftAffinityTextInputFormat.java | 115 +++
.../apache/kylin/cache/utils/Hadoop3CompaUtil.java | 164 +++++
.../apache/kylin/cache/utils/ReflectionUtil.java | 5 +-
.../org/apache/kylin/fileseg/FileSegments.java | 612 ++++++++++++++++
.../apache/kylin/fileseg/FileSegmentsDetector.java | 136 ++++
.../hive/serde2/lazy/LazyQuoteAwareSerDe.java | 795 ++++++++++++++++++++
.../kylin/softaffinity/SoftAffinityManager.scala | 38 +-
.../execution/datasources/CacheFilePartition.scala | 11 +-
.../datasources/CachePartitionedFile.scala | 9 +-
.../kylin/cache/fs/KylinCacheFileSystemTest.java | 135 ----
.../cache/fs/ManagerOfCacheFileContentTest.java | 74 ++
.../cache/fs/ManagerOfCacheFileStatusTest.java | 69 ++
.../cache/kylin/KylinCacheFileSystemTest.java | 203 ++++++
.../serde2/lazy/lazy/LazyQuoteAwareSerDeTest.java | 290 ++++++++
.../test/resources/default_3ywc6z78.emp/emp.csv | 3 +
.../resources/default_3ywc6z78.emp/emp_data_1.csv | 4 +
.../src/test/resources/log4j2.xml | 24 +
.../kylin/KylinCacheFileSystemWithSparkTest.scala | 140 ++++
.../HiveSoftAffinityAndLocalCacheTest.scala | 213 ++++++
src/spark-project/sparder/pom.xml | 8 +
.../query/plugin/runtime/MppOnTheFlyProvider.java | 47 ++
.../kylin/query/pushdown/SparkSqlClient.scala | 51 +-
.../kylin/query/runtime/ExpressionConverter.scala | 25 +-
.../kylin/query/runtime/SparderRexVisitor.scala | 8 +-
.../kylin/query/runtime/plan/TableScanPlan.scala | 53 +-
.../kylin/query/util/SparderDerivedUtil.scala | 12 +-
.../scala/org/apache/spark/sql/KapFunctions.scala | 4 +-
.../scala/org/apache/spark/sql/SparderEnv.scala | 6 +-
.../sql/catalyst/expressions/KapExpresssions.scala | 24 +-
.../sql/hive/KylinHiveSessionStateBuilder.scala | 60 +-
.../apache/spark/sql/hive/QueryMetricUtils.scala | 4 +-
.../org/apache/spark/sql/udf/DictEncodeImpl.scala | 9 +-
.../query/pushdown/PushDownRunnerJdbcImplTest.java | 56 +-
.../sql/execution/SparkQueryMetricUtilsSuite.scala | 4 +-
.../spark/sql/hive/ReplaceLocationRuleTest.scala | 12 +-
.../org/apache/spark/dict/NBucketDictionary.java | 62 +-
.../spark/dict/NGlobalDictBuilderAssist.scala | 5 +-
.../apache/spark/dict/NGlobalDictHDFSStore.java | 10 +-
.../org/apache/spark/dict/NGlobalDictS3Store.java | 16 +-
.../org/apache/spark/dict/NGlobalDictStore.java | 4 +-
.../org/apache/spark/dict/NGlobalDictionaryV2.java | 107 ++-
.../sql/execution/datasource/FilePruner.scala | 4 +
.../streaming/manager/StreamingJobManager.java | 9 +-
.../apache/kylin/helper/MetadataToolHelper.java | 139 +++-
.../org/apache/kylin/tool/MaintainModeTool.java | 4 +-
.../apache/kylin/tool/garbage/StorageCleaner.java | 22 +-
.../kylin/tool/security/KylinPasswordResetCLI.java | 10 +-
.../kylin/tool/upgrade/UpdateProjectCLI.java | 29 +-
.../kylin/tool}/util/CreateTableFromJson.java | 31 +-
.../java/org/apache/kylin/tool/util/LdapUtils.java | 12 +-
.../util/ProjectTemporaryTableCleanerHelper.java | 4 +-
.../org/apache/kylin/tool/AuditLogToolTest.java | 11 +-
.../org/apache/kylin/tool/MetadataToolTest.java | 57 ++
.../apache/kylin/tool/MetadataToolTestFixture.java | 2 +-
.../apache/kylin/tool/YarnApplicationToolTest.java | 11 +-
.../kylin/tool/routine/MaintainModeToolTest.java | 40 +-
.../tool/security/KylinPasswordResetCLITest.java | 11 +-
.../kylin/tool/util/CreateTableFromJsonTest.java | 68 ++
.../org/apache/kylin/tool/util/LdapUtilsTest.java | 57 ++
.../ProjectTemporaryTableCleanerHelperTest.java | 5 +-
424 files changed, 16899 insertions(+), 4212 deletions(-)
create mode 100755 build/bin/create-table.sh
create mode 100644
src/common-service/src/main/java/org/apache/kylin/rest/cache/AbstractKylinCache.java
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SCD2Exception.java
=>
common-service/src/main/java/org/apache/kylin/rest/cache/CacheConstant.java}
(73%)
create mode 100644
src/common-service/src/main/java/org/apache/kylin/rest/cache/RedisCacheV2.java
copy
src/{spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/kylin/OnlyForTestCacheFileSystem.java
=>
common-service/src/main/java/org/apache/kylin/rest/request/SyncFileSegmentsRequest.java}
(68%)
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/favorite/AbstractAsyncTask.java
=>
common-service/src/main/java/org/apache/kylin/rest/response/SyncFileSegmentsResponse.java}
(68%)
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SCD2Exception.java
=>
common-service/src/test/java/org/apache/kylin/rest/cache/CacheConstantTest.java}
(71%)
copy
src/{core-common/src/test/java/org/apache/kylin/common/util/ClassUtilTest.java
=>
common-service/src/test/java/org/apache/kylin/rest/cache/RedisCacheTest.java}
(64%)
create mode 100644
src/common-service/src/test/java/org/apache/kylin/rest/cache/RedisCacheV2Test.java
copy
src/{core-common/src/test/java/org/apache/kylin/common/util/ClassUtilTest.java
=>
common-service/src/test/java/org/apache/kylin/rest/util/InitResourceGroupUtilsTest.java}
(56%)
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/AbstractMemoryLock.java
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SCD2Exception.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/DeadLockException.java}
(82%)
copy
src/{spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/kylin/OnlyForTestCacheFileSystem.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/DeadLockHandler.java}
(50%)
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/DeadLockInfo.java
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/NonEquiJoinConditionType.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/IntentionLock.java}
(82%)
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/IntentionReadWriteLock.java
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/IntentionShareLock.java
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SCD2Exception.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/LockInterruptException.java}
(80%)
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SimplifiedJoinDesc.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/LockManager.java}
(51%)
copy
src/{spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/kylin/OnlyForTestCacheFileSystem.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/LockManagerInstance.java}
(68%)
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SCD2Exception.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/LockTimeoutException.java}
(81%)
copy
src/{spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/kylin/OnlyForTestCacheFileSystem.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/MemoryLock.java}
(69%)
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/MemoryLockGraph.java
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/MemoryLockManager.java
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/MemoryLockUtils.java
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/usergroup/UserGroup.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/ModuleLock.java}
(51%)
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/ModuleLockEnum.java
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/NonEquiJoinConditionType.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/OptimisticLockRetryException.java}
(82%)
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/favorite/AbstractAsyncTask.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/PathLock.java}
(59%)
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/favorite/AbstractAsyncTask.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/ProjectLock.java}
(58%)
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/ResourcePathParser.java
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/NonEquiJoinConditionType.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/TempLock.java}
(82%)
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/TransactionDeadLockHandler.java
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/NonEquiJoinConditionType.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/TransactionLock.java}
(72%)
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SimplifiedJoinDesc.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/TransactionLockManager.java}
(52%)
copy
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SCD2Exception.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/TransactionProjectLock.java}
(74%)
rename
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SCD2Exception.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/TransactionTempLock.java}
(73%)
copy
src/{spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/kylin/OnlyForTestCacheFileSystem.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/rule/LockEliminationRule.java}
(65%)
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/rule/LockEliminationRuleExec.java
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/rule/LockInfo.java
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/rule/ModuleEliminationRule.java
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/lock/rule/PathEliminationRule.java
copy
src/{spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/kylin/OnlyForTestCacheFileSystem.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/lock/rule/ProjectEliminationRule.java}
(59%)
delete mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/transaction/TransactionLock.java
copy
src/core-common/src/main/java/org/apache/kylin/common/{util/ThreadUtil.java =>
persistence/transaction/TransactionManagerInstance.java} (56%)
copy
src/{spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/kylin/OnlyForTestCacheFileSystem.java
=>
core-common/src/main/java/org/apache/kylin/common/persistence/transaction/TransactionOptimisticLockManager.java}
(68%)
create mode 100644
src/core-common/src/main/java/org/apache/kylin/common/persistence/transaction/TransactionPessimisticLockManager.java
create mode 100644
src/core-common/src/test/java/org/apache/kylin/common/persistence/lock/CloseWaitTest.java
create mode 100644
src/core-common/src/test/java/org/apache/kylin/common/persistence/lock/MemoryLockGraphTest.java
create mode 100644
src/core-common/src/test/java/org/apache/kylin/common/persistence/lock/rule/LockEliminationRuleExecTest.java
rename
src/core-common/src/test/java/org/apache/kylin/common/persistence/transaction/{TransactionLockTest.java
=> TransactionProjectLockTest.java} (89%)
copy
src/core-metadata/src/main/java/org/apache/kylin/metadata/{usergroup/UserGroup.java
=> model/FilePartitionDesc.java} (71%)
rename src/core-metadata/src/main/java/org/apache/kylin/metadata/model/{tool
=> }/TruthTable.java (54%)
delete mode 100644
src/core-metadata/src/main/java/org/apache/kylin/metadata/model/tool/JoinDescNonEquiCompBean.java
delete mode 100644
src/core-metadata/src/main/java/org/apache/kylin/metadata/model/tool/NonEquiJoinConditionComparator.java
delete mode 100644
src/core-metadata/src/main/java/org/apache/kylin/metadata/model/tool/NonEquiJoinConditionVisitor.java
delete mode 100644
src/core-metadata/src/main/java/org/apache/kylin/metadata/model/tool/TypedLiteralConverter.java
delete mode 100644
src/core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/SCD2NonEquiCondSimplification.java
create mode 100644
src/core-metadata/src/main/java/org/apache/kylin/metadata/model/util/scd2/Scd2Simplifier.java
create mode 100644
src/core-metadata/src/main/java/org/apache/kylin/metadata/query/NoopJdbcQueryHistoryStore.java
create mode 100644
src/core-metadata/src/test/java/org/apache/kylin/metadata/cachesync/CachedCrudAssistTest.java
create mode 100644
src/core-metadata/src/test/java/org/apache/kylin/metadata/model/NeqEquiJoinConditionTest.java
delete mode 100644
src/core-metadata/src/test/java/org/apache/kylin/metadata/model/tool/NonEquiJoinConditionComparatorTest.java
create mode 100644
src/core-metadata/src/test/java/org/apache/kylin/model/NDataModelTest.java
create mode 100644
src/kylin-it/src/test/java/org/apache/kylin/query/rules/ScalarSubqueryJoinRuleTest.java
create mode 100644
src/kylin-it/src/test/resources/org/apache/kylin/query/rules/ScalarSubqueryJoinRuleTest.xml
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query01.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query02.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query03.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query04.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query05.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query06.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query07.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query08.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query09.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query10.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query11.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query12.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query13.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query14.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query15.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query16.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query17.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query18.sql
create mode 100644
src/kylin-it/src/test/resources/query/sql_scalar_subquery/query19.sql
rename
src/{core-metadata/src/main/java/org/apache/kylin/metadata/model/NonEquiJoinConditionType.java
=>
query-service/src/main/java/org/apache/kylin/rest/request/QueryDetectRequest.java}
(71%)
create mode 100644
src/query-service/src/main/java/org/apache/kylin/rest/response/QueryDetectResponse.java
create mode 100644
src/query-service/src/test/java/org/apache/kylin/rest/service/QueryCacheManagerTest.java
create mode 100644
src/query/src/main/java/io/kyligence/kap/query/optrule/ScalarSubqueryJoinRule.java
create mode 100644
src/spark-project/engine-spark/src/main/java/org/apache/kylin/engine/spark/job/MppOnTheFlyImpl.java
create mode 100644
src/spark-project/engine-spark/src/main/scala/org/apache/kylin/engine/spark/builder/ZKHelper.scala
create mode 100644 src/spark-project/kylin-soft-affinity-cache-hadoop3/pom.xml
create mode 100644
src/spark-project/kylin-soft-affinity-cache-hadoop3/src/main/java/io/kyligence/kap/cache/kylin/KylinCacheFileSystemHadoop3.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/fs/ManagerOfCacheFileContent.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/fs/ManagerOfCacheFileStatus.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/softaffinity/SoftAffinityBookKeeping.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/softaffinity/SoftAffinityTextInputFormat.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/cache/utils/Hadoop3CompaUtil.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/fileseg/FileSegments.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/fileseg/FileSegmentsDetector.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/main/java/org/apache/kylin/hive/serde2/lazy/LazyQuoteAwareSerDe.java
delete mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/java/org/apache/kylin/cache/fs/KylinCacheFileSystemTest.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/java/org/apache/kylin/cache/fs/ManagerOfCacheFileContentTest.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/java/org/apache/kylin/cache/fs/ManagerOfCacheFileStatusTest.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/java/org/apache/kylin/cache/kylin/KylinCacheFileSystemTest.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/java/org/apache/kylin/hive/serde2/lazy/lazy/LazyQuoteAwareSerDeTest.java
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/resources/default_3ywc6z78.emp/emp.csv
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/resources/default_3ywc6z78.emp/emp_data_1.csv
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/resources/log4j2.xml
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/scala/org/apache/kylin/cache/kylin/KylinCacheFileSystemWithSparkTest.scala
create mode 100644
src/spark-project/kylin-soft-affinity-cache/src/test/scala/org/apache/spark/sql/hive/execution/HiveSoftAffinityAndLocalCacheTest.scala
create mode 100644
src/spark-project/sparder/src/main/scala/org/apache/kylin/query/plugin/runtime/MppOnTheFlyProvider.java
rename src/{core-metadata/src/main/java/org/apache/kylin/rest =>
tool/src/main/java/org/apache/kylin/tool}/util/CreateTableFromJson.java (81%)
create mode 100644
src/tool/src/test/java/org/apache/kylin/tool/util/CreateTableFromJsonTest.java
create mode 100644
src/tool/src/test/java/org/apache/kylin/tool/util/LdapUtilsTest.java