This is an automated email from the ASF dual-hosted git repository. xxyu pushed a change to branch kylin5 in repository https://gitbox.apache.org/repos/asf/kylin.git
from 10e4e9ec3a KYLIN-5554 change tips when import same name model new 07a4be3795 KYLIN-5545 Try best to interrupt running queries and limit the number of queries to run. new 3297beff72 KYLIN-5546 Add stop async query job api. new 84af3394b9 KYLIN-5527 [FOLLOWUP] Rename working layouts to effective layouts new 1a286ea334 KYLIN-5555 Fix get effective layouts from all ready segments instead of from the latest ready segment when editing model. new 116718225b KYLIN-5556 Add a new meothod to load tables with a threshold new 134ddb0e30 KYLIN-5557 Add response message for the request of canceling the asynchronous query new d9c37f7bcb KYLIN-5558 Fix the issue of no child process file generated in query node new 7e739def55 KYLIN-5559 Upgrade Spark Avro version to 1.11.1 for the security reason new d858fe0170 KYLIN-5560 Add traceId into each HTTP request and into log4j MDC to help tracing transactions. new b51378390b KYLIN-5561 Fix sumLC null val and optimize sumLC model build new eb1dfe51f1 KYLIN-5562 Fix the issue Job may be scheduled repeatedly new 9ee8b057cb KYLIN-5563 Enable OPERATION role to manage INDEX new 03a44dc0c0 KYLIN-5564 Support building BloomFilters for the desired columns new fa610e989a KYLIN-5565 Upgrade netty-all & netty-codec version to 4.1.89.Final (#30118) new 4556d12103 KYLIN-5566 Fix case insensitiveness when checking model existence new 83d71b03b4 KYLIN-5567 Rebrand kap-external modules to 'kylin' and add code checkstyles. new e4642ae8f2 KYLIN-5568 Enhance the ability to identify customer metadata case sensitivity new c0b66e0eab KYLIN-5569 Support manually setting SSH encrypted password in Job multi-live mode new 17e2ca0f1a KYLIN-5570 To fix sql with grouping sets returns incorrect result new b43fa19ae5 KYLIN-5571 Optimize the procedure of pushing down the query new 1612a76dfa KYLIN-5572 Add a new REST API to build the specified indexes new d4454d1eb7 KYLIN-5573 Refine error messages when loading more than 1000 tables new 7ddcd87169 KYLIN-5574 To fix the error of building models when KE's meatadata is inconstent with Hive metastore's. new 6dc56d7315 KYLIN-5575 The operation and maintenance personnel have no access permission when they pass the index optimization suggestion new ee0b0ec92b KYLIN-5576 Don't use the filters with subquery on partition columns to detect resources during build the model new e35d6a147a KYLIN-5577 To fix the bug of checking upper case model alias new b548c90edc KYLIN-5578 Support min/max aggregation queries using metadata response queries new ef676a7e1d KYLIN-5580 Refactor multi-tenant to make resource separable new 85590405dd KYLIN-5581 Query min and max aggregations using metadata for all data types. new bec0b64913 KYLIN-5582 Minor fix for query collectors on BloomFilter new 3075031c16 KYLIN-5583 Minor bug fix, and do optimization when computing query digest new 4dc173fda7 KYLIN-5584 Fixed sonar failures new 3df1d8d3a3 KYLIN-5585 Bug fix for loading tables, to add the corresponding message of the failure into http response new 00b3a17c2a KYLIN-5580 [FOLLOWUP] Use SecureRandom to get random integer new d65fc1e23e KYLIN-5586 Upgrade json-smart from 2.4.7 to 2.4.9 to eliminate the vulnerability new 88f766c742 KYLIN-5587 Upgrade spring-webmvc to 5.3.26 to fix the vulnerability new a2259e133c KYLIN-5588 Upgrade spark version to 3.2.0-kylin-4.6.7.0 The 37 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/conf/kylin-guardian-log4j.xml | 2 +- build/conf/kylin-server-log4j.xml | 14 +- build/conf/kylin-tools-diag-log4j.xml | 4 +- build/conf/kylin-tools-log4j.xml | 2 +- build/conf/spark-appmaster-log4j.xml | 2 +- build/conf/spark-driver-log4j.xml | 2 +- build/conf/spark-executor-cloud-log4j.xml | 2 +- build/conf/spark-streaming-driver-log4j.xml | 2 +- dev-support/checkstyle-apache-suppressions.xml | 2 + dev-support/checkstyle-apache.xml | 12 +- pom.xml | 48 +- .../src/main/resources/kylinSecurity.xml | 2 + src/common-booter/src/main/resources/log4j2.xml | 2 +- .../rest/config/initialize/BroadcastListener.java | 2 +- .../kylin/rest/controller/HealthController.java | 2 +- .../kylin/rest/controller/NAdminController.java | 6 +- .../kylin/rest/controller/NBasicController.java | 8 +- .../kylin/rest/controller/NMonitorController.java | 4 +- .../kylin/rest/controller/NSystemController.java | 43 +- .../src/main/resources/kylinSecurity.xml | 2 + .../kylin/rest/controller/AdminControllerTest.java | 19 +- .../rest/controller/HealthControllerTest.java | 4 +- .../rest/controller/NEpochControllerTest.java | 4 +- .../rest/controller/NSystemControllerTest.java | 34 +- .../apache/kylin/helper/MetadataToolHelper.java | 18 +- .../kylin/rest/aspect/InsensitiveNameAspect.java | 2 +- .../apache/kylin/rest/aspect/RateLimitAspect.java | 4 +- .../kylin/rest/aspect/TransactionAspect.java | 6 +- .../apache/kylin/rest/broadcaster/Broadcaster.java | 2 +- .../org/apache/kylin/rest/cache/RedisCache.java | 10 +- .../kylin/rest/cache/memcached/MemcachedCache.java | 15 +- .../cache/memcached/MemcachedChunkingCache.java | 13 +- .../kylin/rest/cluster/MockClusterManager.java | 2 +- .../apache/kylin/rest/config/AppInitializer.java | 6 +- .../apache/kylin/rest/config/MetricsConfig.java | 2 +- .../kylin/rest/config/cloud/AlluxioExtension.java | 12 +- .../rest/config/initialize/CacheCleanListener.java | 2 +- .../config/initialize/EpochChangedListener.java | 2 +- .../config/initialize/JobSchedulerListener.java | 4 +- .../rest/config/initialize/MetricsRegistry.java | 4 +- .../config/initialize/ModelBrokenListener.java | 4 +- .../config/initialize/ProcessStatusListener.java | 14 +- .../config/initialize/QueryMetricsListener.java | 6 +- .../rest/config/initialize/UserAclListener.java | 4 +- .../rest/constant/ProjectInfoParserConstant.java | 22 +- .../ResourceGroupKylinInstanceValidator.java | 2 +- .../apache/kylin/rest/interceptor/KEFilter.java | 11 + .../kylin/rest/interceptor/ProjectInfoParser.java | 43 +- .../interceptor/ResourceGroupCheckerFilter.java | 2 +- .../apache/kylin/rest/interceptor/V2ApiFilter.java | 2 +- .../rest/monitor/AbstractMonitorCollectTask.java | 2 +- .../apache/kylin/rest/monitor/MonitorReporter.java | 4 +- .../apache/kylin/rest/request/AccessRequest.java | 1 + .../request/BatchProjectPermissionRequest.java | 2 +- .../kylin/rest/request/MetadataBackupRequest.java} | 21 +- .../org/apache/kylin/rest/request/SQLRequest.java | 2 +- .../kylin/rest/request/TableExclusionRequest.java | 2 +- .../org/apache/kylin/rest/request/UserRequest.java | 2 +- .../apache/kylin/rest/response/ErrorResponse.java | 2 +- .../rest/response/ExcludedTableDetailResponse.java | 2 +- .../kylin/rest/response/ExcludedTableResponse.java | 2 +- .../kylin/rest/response/ExportTablesResponse.java | 2 +- .../kylin/rest/response/LoadTableResponse.java | 3 + .../rest/response/PreReloadTableResponse.java | 4 +- .../rest/response/ProjectCapacityResponse.java | 2 +- .../kylin/rest/response/TableDescResponse.java | 2 +- .../rest/security/CachedBCryptPasswordEncoder.java | 6 +- .../rest/security/LdapAuthenticationProvider.java | 4 +- .../rest/security/LdapAuthoritiesPopulator.java | 2 +- .../security/LimitLoginAuthenticationProvider.java | 2 +- .../apache/kylin/rest/service/AccessService.java | 93 ++- .../apache/kylin/rest/service/AclTCRService.java | 10 +- .../apache/kylin/rest/service/BasicService.java | 4 +- .../service/CaseInsensitiveUserGroupService.java | 2 +- .../kylin/rest/service/CustomFileService.java | 2 +- .../org/apache/kylin/rest/service/FileService.java | 181 ++++++ .../apache/kylin/rest/service/HealthService.java | 4 +- .../kylin/rest/service/KylinUserService.java | 2 +- .../kylin/rest/service/LdapUserGroupService.java | 14 +- .../apache/kylin/rest/service/LdapUserService.java | 14 +- .../kylin/rest/service/MetadataBackupService.java | 9 +- .../kylin/rest/service/NUserGroupService.java | 4 +- .../apache/kylin/rest/service/ProjectService.java | 10 +- .../apache/kylin/rest/service/RouteService.java | 218 +++++++ .../apache/kylin/rest/service/SystemService.java | 4 +- .../apache/kylin/rest/service/UserAclService.java | 6 +- .../service/task/QueryHistoryTaskScheduler.java | 6 +- .../task/RecommendationTopNUpdateScheduler.java | 4 +- .../apache/kylin/rest/source/DataSourceState.java | 6 +- .../org/apache/kylin/rest/util/AclEvaluate.java | 6 +- .../kylin/rest/util/CreateAdminUserUtils.java | 2 +- .../rest/util/TimestampedRollingFileOutputDir.java | 2 +- .../tool/daemon/checker/FullGCDurationChecker.java | 2 +- .../kylin/tool/daemon/checker/KEStatusChecker.java | 2 +- .../apache/kylin/tool/garbage/IndexCleaner.java | 2 +- .../apache/kylin/tool/garbage/StorageCleaner.java | 10 +- .../tool/kerberos/DelegationTokenManager.java | 10 +- .../util/ProjectTemporaryTableCleanerHelper.java | 6 +- .../java/org/apache/kylin/tool/util/ToolUtil.java | 2 +- .../rest/cache/memcached/MemcachedCacheTest.java | 2 +- .../memcached/MemcachedChunkingCacheTest.java | 6 +- .../config/initialize/MetricsRegistryTest.java | 4 +- .../rest/interceptor/ProjectInfoParserTest.java | 25 + .../kylin/rest/monitor/MonitorReporterTest.java | 2 +- .../apache/kylin/rest/request/UserRequestTest.java | 2 +- .../kylin/rest/service/AccessServiceTest.java | 28 +- ...Test.java => AccessServiceWithProjectTest.java} | 628 ++++++--------------- .../kylin/rest/service/AclTCRServiceTest.java | 4 +- .../CaseInsensitiveKylinUserServiceTest.java | 2 +- .../apache/kylin/rest/service/FileServiceTest.java | 257 +++++++++ .../kylin/rest/service/HealthServiceTest.java | 4 +- .../kylin/rest/service/KylinUserServiceTest.java | 4 +- .../kylin/rest/service/LdapUserServiceTest.java | 4 +- .../MetadataBackupServiceJdbcMetadataTest.java | 101 ++++ .../rest/service/MetadataBackupServiceTest.java | 70 +-- .../kylin/rest/service/NUserGroupServiceTest.java | 4 +- .../kylin/rest/service/OpenUserServiceTest.java | 2 +- .../kylin/rest/service/RouteServiceTest.java | 266 +++++++++ .../rest/service/SnapshotAutoRefreshTest.java | 2 +- .../kylin/rest/service/StaticUserGroupService.java | 4 +- .../kylin/rest/service/StaticUserService.java | 2 +- .../kylin/rest/service/SystemServiceTest.java | 4 +- .../apache/kylin/rest/service/UserServiceTest.java | 2 +- .../task/QueryHistoryTaskSchedulerRunnerTest.java | 2 +- .../task/QueryHistoryTaskSchedulerTest.java | 6 +- .../ProjectTemporaryTableCleanerHelperTest.java | 2 +- .../src/test/resources/kylinSecurity.xml | 2 + src/core-common/pom.xml | 4 +- .../kylin/common/BackwardCompatibilityConfig.java | 2 +- .../kylin/common/ICachedExternalConfigLoader.java | 2 +- .../java/org/apache/kylin/common/KylinConfig.java | 6 +- .../org/apache/kylin/common/KylinConfigBase.java | 76 ++- .../org/apache/kylin/common/KylinConfigExt.java | 2 +- .../kylin/common/KylinExternalConfigLoader.java | 6 +- .../java/org/apache/kylin/common/KylinVersion.java | 4 +- .../apache/kylin/common/PropertiesDelegate.java | 2 +- .../java/org/apache/kylin/common/QueryContext.java | 2 +- .../java/org/apache/kylin/common/StorageURL.java | 8 +- .../apache/kylin/common/constant/Constants.java | 2 + .../apache/kylin/common/debug/BackdoorToggles.java | 2 +- .../apache/kylin/common/exception/ErrorCode.java | 2 +- .../kylin/common/exception/ExceptionReason.java | 4 +- .../kylin/common/exception/ExceptionResolve.java | 4 +- .../exception/code/AbstractErrorContent.java | 2 +- .../kylin/common/exception/code/ErrorCode.java | 4 +- .../common/exception/code/ErrorCodeServer.java | 6 + .../kylin/common/hystrix/NCircuitBreaker.java | 2 +- .../org/apache/kylin/common/msg/CnMessage.java | 11 + .../java/org/apache/kylin/common/msg/Message.java | 10 + .../apache/kylin/common/persistence/AuditLog.java | 2 +- .../common/persistence/InMemResourceStore.java | 4 +- .../kylin/common/persistence/RawResource.java | 2 +- .../kylin/common/persistence/ResourceStore.java | 12 +- .../common/persistence/RootPersistentEntity.java | 2 +- .../common/persistence/SnapshotRawResource.java | 2 +- .../persistence/ThreadViewResourceStore.java | 6 +- .../kylin/common/persistence/UnitMessages.java | 2 +- .../persistence/metadata/FileEpochStore.java | 8 +- .../persistence/metadata/FileMetadataStore.java | 4 +- .../persistence/metadata/HDFSMetadataStore.java | 12 +- .../persistence/metadata/JdbcAuditLogStore.java | 8 +- .../persistence/metadata/JdbcDataSource.java | 2 +- .../persistence/metadata/JdbcEpochStore.java | 2 +- .../persistence/metadata/JdbcMetadataStore.java | 6 +- .../common/persistence/metadata/MetadataStore.java | 4 +- .../persistence/metadata/NoopAuditLogStore.java | 2 +- .../metadata/jdbc/AuditLogRowMapper.java | 2 +- .../common/persistence/metadata/jdbc/JdbcUtil.java | 2 +- .../metadata/jdbc/RawResourceRowMapper.java | 2 +- .../transaction/AbstractAuditLogReplayWorker.java | 4 +- .../transaction/AuditLogReplayWorker.java | 6 +- .../transaction/EventListenerRegistry.java | 2 +- .../transaction/MessageSynchronization.java | 2 +- .../persistence/transaction/TransactionLock.java | 2 +- .../common/persistence/transaction/UnitOfWork.java | 30 +- .../persistence/transaction/UnitOfWorkContext.java | 4 +- .../persistence/transaction/UnitOfWorkParams.java | 2 + .../kylin/common/scheduler/EventBusFactory.java | 12 +- .../common/util/ArgsTypeJsonDeserializer.java | 2 +- .../java/org/apache/kylin/common/util/Bytes.java | 6 +- .../org/apache/kylin/common/util/BytesUtil.java | 2 +- .../kylin/common/util/CliCommandExecutor.java | 2 +- .../apache/kylin/common/util/CollectionUtil.java | 2 +- .../apache/kylin/common/util/CompositeMapView.java | 6 +- .../org/apache/kylin/common/util/DateFormat.java | 6 +- .../org/apache/kylin/common/util/EncryptUtil.java | 14 +- .../org/apache/kylin/common/util/FileUtils.java | 4 +- .../kylin/common/util/ImplementationSwitch.java | 2 +- .../org/apache/kylin/common/util/JsonUtil.java | 2 +- .../org/apache/kylin/common/util/MailHelper.java | 6 +- .../kylin/common/util/MailTemplateProvider.java | 1 - .../java/org/apache/kylin/common/util/MapUtil.java | 2 +- .../apache/kylin/common/util/MetadataChecker.java | 2 +- .../kylin/common/util/OrderedProperties.java | 2 +- .../org/apache/kylin/common/util/ProcessUtils.java | 4 +- .../org/apache/kylin/common/util/RandomUtil.java | 23 + .../org/apache/kylin/common/util/RangeUtil.java | 8 +- .../apache/kylin/common/util/ResourceUtils.java | 2 +- .../apache/kylin/common/util/SecretKeyUtil.java | 2 +- .../apache/kylin/common/util/SizeConvertUtil.java | 2 +- .../org/apache/kylin/common/util/StringHelper.java | 4 +- .../kylin/common/util/TempMetadataBuilder.java | 2 +- .../org/apache/kylin/common/util/TimeUtil.java | 2 +- .../common/eventbus/KylinEventException.java | 2 +- .../eventbus/SyncThrowExceptionEventBus.java | 2 +- .../org/apache/kylin/loader/ParserClassLoader.java | 2 +- .../kylin/loader/ParserClassLoaderState.java | 4 +- .../query/exception/UserStopQueryException.java | 0 .../org/apache/kylin/query/util/CancelFlag.java | 49 ++ .../apache/kylin/tool/restclient/RestClient.java | 2 +- .../kylin-backward-compatibility.properties | 1 + .../src/main/resources/kylin-defaults0.properties | 3 + .../resources/kylin_error_msg_conf_cn.properties | 7 +- .../resources/kylin_error_msg_conf_en.properties | 6 + .../kylin_error_suggestion_conf_cn.properties | 7 +- .../kylin_error_suggestion_conf_en.properties | 7 +- .../main/resources/kylin_errorcode_conf.properties | 6 + .../org/apache/kylin/common/AbstractTestCase.java | 2 +- .../apache/kylin/common/KylinConfigBaseTest.java | 87 ++- .../common/KylinConfigMultithreadingTest.java | 2 +- .../org/apache/kylin/common/KylinConfigTest.java | 2 +- .../kylin/common/PropertiesDelegateTest.java | 4 +- .../persistence/JdbcAuditLogRecoveryTest.java | 8 +- .../common/persistence/JdbcMetadataStoreTest.java | 4 +- .../kylin/common/persistence/RawResourceTest.java | 2 +- .../common/persistence/ResourceStoreTestBase.java | 2 +- .../kylin/common/persistence/ResourceTool.java | 2 +- .../persistence/SnapshotRawResourceTest.java | 2 +- .../persistence/ThreadViewResourceStoreTest.java | 2 +- .../kylin/common/persistence/UnitOfWorkTest.java | 6 +- .../metadata/JdbcAuditLogGroupbyReplayerTest.java | 2 +- .../metadata/JdbcAuditLogStoreTest.java | 2 +- .../metadata/JdbcAuditLogStoreTool.java | 15 +- .../epochstore/AbstractEpochStoreTest.java | 2 +- .../metadata/epochstore/JdbcEpochStoreTest.java | 4 +- .../transaction/AuditReplayWorkerTest.java | 2 +- .../transaction/MessageSynchronizationTest.java | 4 +- .../transaction/TransactionLockTest.java | 2 +- .../common/util/ArgsTypeJsonDeserializerTest.java | 2 +- .../apache/kylin/common/util/ArrayUtilsTest.java | 2 +- .../kylin/common/util/CompositeMapViewTest.java | 4 +- .../apache/kylin/common/util/EncryptUtilsTest.java | 23 +- .../org/apache/kylin/common/util/MapUtilTest.java | 2 +- .../common/util/NLocalFileMetadataTestCase.java | 4 +- .../apache/kylin/common/util/RandomUtilTest.java | 77 ++- .../org/apache/kylin/common/util/RangeTest.java | 4 +- .../apache/kylin/common/util/RangeUtilTest.java | 4 +- .../org/apache/kylin/junit/MetadataExtension.java | 4 +- .../apache/kylin/junit/MultiTimezoneProvider.java | 2 +- .../apache/kylin/junit/OverwritePropExtension.java | 4 +- .../kylin/loader/AddToClassPathActionTest.java | 2 +- .../kylin/loader/ParserClassLoaderStateTest.java | 2 +- .../apache/kylin/rest/service/PagingUtilTest.java | 2 +- src/core-job/pom.xml | 4 +- .../apache/kylin/job/common/ExecutableUtil.java | 4 +- .../apache/kylin/job/common/IndexBuildJobUtil.java | 2 +- .../org/apache/kylin/job/common/MergeJobUtil.java | 2 +- .../kylin/job/common/PartitionBuildJobUtil.java | 2 +- .../apache/kylin/job/common/RefreshJobUtil.java | 2 +- .../kylin/job/common/SegmentBuildJobUtil.java | 2 +- .../org/apache/kylin/job/common/SegmentUtil.java | 4 +- .../apache/kylin/job/common/ShellExecutable.java | 2 +- .../apache/kylin/job/dao/ExecutableOutputPO.java | 4 +- .../org/apache/kylin/job/dao/ExecutablePO.java | 4 +- .../org/apache/kylin/job/dao/JobStatistics.java | 2 +- .../apache/kylin/job/dao/JobStatisticsManager.java | 2 +- .../org/apache/kylin/job/dao/NExecutableDao.java | 4 +- .../kylin/job/execution/AbstractExecutable.java | 18 +- .../kylin/job/execution/DefaultExecutable.java | 4 +- .../job/execution/DefaultExecutableOnModel.java | 4 +- .../job/execution/EmailNotificationContent.java | 2 +- .../kylin/job/execution/ExecutableContext.java | 6 +- .../kylin/job/execution/ExecutableHandler.java | 2 +- .../kylin/job/execution/ExecutableParams.java | 6 +- .../kylin/job/execution/ExecutableState.java | 23 +- .../apache/kylin/job/execution/ExecuteResult.java | 6 +- .../kylin/job/execution/NExecutableManager.java | 10 +- .../org/apache/kylin/job/execution/StageBase.java | 2 +- .../org/apache/kylin/job/factory/JobFactory.java | 2 +- .../kylin/job/handler/AbstractJobHandler.java | 5 +- .../apache/kylin/job/handler/AddIndexHandler.java | 2 +- .../kylin/job/handler/AddSegmentHandler.java | 2 +- .../kylin/job/handler/RefreshSegmentHandler.java | 2 +- .../job/impl/threadpool/NDefaultScheduler.java | 8 +- .../org/apache/kylin/job/manager/JobManager.java | 2 +- .../kylin/job/manager/SegmentAutoMergeUtil.java | 2 +- .../java/org/apache/kylin/job/model/JobParam.java | 4 +- .../apache/kylin/job/runners/FetcherRunner.java | 1 + .../org/apache/kylin/job/runners/JobRunner.java | 1 - .../kylin/job/runners/QuotaStorageCheckRunner.java | 2 +- .../kylin/job/util/MailNotificationUtil.java | 2 +- .../kylin/job/execution/DagExecutableTest.java | 8 +- .../kylin/job/execution/ExecutableContextTest.java | 2 +- .../job/execution/JobStatisticsManagerTest.java | 2 +- .../kylin/job/execution/JobStatusChangedTest.java | 2 +- .../job/execution/NExecutableManagerTest.java | 10 +- .../kylin/job/execution/SuccessTestStage.java | 2 +- .../job/execution/TestWithStageExecutable.java | 6 +- .../job/impl/threadpool/NDefaultSchedulerTest.java | 4 +- .../kylin/job/lock/ZookeeperAclBuilderTest.java | 2 +- .../kylin/cube/gridtable/GridTableMapping.java | 2 +- .../upgrade/common/MetadataVersionRefresher.java | 4 +- .../org/apache/kylin/dimension/BooleanDimEnc.java | 2 +- .../kylin/dimension/DimensionEncodingFactory.java | 8 +- .../apache/kylin/dimension/FixedLenHexDimEnc.java | 2 +- .../cache/CustomKeyEquivalenceCacheBuilder.java | 4 +- .../java/org/apache/kylin/measure/MeasureType.java | 2 +- .../apache/kylin/measure/MeasureTypeFactory.java | 4 +- .../kylin/measure/bitmap/BitmapMeasureType.java | 5 +- .../bitmap/intersect/IntersectMeasureType.java | 2 +- .../measure/collect_set/CollectSetMeasureType.java | 2 +- .../apache/kylin/measure/corr/CorrMeasureType.java | 4 +- .../kylin/measure/dim/DimCountDistinctCounter.java | 2 +- .../measure/dim/DimCountDistinctMeasureType.java | 2 +- .../extendedcolumn/ExtendedColumnMeasureType.java | 2 +- .../apache/kylin/measure/hllc/HLLCMeasureType.java | 2 +- .../org/apache/kylin/measure/hllc/HLLCounter.java | 4 +- .../apache/kylin/measure/hllc/HLLCounterOld.java | 4 +- .../measure/percentile/PercentileMeasureType.java | 2 +- .../apache/kylin/measure/raw/RawMeasureType.java | 2 +- .../apache/kylin/measure/sumlc/SumLCCounter.java | 20 +- .../kylin/measure/sumlc/SumLCMeasureType.java | 2 +- .../org/apache/kylin/measure/topn/TopNCounter.java | 4 +- .../apache/kylin/measure/topn/TopNMeasureType.java | 2 +- .../apache/kylin/metadata/acl/AclTCRDigest.java | 2 +- .../apache/kylin/metadata/acl/AclTCRManager.java | 16 +- .../apache/kylin/metadata/acl/ColumnToConds.java | 8 +- .../apache/kylin/metadata/acl/DependentColumn.java | 4 +- .../kylin/metadata/acl/NDataModelAclParams.java | 2 +- .../kylin/metadata/acl/PrincipalRowFilter.java | 2 +- .../java/org/apache/kylin/metadata/acl/RowSet.java | 2 +- .../kylin/metadata/acl/SensitiveDataMask.java | 2 +- .../metadata/cachesync/CacheReloadChecker.java | 2 +- .../kylin/metadata/cachesync/CachedCrudAssist.java | 8 +- .../metadata/cube/cuboid/AdaptiveSpanningTree.java | 8 +- .../metadata/cube/cuboid/AggIndexMatcher.java | 6 +- .../kylin/metadata/cube/cuboid/ChooserContext.java | 6 +- .../metadata/cube/cuboid/ComparatorUtils.java | 4 +- .../metadata/cube/cuboid/CuboidScheduler.java | 2 +- .../kylin/metadata/cube/cuboid/IndexMatcher.java | 14 +- .../metadata/cube/cuboid/KECuboidSchedulerV1.java | 8 +- .../metadata/cube/cuboid/KECuboidSchedulerV2.java | 4 +- .../metadata/cube/cuboid/NAggregationGroup.java | 8 +- .../metadata/cube/cuboid/NForestSpanningTree.java | 10 +- .../cube/cuboid/NForestSpanningTreeV2.java | 6 +- .../metadata/cube/cuboid/NLayoutCandidate.java | 4 +- .../metadata/cube/cuboid/NQueryLayoutChooser.java | 10 +- .../kylin/metadata/cube/cuboid/NSpanningTree.java | 4 +- .../metadata/cube/cuboid/NSpanningTreeFactory.java | 4 +- .../kylin/metadata/cube/cuboid/OrderedSet.java | 8 +- .../cube/cuboid/PartitionSpanningTree.java | 6 +- .../metadata/cube/cuboid/TableIndexMatcher.java | 4 +- .../cube/gridtable/NLayoutToGridTableMapping.java | 4 +- .../kylin/metadata/cube/model/IndexEntity.java | 12 +- .../kylin/metadata/cube/model/IndexPlan.java | 33 +- .../kylin/metadata/cube/model/LayoutEntity.java | 16 +- .../cube/model/NCubeJoinedFlatTableDesc.java | 6 +- .../kylin/metadata/cube/model/NDataLayout.java | 10 +- .../cube/model/NDataLoadingRangeManager.java | 2 +- .../kylin/metadata/cube/model/NDataSegDetails.java | 20 +- .../cube/model/NDataSegDetailsManager.java | 2 +- .../kylin/metadata/cube/model/NDataSegment.java | 36 +- .../kylin/metadata/cube/model/NDataflow.java | 8 +- .../cube/model/NDataflowCapabilityChecker.java | 2 +- .../metadata/cube/model/NDataflowManager.java | 6 +- .../metadata/cube/model/NIndexPlanManager.java | 4 +- .../metadata/cube/model/NSegmentConfigHelper.java | 2 +- .../kylin/metadata/cube/model/RuleBasedIndex.java | 12 +- .../metadata/cube/model/SegmentPartition.java | 4 +- .../cube/optimization/AbstractOptStrategy.java | 2 +- .../optimization/IncludedLayoutOptStrategy.java | 2 +- .../metadata/cube/optimization/IndexOptimizer.java | 6 +- .../cube/optimization/IndexOptimizerFactory.java | 2 +- .../optimization/LowFreqLayoutOptStrategy.java | 2 +- .../optimization/SimilarLayoutOptStrategy.java | 6 +- .../cube/realization/HybridRealization.java | 2 +- .../cube/storage/GarbageStorageCollector.java | 2 +- .../cube/storage/ProjectStorageInfoCollector.java | 2 +- .../metadata/cube/storage/StorageVolumeInfo.java | 2 +- .../metadata/cube/utils/IndexPlanReduceUtil.java | 6 +- .../kylin/metadata/cube/utils/StreamingUtils.java | 2 +- .../metadata/datatype/DataTypeSerializer.java | 2 +- .../apache/kylin/metadata/epoch/EpochManager.java | 8 +- .../kylin/metadata/epoch/EpochOrchestrator.java | 2 +- .../metadata/epoch/EpochUpdateLockManager.java | 8 +- .../metadata/favorite/AccelerateRuleUtil.java | 2 +- .../kylin/metadata/favorite/AsyncTaskManager.java | 4 +- .../kylin/metadata/favorite/FavoriteRule.java | 6 +- .../metadata/favorite/FavoriteRuleManager.java | 6 +- .../metadata/filter/function/BuiltInMethod.java | 2 +- .../kylin/metadata/filter/function/Functions.java | 2 +- .../metadata/filter/function/LikeMatchers.java | 2 +- .../org/apache/kylin/metadata/jar/JarTypeEnum.java | 2 +- .../kylin/metadata/model/AntiFlatChecker.java | 6 +- .../org/apache/kylin/metadata/model/Canvas.java | 2 +- .../kylin/metadata/model/ColExcludedChecker.java | 6 +- .../apache/kylin/metadata/model/ColumnDesc.java | 2 +- .../kylin/metadata/model/ComputedColumnDesc.java | 6 +- .../org/apache/kylin/metadata/model/DataType.java | 2 +- .../apache/kylin/metadata/model/FunctionDesc.java | 43 +- .../apache/kylin/metadata/model/FusionModel.java | 2 +- .../org/apache/kylin/metadata/model/ISegment.java | 2 +- .../org/apache/kylin/metadata/model/JoinDesc.java | 4 +- .../kylin/metadata/model/MultiPartitionDesc.java | 8 +- .../model/MultiPartitionKeyMappingImpl.java | 4 +- .../apache/kylin/metadata/model/NDataModel.java | 12 +- .../kylin/metadata/model/NDataModelManager.java | 8 +- .../metadata/model/NTableMetadataManager.java | 4 +- .../kylin/metadata/model/NonEquiJoinCondition.java | 2 +- .../apache/kylin/metadata/model/ParameterDesc.java | 2 +- .../apache/kylin/metadata/model/PartitionDesc.java | 2 +- .../apache/kylin/metadata/model/SegmentRange.java | 6 +- .../org/apache/kylin/metadata/model/Segments.java | 6 +- .../org/apache/kylin/metadata/model/TableDesc.java | 6 +- .../apache/kylin/metadata/model/TableExtDesc.java | 6 +- .../org/apache/kylin/metadata/model/TableRef.java | 2 +- .../org/apache/kylin/metadata/model/TblColRef.java | 2 +- .../org/apache/kylin/metadata/model/TimeRange.java | 2 +- .../kylin/metadata/model/alias/AliasMapping.java | 4 +- .../metadata/model/alias/ExpressionComparator.java | 6 +- .../model/graph/DefaultJoinEdgeMatcher.java | 2 +- .../kylin/metadata/model/graph/JoinsGraph.java | 8 +- .../model/schema/AffectedModelContext.java | 10 +- .../metadata/model/schema/ImportModelContext.java | 8 +- .../metadata/model/schema/ModelEdgeCollector.java | 8 +- .../metadata/model/schema/ReloadTableContext.java | 4 +- .../kylin/metadata/model/schema/SchemaNode.java | 6 +- .../kylin/metadata/model/schema/SchemaUtil.java | 16 +- .../schema/strategy/ComputedColumnStrategy.java | 4 +- .../schema/strategy/MultiplePartitionStrategy.java | 2 +- .../schema/strategy/SchemaChangeStrategy.java | 6 +- .../model/schema/strategy/TableColumnStrategy.java | 4 +- .../schema/strategy/UnOverWritableStrategy.java | 2 +- .../kylin/metadata/model/tool/CalciteParser.java | 12 +- .../kylin/metadata/model/tool/TruthTable.java | 2 +- .../metadata/model/util/ComputedColumnUtil.java | 12 +- .../metadata/model/util/ExpandableMeasureUtil.java | 4 +- .../metadata/model/util/MultiPartitionUtil.java | 2 +- .../util/scd2/SCD2NonEquiCondSimplification.java | 4 +- .../kylin/metadata/project/NProjectLoader.java | 4 +- .../kylin/metadata/project/NProjectManager.java | 4 +- .../kylin/metadata/project/ProjectInstance.java | 6 +- .../kylin/metadata/project/ProjectTable.java | 4 +- .../metadata/query/JdbcQueryHistoryStore.java | 4 +- .../apache/kylin/metadata/query/QueryHistory.java | 2 +- .../apache/kylin/metadata/query/QueryMetrics.java | 2 +- .../kylin/metadata/query/QueryMetricsContext.java | 2 +- .../query/util/QueryHisTransformStandardUtil.java | 2 +- .../metadata/query/util/QueryHistoryUtil.java | 2 +- .../metadata/realization/CapabilityResult.java | 2 +- .../metadata/realization/NRealizationRegistry.java | 2 +- .../kylin/metadata/realization/SQLDigest.java | 2 +- .../recommendation/candidate/JdbcRawRecStore.java | 6 +- .../recommendation/candidate/RawRecItem.java | 2 +- .../recommendation/candidate/RawRecItemTable.java | 2 +- .../recommendation/candidate/RawRecManager.java | 4 +- .../recommendation/entity/CCRecItemV2.java | 6 +- .../recommendation/entity/DimensionRecItemV2.java | 2 +- .../recommendation/entity/LayoutRecItemV2.java | 6 +- .../recommendation/entity/MeasureRecItemV2.java | 4 +- .../recommendation/ref/BrokenRefProxy.java | 2 +- .../metadata/recommendation/ref/DimensionRef.java | 2 +- .../metadata/recommendation/ref/LayoutRef.java | 2 +- .../metadata/recommendation/ref/MeasureRef.java | 2 +- .../recommendation/ref/ModelColumnRef.java | 2 +- .../recommendation/ref/OptRecManagerV2.java | 6 +- .../metadata/recommendation/ref/OptRecV2.java | 12 +- .../recommendation/ref/RecommendationRef.java | 2 +- .../metadata/recommendation/util/RawRecUtil.java | 4 +- .../metadata/resourcegroup/KylinInstance.java | 2 + .../metadata/resourcegroup/ResourceGroup.java | 2 +- .../resourcegroup/ResourceGroupManager.java | 2 +- .../metadata/sourceusage/SourceUsageManager.java | 6 +- .../metadata/sourceusage/SourceUsageRecord.java | 2 +- .../kylin/metadata/streaming/DataParserInfo.java | 2 +- .../metadata/streaming/DataParserManager.java | 2 +- .../streaming/JdbcStreamingJobRecordStore.java | 2 +- .../streaming/JdbcStreamingJobStatsStore.java | 4 +- .../kylin/metadata/streaming/KafkaConfig.java | 4 +- .../org/apache/kylin/metadata/tuple/TupleInfo.java | 2 + .../metadata/upgrade/GlobalAclVersionManager.java | 2 +- .../apache/kylin/metadata/user/ManagedUser.java | 4 +- .../kylin/metadata/user/NKylinUserManager.java | 2 +- .../metadata/usergroup/NUserGroupManager.java | 6 +- .../kylin/metadata/view/LogicalViewManager.java | 2 +- .../apache/kylin/metrics/HdfsCapacityMetrics.java | 2 +- .../kylin/query/util/QueryInterruptChecker.java | 46 ++ .../org/apache/kylin/query/util/QueryLimiter.java | 2 +- .../kylin/query/util}/SlowQueryDetector.java | 56 +- .../org/apache/kylin/rest/constant/Constant.java | 26 +- .../kylin/rest/security/AclEntityFactory.java | 2 +- .../org/apache/kylin/rest/security/AclManager.java | 2 +- .../kylin/rest/security/AclPermissionFactory.java | 2 +- .../kylin/rest/security/KerberosLoginManager.java | 2 +- .../security/PasswordPlaceholderConfigurer.java | 2 +- .../apache/kylin/rest/security/UserAclManager.java | 4 +- .../kylin/rest/security/UserLockRuleUtil.java | 3 +- .../apache/kylin/rest/util/AclPermissionUtil.java | 4 +- .../java/org/apache/kylin/rest/util/AclUtil.java | 4 + .../kylin/rest/util/CreateTableFromJson.java | 4 +- .../org/apache/kylin/source/SourceFactory.java | 7 +- .../adhocquery/DoubleQuotePushDownConverter.java | 4 +- .../kylin/source/adhocquery/IPushDownRunner.java | 2 +- .../adhocquery/PushDownConverterKeyWords.java | 2 +- .../org/apache/kylin/source/jdbc/H2Database.java | 2 +- .../org/apache/kylin/util/BrokenEntityProxy.java | 2 +- .../kylin/cube/gridtable/GridTableMappingTest.java | 4 +- .../percentile/PercentileAggregatorTest.java | 2 +- .../measure/percentile/PercentileCounterTest.java | 2 +- .../kylin/measure/percentile/TDigestTest.java | 2 +- .../kylin/measure/sumlc/SumLCCounterTest.java | 54 ++ .../kylin/measure/topn/TopNCounterBasicTest.java | 2 +- .../apache/kylin/measure/topn/TopNCounterTest.java | 4 +- .../metadata/cachesync/CacheReloadCheckerTest.java | 8 +- .../apache/kylin/metadata/cube/IndexPlanTest.java | 10 +- .../kylin/metadata/cube/NIndexPlanManagerTest.java | 4 +- .../metadata/cube/cuboid/CuboidSchedulerTest.java | 2 +- .../cube/cuboid/PartitionSpanningTreeTest.java | 2 +- .../cube/model/IndexPlanLayoutRemoveTest.java | 2 +- .../metadata/cube/model/NDataflowManagerTest.java | 4 +- .../kylin/metadata/cube/model/NDataflowTest.java | 2 +- .../cube/model/NSegmentConfigHelperTest.java | 2 +- .../cube/model/RuleBasedCuboidDescTest.java | 4 +- .../algorithm/greedy/GreedyAlgorithmTest.java | 2 +- .../storage/ProjectStorageInfoCollectorTest.java | 6 +- .../cube/utils/IndexPlanReduceUtilTest.java | 2 +- .../metadata/epoch/EnhancedUnitOfWorkTest.java | 2 +- .../kylin/metadata/epoch/EpochManagerTest.java | 2 +- .../metadata/epoch/EpochUpdateLockManagerTest.java | 4 +- .../metadata/measure/TopNMeasureTypeTest.java | 4 +- .../metadata/model/ComputedColumnDescTest.java | 2 +- .../kylin/metadata/model/MockJoinGraphBuilder.java | 2 +- .../metadata/model/NDataModelManagerTest.java | 2 +- .../kylin/metadata/model/NDataModelTest.java | 4 +- .../metadata/model/schema/SchemaUtilTest.java | 10 +- .../model/util/ComputedColumnUtilTest.java | 4 +- .../metadata/model/util/FunctionDescTest.java | 2 +- .../metadata/query/RDBMSQueryHistoryDaoTest.java | 2 +- .../metadata/streaming/DataParserManagerTest.java | 2 +- .../metadata/usergroup/NUserGroupManagerTest.java | 2 +- .../apache/kylin/model/tool/CalciteParserTest.java | 2 +- .../kylin/rest/security/UserAclManagerTest.java | 2 +- .../org/apache/kylin/util/MetadataTestUtils.java | 4 +- src/core-metrics/pom.xml | 4 +- .../apache/kylin/common/metrics/MetricsGroup.java | 10 +- .../common/metrics/MetricsInfluxdbReporter.java | 8 +- .../common/metrics/reporter/InfluxdbReporter.java | 12 +- .../common/metrics/service/InfluxDBInstance.java | 16 +- .../metrics/service/JobStatusMonitorMetric.java | 2 +- .../kylin/common/metrics/service/MonitorDao.java | 6 +- .../common/metrics/service/MonitorMetric.java | 4 +- .../common/metrics/service/QueryMonitorMetric.java | 2 +- .../apache/kylin/common/util/InfluxDBUtils.java | 6 +- .../kylin/common/metric/InfluxDBInstanceTest.java | 24 +- .../kylin/common/metric/InfluxMetricsTest.java | 2 +- .../kylin/common/metric/MetricsControllerTest.java | 2 +- .../apache/kylin/common/metric/MonitorDaoTest.java | 2 +- .../src/main/resources/kylinSecurity.xml | 2 + .../src/main/resources/log4j2.xml | 2 +- .../kylin/rest/controller/BaseController.java | 4 +- .../kylin/rest/controller/SampleController.java | 2 +- .../kylin/rest/controller/SegmentController.java | 7 +- .../kylin/rest/controller/SnapshotController.java | 2 +- .../rest/controller/open/OpenSampleController.java | 2 +- .../controller/open/OpenSegmentController.java | 63 ++- .../kylin/rest/controller/v2/JobControllerV2.java | 2 +- .../rest/controller/v2/SegmentControllerV2.java | 2 +- .../kylin/rest/controller/BaseControllerTest.java | 2 +- .../kylin/rest/controller/JobControllerTest.java | 2 +- .../rest/controller/SampleControllerTest.java | 4 +- .../rest/controller/SegmentControllerTest.java | 40 +- .../rest/controller/SnapshotControllerTest.java | 4 +- .../controller/open/OpenSampleControllerTest.java | 2 +- .../controller/open/OpenSegmentControllerTest.java | 106 +++- .../rest/controller/v2/JobControllerV2Test.java | 2 +- .../controller/v2/SegmentControllerV2Test.java | 2 +- .../kylin/rest/filter/SegmentsRequestFilter.java | 2 +- .../rest/request/PartitionsRefreshRequest.java | 4 +- .../apache/kylin/rest/request/SnapshotRequest.java | 4 +- .../rest/request/SnapshotTableConfigRequest.java | 2 +- .../kylin/rest/response/ExecutableResponse.java | 2 +- .../rest/response/ExecutableStepResponse.java | 4 +- .../rest/scheduler/AbstractSchedulerRunnable.java | 2 +- .../rest/scheduler/AutoRefreshSnapshotRunner.java | 6 +- .../scheduler/AutoRefreshSnapshotScheduler.java | 5 +- .../rest/scheduler/BuildSnapshotRunnable.java | 6 +- .../rest/scheduler/CheckSourceTableResult.java | 2 +- .../rest/scheduler/CheckSourceTableRunnable.java | 4 +- .../org/apache/kylin/rest/service/JobService.java | 10 +- .../kylin/rest/service/ModelBuildService.java | 8 +- .../apache/kylin/rest/service/SegmentHelper.java | 4 +- .../apache/kylin/rest/service/SnapshotService.java | 14 +- .../kylin/rest/service/TableSamplingService.java | 11 +- .../scheduler/AutoRefreshSnapshotRunnerTest.java | 6 +- .../AutoRefreshSnapshotSchedulerTest.java | 6 +- .../rest/scheduler/BuildSnapshotRunnableTest.java | 6 +- .../scheduler/CheckSourceTableRunnableTest.java | 2 +- .../kylin/rest/service/DagJobServiceTest.java | 4 +- .../apache/kylin/rest/service/JobErrorTest.java | 8 +- .../apache/kylin/rest/service/JobServiceTest.java | 6 +- .../kylin/rest/service/ModelServiceBuildTest.java | 6 +- .../kylin/rest/service/SegmentHelperTest.java | 2 +- .../kylin/rest/service/SnapshotServiceTest.java | 10 +- .../org/apache/kylin/rest/service/StageTest.java | 12 +- .../rest/service/TableSamplingServiceTest.java | 8 +- .../datasource/adaptor/AbstractJdbcAdaptor.java | 6 +- .../sdk/datasource/adaptor/DefaultAdaptor.java | 2 +- .../kylin/sdk/datasource/adaptor/MssqlAdaptor.java | 2 +- .../sdk/datasource/framework/JdbcConnector.java | 4 +- .../sdk/datasource/framework/conv/ConvMaster.java | 2 +- .../datasource/framework/conv/ConvSqlWriter.java | 2 +- .../framework/conv/DefaultConfigurer.java | 2 +- .../framework/conv/GenericSqlConverter.java | 4 +- .../framework/conv/SqlNodeConverter.java | 2 +- .../datasource/framework/conv/SqlParamsFinder.java | 6 +- .../datasource/framework/def/DataSourceDef.java | 4 +- .../framework/def/DataSourceDefProvider.java | 2 +- .../sdk/datasource/framework/def/TypeDef.java | 4 +- .../sdk/datasource/PushdownRunnerSDKImplTest.java | 2 +- .../apache/kylin/rest/service/KafkaService.java | 4 +- .../apache/kylin/rest/service/SparkDDLService.java | 2 +- .../kylin/rest/service/SparkSourceService.java | 6 +- .../kylin/rest/service/StreamingTableService.java | 4 +- .../apache/kylin/rest/service/TableExtService.java | 120 +++- .../apache/kylin/rest/service/TableService.java | 28 +- .../apache/kylin/rest/service/SparkDDLTest.java | 2 +- .../kylin/rest/service/SparkSourceServiceTest.java | 2 +- .../kylin/rest/service/TableExtServiceTest.java | 49 +- src/distributed-lock-ext/pom.xml | 4 +- .../lock/curator/CuratorDistributedLock.java | 6 +- .../curator/CuratorDistributedLockFactory.java | 6 +- .../java/org/apache/kylin/common/util/ZKUtil.java | 24 +- .../curator/CuratorDistributedLockFactoryTest.java | 6 +- .../localmeta/data/SSB.SUMLC_CC_TEST.csv | 6 + .../localmeta/data/SSB.SUMLC_EXTEND_4X.csv | 12 + .../localmeta/data/SSB.SUM_LC_NULL_TBL.csv | 8 + .../localmeta/data/SSB.SUM_LC_TB.csv | 10 + ...n => 4120b88e-6a3b-aba2-f86e-c692f6588f22.json} | 8 +- .../4120b88e-6a3b-aba2-f86e-c692f6588f22.json | 63 +++ .../4120b88e-6a3b-aba2-f86e-c692f6588f22.json | 135 +++++ .../metadata/sum_lc/table/SSB.SUM_LC_NULL_TBL.json | 63 +++ src/job-service/pom.xml | 21 + .../rest/config/initialize/JobSyncListener.java | 11 +- .../kylin/rest/response/JobInfoResponseV2.java | 2 +- .../apache/kylin/rest/service/ScheduleService.java | 194 ++++++- .../initialize/JobSchedulerListenerTest.java | 2 +- .../rest/config/initialize/JobSchedulerTest.java | 4 +- .../kylin/rest/service/ScheduleServiceTest.java | 9 +- .../kylin/rest/service/ScheduleTenantTest.java | 342 +++++++++++ .../org/apache/kylin/event/HAMetadataTest.java | 2 +- .../apache/kylin/event/ITStorageCleanerTest.java | 2 +- .../org/apache/kylin/event/ModelSemanticTest.java | 22 +- .../org/apache/kylin/event/SchemaChangeTest.java | 6 +- .../apache/kylin/metadata/MetadataPerfTest.java | 6 +- .../kylin/metadata/model/AntiFlatCheckerTest.java | 2 +- .../metadata/model/ColExcludedCheckerTest.java | 6 +- .../org/apache/kylin/newten/BloomFilterTest.java | 218 +++++++ .../newten/BuildAndQueryEmptySegmentsTest.java | 2 +- .../org/apache/kylin/newten/LogicalViewTest.java | 4 +- .../kylin/newten/NBadQueryAndPushDownTest.java | 2 +- .../kylin/newten/NBuildAndQuerySnapshotTest.java | 4 +- .../org/apache/kylin/newten/NFilePruningTest.java | 2 +- .../newten/NManualBuildAndQueryCuboidTest.java | 4 +- .../kylin/newten/NManualBuildAndQueryTest.java | 2 +- .../kylin/newten/NMultiPartitionJobTest.java | 2 +- .../kylin/newten/NQueryPartialMatchIndexTest.java | 2 +- .../kylin/newten/NSpanningTreeCubingJobTest.java | 2 +- .../apache/kylin/newten/ReuseFlatTableTest.java | 2 +- .../apache/kylin/newten/SlowQueryDetectorTest.java | 137 ++++- .../org/apache/kylin/newten/SumLCResultTest.java | 214 +++++++ .../java/org/apache/kylin/query/KylinTestBase.java | 4 +- .../java/org/apache/kylin/query/NKapQueryTest.java | 2 +- .../kylin/query/engine/QueryExecWithMetaTest.java | 243 ++++++++ .../kylin/query/engine/SqlToRelNodeTest.java | 2 +- .../kylin/query/engine/SumExprPlannerTest.java | 2 +- .../kylin/query/rules/CalciteRuleTestBase.java | 2 +- .../rest/controller/NBuildAndQueryMetricsTest.java | 8 +- .../java/org/apache/kylin/util/ExecAndComp.java | 6 +- .../apache/kylin/util/QueryResultComparator.java | 2 +- .../test/resources/query/sql_min_max/query01.sql | 20 + .../test/resources/query/sql_min_max/query02.sql | 27 + .../test/resources/query/sql_min_max/query03-2.sql | 22 + .../test/resources/query/sql_min_max/query03.sql | 22 + .../test/resources/query/sql_min_max/query04.sql | 25 + .../test/resources/query/sql_min_max/query05.sql | 21 + .../test/resources/query/sql_min_max/query06.sql | 32 ++ .../test/resources/query/sql_min_max/query07.sql | 20 + .../test/resources/query/sql_min_max/query08.sql | 37 ++ .../springframework/conf/kylinSecurity.xml | 2 + .../metadata/_global/project/bloomfilter.json | 35 ++ .../c41390c5-b93d-4db3-b167-029874b85a2c.json} | 8 +- .../c41390c5-b93d-4db3-b167-029874b85a2c.json | 63 +++ .../c41390c5-b93d-4db3-b167-029874b85a2c.json | 158 ++++++ .../metadata/bloomfilter/table/SSB.CUSTOMER.json | 68 +++ .../bloomfilter/table/SSB.P_LINEORDER.json | 118 ++++ .../metadata/_global/project/min_max.json | 35 ++ .../39e41387-c17e-1014-53cc-3d4c7b78e286.json | 185 ++++++ .../4623e6d3-2ca2-319e-9a3f-e26bd819734f.json | 101 ++++ .../8a21c1db-f6b3-36cc-e454-84135de78352.json | 85 +++ .../c19de21a-c43a-ad7b-9eec-3928da617025.json | 96 ++++ .../c5eecd91-0b8a-f8d7-89c8-c0afdaa01800.json | 73 +++ .../7b16f7c7-7648-b41c-6a7a-7188660370b5.json | 36 ++ .../7b8cf7c7-7648-b41c-623a-7188660370b5.json | 36 ++ .../c183b315-eb0e-3eac-8607-73c5b1552bce.json | 36 ++ .../d5768bf0-978f-9a46-e295-2026484744ff.json | 36 ++ .../67ffb57f-8231-0534-93b1-a8239ffd26ab.json | 39 ++ .../d36576c3-8ca1-a567-e54d-5d4062d3b742.json | 50 ++ .../39e41387-c17e-1014-53cc-3d4c7b78e286.json | 63 +++ .../4623e6d3-2ca2-319e-9a3f-e26bd819734f.json | 63 +++ .../8a21c1db-f6b3-36cc-e454-84135de78352.json | 63 +++ .../c19de21a-c43a-ad7b-9eec-3928da617025.json | 63 +++ .../c5eecd91-0b8a-f8d7-89c8-c0afdaa01800.json | 84 +++ .../39e41387-c17e-1014-53cc-3d4c7b78e286.json | 227 ++++++++ .../4623e6d3-2ca2-319e-9a3f-e26bd819734f.json | 222 ++++++++ .../8a21c1db-f6b3-36cc-e454-84135de78352.json | 254 +++++++++ .../c19de21a-c43a-ad7b-9eec-3928da617025.json | 181 ++++++ .../c5eecd91-0b8a-f8d7-89c8-c0afdaa01800.json | 179 ++++++ .../metadata/min_max/table/SSB.CUSTOMER.json | 78 +++ .../metadata/min_max/table/SSB.DATES.json | 131 +++++ .../metadata/min_max/table/SSB.LINEORDER.json | 131 +++++ .../metadata/min_max/table/TDVT.TEST_MEASURE.json | 143 +++++ .../sum_lc/metadata/_global.project/sum_lc.json | 6 + .../4120b88e-6a3b-aba2-f86e-c692f6588f22.json} | 8 +- .../648098d6-3009-5b26-3e20-82e494cfdb0c.json | 17 + .../c2f81b79-2c10-dce2-4206-588cab0e68ec.json | 17 + .../f35f2937-9e4d-347a-7465-d64df939e7d6.json | 0 .../4120b88e-6a3b-aba2-f86e-c692f6588f22.json | 63 +++ .../648098d6-3009-5b26-3e20-82e494cfdb0c.json | 63 +++ .../c2f81b79-2c10-dce2-4206-588cab0e68ec.json} | 22 +- .../f35f2937-9e4d-347a-7465-d64df939e7d6.json | 0 .../4120b88e-6a3b-aba2-f86e-c692f6588f22.json | 135 +++++ .../648098d6-3009-5b26-3e20-82e494cfdb0c.json | 110 ++++ .../c2f81b79-2c10-dce2-4206-588cab0e68ec.json | 221 ++++++++ .../f35f2937-9e4d-347a-7465-d64df939e7d6.json | 0 .../metadata/sum_lc/table/SSB.SUMLC_CC_TEST.json | 58 ++ .../metadata/sum_lc/table/SSB.SUMLC_EXTEND_4X.json | 0 .../metadata/sum_lc/table/SSB.SUM_LC_NULL_TBL.json | 63 +++ .../metadata/sum_lc/table/SSB.SUM_LC_TB.json | 53 ++ .../rest/controller/open/OpenModelController.java | 8 +- .../kylin/rest/controller/AclTCRController.java | 2 +- .../rest/controller/CustomFileController.java | 2 +- .../kylin/rest/controller/NAccessController.java | 42 +- .../rest/controller/NMetaStoreController.java | 17 +- .../kylin/rest/controller/NModelController.java | 4 +- .../kylin/rest/controller/NProjectController.java | 2 +- .../kylin/rest/controller/NTableController.java | 22 +- .../kylin/rest/controller/NUserController.java | 4 +- .../rest/controller/open/OpenAccessController.java | 4 +- .../rest/controller/open/OpenAclTCRController.java | 6 +- .../rest/controller/open/OpenTableController.java | 2 +- .../rest/controller/v2/NAccessControllerV2.java | 4 +- .../rest/controller/v2/NModelControllerV2.java | 4 +- .../rest/controller/v2/NUserControllerV2.java | 2 +- .../controller/open/OpenModelControllerTest.java | 4 +- .../rest/controller/AclTCRControllerTest.java | 2 +- .../rest/controller/IndexPlanControllerTest.java | 2 +- .../rest/controller/NAccessControllerTest.java | 115 +++- .../rest/controller/NAccessControllerV2Test.java | 2 +- .../rest/controller/NMetaStoreControllerTest.java | 19 +- .../rest/controller/NModelControllerTest.java | 6 +- .../rest/controller/NModelControllerV2Test.java | 2 +- .../rest/controller/NTableControllerTest.java | 22 +- .../kylin/rest/controller/NUserControllerTest.java | 4 +- .../rest/controller/NUserControllerV2Test.java | 2 +- .../rest/controller/NUserGroupControllerTest.java | 2 +- .../controller/NUserGroupControllerV2Test.java | 2 +- .../rest/controller/OpenAclTCRControllerTest.java | 2 +- .../controller/open/OpenAccessControllerTest.java | 2 +- .../open/OpenMetaStoreControllerTest.java | 2 +- .../controller/open/OpenTableControllerTest.java | 4 +- .../controller/open/OpenUserControllerTest.java | 2 +- .../open/OpenUserGroupControllerTest.java | 2 +- .../config/initialize/ModelDropAddListener.java | 4 +- .../config/initialize/ModelUpdateListener.java | 2 +- .../apache/kylin/rest/model/FuzzyKeySearcher.java | 4 +- .../rest/request/AggShardByColumnsRequest.java | 2 +- .../kylin/rest/request/CreateBaseIndexRequest.java | 2 +- .../rest/request/CreateTableIndexRequest.java | 2 +- .../kylin/rest/request/ModelConfigRequest.java | 2 +- .../apache/kylin/rest/request/ModelRequest.java | 2 +- .../kylin/rest/response/AggIndexResponse.java | 2 +- .../response/ComputedColumnConflictResponse.java | 2 +- .../rest/response/ComputedColumnUsageResponse.java | 4 +- .../kylin/rest/response/IndicesResponse.java | 4 +- .../rest/response/InvalidIndexesResponse.java | 2 +- .../kylin/rest/response/JobInfoResponse.java | 2 +- .../kylin/rest/response/ModelConfigResponse.java | 2 +- .../kylin/rest/response/NDataModelOldParams.java | 2 +- .../kylin/rest/response/NDataModelResponse.java | 2 +- .../kylin/rest/response/NDataModelResponse3X.java | 2 +- .../kylin/rest/response/NDataSegmentResponse.java | 4 +- .../kylin/rest/response/SegmentCheckResponse.java | 2 +- .../kylin/rest/response/SimplifiedMeasure.java | 2 +- .../response/SynchronizedCommentsResponse.java | 4 +- .../kylin/rest/service/AbstractModelService.java | 2 +- .../kylin/rest/service/BaseIndexUpdateHelper.java | 2 +- .../kylin/rest/service/FusionIndexService.java | 2 +- .../kylin/rest/service/FusionModelService.java | 9 +- .../kylin/rest/service/IndexPlanService.java | 48 +- .../kylin/rest/service/MetaStoreService.java | 23 +- .../kylin/rest/service/ModelSemanticHelper.java | 10 +- .../apache/kylin/rest/service/ModelService.java | 24 +- .../apache/kylin/rest/service/ModelTdsService.java | 4 +- .../params/IncrementBuildSegmentParams.java | 2 +- .../org/apache/kylin/rest/util/ModelUtils.java | 2 +- .../rest/util/SCD2SimplificationConvertUtil.java | 2 +- .../org/apache/kylin/tool/bisync/BISyncTool.java | 4 +- .../apache/kylin/tool/bisync/SyncModelBuilder.java | 6 +- .../rest/response/NDataModelResponseTest.java | 6 +- .../apache/kylin/rest/service/BaseIndexTest.java | 4 +- .../kylin/rest/service/FusionIndexServiceTest.java | 2 +- .../kylin/rest/service/FusionModelServiceTest.java | 16 +- .../kylin/rest/service/IndexPlanServiceTest.java | 48 +- .../kylin/rest/service/MetaStoreServiceTest.java | 12 +- .../rest/service/MetaStoreTenantServiceTest.java | 110 ++++ .../service/ModelServiceSemanticUpdateTest.java | 8 +- .../kylin/rest/service/ModelServiceTest.java | 24 +- .../kylin/rest/service/ModelTdsServiceTest.java | 10 +- .../kylin/rest/service/ProjectServiceTest.java | 6 +- .../kylin/rest/service/TableReloadServiceTest.java | 6 +- .../kylin/rest/service/TableServiceTest.java | 6 +- .../org/apache/kylin/rest/util/ModelUtilsTest.java | 4 +- .../kylin/tool/bisync/SyncModelBuilderTest.java | 6 +- .../tool/bisync/tableau/TableauDatasourceTest.java | 6 +- .../src/main/resources/kylinSecurity.xml | 2 + src/query-booter/src/main/resources/log4j2.xml | 2 +- .../org/apache/kylin/query/util/EscapeParser.jj | 4 +- .../org/apache/kylin/query/QueryExtension.java | 2 +- .../kylin/query/engine/data/QueryResult.java | 2 +- .../kylin/query/enumerator/MetadataEnumerator.java | 73 +++ .../apache/kylin/query/enumerator/OLAPQuery.java | 8 +- .../apache/kylin/query/relnode/ContextUtil.java | 4 +- .../kylin/query/relnode/KapAggregateRel.java | 6 +- .../apache/kylin/query/relnode/KapFilterRel.java | 8 +- .../org/apache/kylin/query/relnode/KapJoinRel.java | 6 +- .../apache/kylin/query/relnode/KapLimitRel.java | 4 +- .../apache/kylin/query/relnode/KapMinusRel.java | 2 +- .../kylin/query/relnode/KapNonEquiJoinRel.java | 8 +- .../apache/kylin/query/relnode/KapProjectRel.java | 6 +- .../org/apache/kylin/query/relnode/KapSortRel.java | 4 +- .../apache/kylin/query/relnode/KapTableScan.java | 4 +- .../apache/kylin/query/relnode/KapUnionRel.java | 2 +- .../apache/kylin/query/relnode/KapValuesRel.java | 2 +- .../apache/kylin/query/relnode/KapWindowRel.java | 2 +- .../kylin/query/relnode/OLAPAggregateRel.java | 6 +- .../apache/kylin/query/relnode/OLAPContext.java | 140 ++++- .../kylin/query/relnode/OLAPContextProp.java | 2 +- .../apache/kylin/query/relnode/OLAPFilterRel.java | 6 +- .../apache/kylin/query/relnode/OLAPJoinRel.java | 13 +- .../apache/kylin/query/relnode/OLAPLimitRel.java | 2 +- .../apache/kylin/query/relnode/OLAPProjectRel.java | 24 +- .../org/apache/kylin/query/relnode/OLAPRel.java | 4 +- .../apache/kylin/query/relnode/OLAPSortRel.java | 2 +- .../apache/kylin/query/relnode/OLAPTableScan.java | 24 +- .../query/relnode/OLAPToEnumerableConverter.java | 2 +- .../apache/kylin/query/relnode/OLAPUnionRel.java | 2 +- .../apache/kylin/query/relnode/OLAPValuesRel.java | 2 +- .../apache/kylin/query/relnode/OLAPWindowRel.java | 2 +- .../apache/kylin/query/routing/QueryRouter.java | 4 +- .../kylin/query/routing/RealizationCheck.java | 4 +- .../kylin/query/routing/RealizationChooser.java | 16 +- .../kylin/query/routing/RealizationPruner.java | 6 +- .../rules/RemoveBlackoutRealizationsRule.java | 2 +- .../rules/RemoveUncapableRealizationsRule.java | 4 +- .../query/routing/rules/SegmentPruningRule.java | 2 +- .../query/schema/KylinRelDataTypeFactoryImpl.java | 8 +- .../org/apache/kylin/query/schema/OLAPSchema.java | 2 +- .../org/apache/kylin/query/schema/OLAPTable.java | 8 +- .../security/HackSelectStarWithColumnACL.java | 4 +- .../org/apache/kylin/query/security/RowFilter.java | 2 +- .../apache/kylin/query/util/AsyncQueryUtil.java | 2 +- .../kylin/query/util/ComputedColumnRewriter.java | 2 +- .../kylin/query/util/ConvertToComputedColumn.java | 16 +- .../kylin/query/util/DefaultQueryTransformer.java | 2 +- .../apache/kylin/query/util/EscapeFunction.java | 4 +- .../org/apache/kylin/query/util/PushDownUtil.java | 10 +- .../kylin/query/util/QueryAliasMatchInfo.java | 4 +- .../apache/kylin/query/util/QueryAliasMatcher.java | 16 +- .../org/apache/kylin/query/util/QueryUtil.java | 24 +- .../java/org/apache/kylin/query/util/RawSql.java | 2 +- .../query/util/RestoreFromComputedColumn.java | 12 +- .../kylin/query/util/RexToTblColRefTranslator.java | 6 +- .../java/org/apache/kylin/query/util/RexUtils.java | 2 +- .../apache/kylin/query/util/SqlNodeExtractor.java | 4 +- .../apache/kylin/query/util/SqlSubqueryFinder.java | 2 +- .../apache/kylin/util/FilterConditionExpander.java | 2 +- .../rest/controller/NAsyncQueryController.java | 50 +- .../rest/controller/NAsyncQueryControllerV2.java | 41 +- .../kylin/rest/controller/NQueryController.java | 4 +- .../controller/QuerySQLBlacklistController.java | 2 +- .../kylin/rest/controller/SparderUIController.java | 22 +- .../rest/controller/v2/NQueryControllerV2.java | 2 +- .../rest/controller/NAsyncQueryControllerTest.java | 107 +++- .../controller/NAsyncQueryControllerV2Test.java | 12 +- .../rest/controller/NQueryControllerTest.java | 4 +- .../rest/controller/NQueryControllerV2Test.java | 2 +- .../rest/controller/NQueryMetaControllerTest.java | 2 +- .../QuerySQLBlacklistControllerTest.java | 2 +- .../SnapshotSourceTableStatsServiceTest.scala | 2 +- .../ProjectCleanOldQueryResultListener.java | 2 +- .../apache/kylin/rest/response/SQLResponse.java | 4 +- .../apache/kylin/rest/response/SQLResponseV2.java | 2 +- .../response/SnapshotSourceTableStatsResponse.java | 2 +- .../kylin/rest/service/AsyncQueryService.java | 18 +- .../kylin/rest/service/ModelQueryService.java | 2 +- .../apache/kylin/rest/service/MonitorService.java | 24 +- .../kylin/rest/service/QueryHistoryScheduler.java | 2 +- .../kylin/rest/service/QueryHistoryService.java | 9 +- .../rest/service/QuerySQLBlacklistService.java | 2 +- .../apache/kylin/rest/service/QueryService.java | 48 +- .../service/SnapshotSourceTableStatsService.java | 6 +- .../kylin/rest/service/SparderUIService.java | 149 +++++ .../kylin/rest/util/QueryCacheSignatureUtil.java | 6 +- .../apache/kylin/rest/util/QueryRequestLimits.java | 10 +- .../org/apache/kylin/rest/util/SparderUIUtil.java | 2 +- .../rest/metrics/QueryMetricsContextTest.java | 6 +- .../rest/service/AsyncQueryTenantServiceTest.java | 93 +++ .../kylin/rest/service/AysncQueryServiceTest.java | 24 +- .../kylin/rest/service/MockedQueryHistoryDao.java | 2 +- .../kylin/rest/service/ModelQueryServiceTest.java | 4 +- .../kylin/rest/service/ModelServiceQueryTest.java | 2 +- .../kylin/rest/service/MonitorServiceTest.java | 2 +- .../rest/service/QueryHistorySchedulerTest.java | 2 +- .../rest/service/QueryHistoryServiceTest.java | 2 +- .../rest/service/QueryMetricsListenerTest.java | 2 +- .../rest/service/QuerySQLBlacklistServiceTest.java | 2 +- .../kylin/rest/service/QueryServiceTest.java | 8 +- .../kylin/rest/service/SparderUIServiceTest.java | 185 ++++++ .../rest/util/QueryCacheSignatureUtilTest.java | 2 +- .../optrule/AbstractAggCaseWhenFunctionRule.java | 2 +- .../query/optrule/AggregateMultipleExpandRule.java | 2 +- .../query/optrule/AggregateProjectReduceRule.java | 2 +- .../kap/query/optrule/CorrReduceFunctionRule.java | 6 +- .../kap/query/optrule/ExtensionOlapJoinRule.java | 4 +- .../optrule/FilterJoinConditionMergeRule.java | 2 +- .../kap/query/optrule/JoinFilterRule.java | 15 +- .../query/optrule/KapAggFilterTransposeRule.java | 4 +- .../kap/query/optrule/KapAggJoinTransposeRule.java | 6 +- .../kap/query/optrule/KapAggProjectMergeRule.java | 2 +- .../query/optrule/KapAggProjectTransposeRule.java | 6 +- .../kap/query/optrule/KapAggSumCastRule.java | 2 +- .../query/optrule/KapCountDistinctJoinRule.java | 4 +- .../kap/query/optrule/KapFilterJoinRule.java | 33 +- .../kyligence/kap/query/optrule/KapJoinRule.java | 4 +- .../kap/query/optrule/KapModelViewRule.java | 2 +- .../kap/query/optrule/KapProjectMergeRule.java | 2 +- .../kap/query/optrule/KapProjectRule.java | 12 +- .../kap/query/optrule/KapSumCastTransposeRule.java | 2 +- .../query/optrule/KapSumTransCastToThenRule.java | 4 +- .../kap/query/optrule/OLAPProjectRule.java | 14 +- .../kap/query/optrule/SumBasicOperatorRule.java | 2 +- .../kap/query/optrule/SumConstantConvertRule.java | 2 +- .../apache/kylin/query/blacklist/SQLBlacklist.java | 2 +- .../kylin/query/blacklist/SQLBlacklistManager.java | 2 +- .../apache/kylin/query/engine/AsyncQueryJob.java | 6 +- .../apache/kylin/query/engine/PlannerFactory.java | 4 +- .../org/apache/kylin/query/engine/QueryExec.java | 10 +- .../kylin/query/engine/QueryRoutingEngine.java | 98 +++- .../org/apache/kylin/query/engine/UDFRegistry.java | 2 +- .../engine/exec/sparder/SparderQueryPlanExec.java | 4 +- .../query/engine/view/ModelViewGenerator.java | 2 +- .../apache/kylin/query/engine/view/ViewSchema.java | 2 +- .../org/apache/kylin/query/udf/otherUdf/IfUDF.java | 2 +- .../apache/kylin/query/util/AggExpressionUtil.java | 6 +- .../kylin/query/util/FilterPushDownUtil.java | 6 +- .../query/util/FirstRoundContextCutStrategy.java | 2 +- .../java/org/apache/kylin/query/util/HepUtils.java | 2 +- .../query/util/PushDownQueryRequestLimits.java} | 31 +- .../query/util/QueryReCutContextStrategy.java | 2 +- .../apache/kylin/query/SlowQueryDetectorTest.java | 1 + .../kylin/query/engine/AsyncQueryJobTest.java | 6 +- .../kylin/query/engine/QueryRoutingEngineTest.java | 166 +++++- .../engine/mask/QueryDependentColumnMaskTest.java | 2 +- .../engine/mask/QuerySensitiveDataMaskTest.java | 2 +- .../kylin/query/engine/view/ModelViewTest.java | 2 +- .../kylin/query/routing/RealizationCheckTest.java | 2 +- .../security/HackSelectStarWithColumnACLTest.java | 4 +- .../apache/kylin/query/security/RowFilterTest.java | 2 +- .../kylin/query/util/ColumnRowTypeMockUtil.java | 2 +- .../kylin/query/util/DialectConverterTest.java | 2 +- .../kylin/query/util/ExpressionComparatorTest.java | 8 +- .../query/util/ImplicitCCOnModelViewTest.java | 2 +- .../apache/kylin/query/util/ImplicitCCTest.java | 10 +- .../org/apache/kylin/query/util/QueryUtilTest.java | 2 +- .../query/util/RexToTblColRefTranslatorTest.java | 8 +- .../clickhouse/ClickHouseSimpleITTestWithBlob.java | 4 +- .../clickhouse/ClickHouseSimpleITWithS3Test.java | 4 +- .../kap/newten/clickhouse/ClickHouseUtils.java | 4 +- .../newten/clickhouse/ClickHouseV1QueryTest.java | 2 +- .../newten/clickhouse/ClickHouseV2QueryTest.java | 2 +- .../kap/secondstorage/EndpointParametersTest.java | 4 +- .../kap/secondstorage/IncrementalTest.java | 4 +- .../IncrementalWithIntPartitionTest.java | 4 +- .../kap/secondstorage/SecondStorageIndexTest.java | 10 +- .../kap/secondstorage/SecondStorageJavaTest.java | 4 +- .../SecondStorageLockOperatorTest.java | 4 +- .../kap/secondstorage/SecondStorageLockTest.java | 12 +- .../kap/secondstorage/abnormal/QueryRouteTest.java | 2 +- .../abnormal/SecondaryCatalogTest.java | 2 +- .../kap/secondstorage/tdvt/TDVTHiveTest.java | 6 +- .../kyligence/kap/secondstorage/tdvt/TDVTTest.java | 6 +- .../utils/SecondStorageMetadataHelperTest.java | 2 +- .../kap/clickhouse/ClickHouseStorage.java | 2 +- .../database/ClickHouseQueryOperator.java | 6 +- .../kap/clickhouse/ddl/ClickHouseCreateTable.java | 2 +- .../clickhouse/job/ClickHouseIndexCleanJob.java | 2 +- .../kap/clickhouse/job/ClickHouseJob.java | 2 +- .../kap/clickhouse/job/ClickHouseLoad.java | 4 +- .../kap/clickhouse/job/ClickHouseMerge.java | 4 +- .../clickhouse/job/ClickHouseModelCleanJob.java | 2 +- .../kap/clickhouse/job/ClickHouseRefresh.java | 2 +- .../job/ClickHouseRefreshSecondaryIndexJob.java | 2 +- .../job/ClickHouseTableStorageMetric.java | 2 +- .../job/ClickhouseRefreshSecondaryIndex.java | 4 +- .../kyligence/kap/clickhouse/job/DataLoader.java | 4 +- .../kap/clickhouse/job/HdfsTableSource.java | 2 +- .../io/kyligence/kap/clickhouse/job/LoadInfo.java | 2 +- .../kap/clickhouse/job/RefreshSecondaryIndex.java | 2 +- .../kap/clickhouse/job/UtTableSource.java | 2 +- .../management/ClickHouseConfigLoader.java | 2 +- .../metadata/ClickHouseMetadataOperator.java | 3 +- .../kyligence/kap/clickhouse/job/BlobUrlTest.java | 2 +- .../kap/clickhouse/job/ClickHouseLoadTest.java | 2 +- .../management/ClickHouseConfigLoaderTest.java | 2 +- .../management/OpenSecondStorageEndpoint.java | 2 +- .../management/SecondStorageScheduleService.java | 2 +- .../management/SecondStorageService.java | 10 +- .../management/OpenSecondStorageEndpointTest.java | 2 +- .../management/SecondStorageEndpointTest.java | 2 +- .../SecondStorageConcurrentTestUtil.java | 2 +- .../kap/secondstorage/SecondStorageConstants.java | 2 +- .../kap/secondstorage/SecondStorageLockUtils.java | 2 +- .../kap/secondstorage/SecondStorageNodeHelper.java | 2 +- .../secondstorage/SecondStorageQueryRouteUtil.java | 2 +- .../kap/secondstorage/SecondStorageUtil.java | 12 +- .../kap/secondstorage/config/ClusterInfo.java | 2 +- .../secondstorage/ddl/SkippingIndexChooser.java | 2 +- .../factory/SecondStorageFactoryUtils.java | 2 +- .../kap/secondstorage/metadata/Manager.java | 2 +- .../kap/secondstorage/metadata/NodeGroup.java | 2 +- .../kap/secondstorage/metadata/TableData.java | 6 +- .../kap/secondstorage/metadata/TableEntity.java | 4 +- .../kap/secondstorage/metadata/TableFlow.java | 4 +- .../kap/secondstorage/metadata/TablePartition.java | 4 +- .../kap/secondstorage/metadata/TablePlan.java | 4 +- .../secondstorage/util/SecondStorageJobUtil.java | 2 +- .../kylin/job/SecondStorageJobParamUtil.java | 2 +- .../handler/AbstractSecondStorageJobHanlder.java | 2 +- .../SecondStorageSegmentLoadJobHandler.java | 34 +- .../datasources/jdbc/v2/SecondStorageCatalog.scala | 2 +- .../kap/secondstorage/SecondStorageUtilTest.java | 2 +- .../kap/secondstorage/config/ClusterTest.java | 2 +- .../kap/secondstorage/metadata/NodeGroupTest.java | 2 +- .../java/org/apache/kylin/rest/BaseFilter.java | 153 +++++ .../org/apache/kylin/rest/BootstrapServer.java | 4 +- .../java/org/apache/kylin/rest/JobNodeFilter.java | 2 +- .../apache/kylin/rest/MultiTenantModeFilter.java | 224 ++++++++ .../org/apache/kylin/rest/QueryNodeFilter.java | 155 ++--- .../rest/config/KylinRequestHandlerSelectors.java | 6 +- .../rest/discovery/KylinServiceDiscoveryCache.java | 8 +- .../discovery/KylinServiceDiscoveryClient.java | 4 +- .../rest/health/FileSystemHealthIndicator.java | 2 +- .../rest/health/MetaStoreHealthIndicator.java | 2 +- src/server/src/main/resources/application.yaml | 4 +- src/server/src/main/resources/log4j2.xml | 2 +- .../java/org/apache/kylin/rest/BaseFilterTest.java | 87 +++ .../kylin/rest/MultiTenantModeFilterTest.java | 191 +++++++ .../discovery/KylinServiceDiscoveryCacheTest.java | 2 +- .../kylin/source/hive/BeelineHiveClient.java | 4 +- .../apache/kylin/source/hive/CLIHiveClient.java | 2 +- .../apache/kylin/source/hive/HiveCmdBuilder.java | 2 +- .../kylin/source/hive/HiveMetadataExplorer.java | 2 +- .../kylin/source/hive/HiveTableMetaBuilder.java | 2 +- src/spark-project/engine-spark/pom.xml | 4 +- .../engine/spark/application/SparkApplication.java | 4 +- .../engine/spark/builder/NBuildSourceInfo.java | 2 +- .../builder/PartitionDictionaryBuilderHelper.java | 4 +- .../spark/job/DefaultSparkBuildJobHandler.java | 8 +- .../spark/job/ExecutableAddCuboidHandler.java | 2 +- .../spark/job/ExecutableAddSegmentHandler.java | 2 +- .../engine/spark/job/ExecutableHandlerFactory.java | 2 +- .../spark/job/NSparkCleanupAfterMergeStep.java | 4 +- .../kylin/engine/spark/job/NSparkCubingJob.java | 8 +- .../kylin/engine/spark/job/NSparkCubingStep.java | 2 +- .../kylin/engine/spark/job/NSparkExecutable.java | 14 +- .../kylin/engine/spark/job/NSparkMergingJob.java | 6 +- .../kylin/engine/spark/job/NSparkMergingStep.java | 4 +- .../spark/job/NSparkSnapshotBuildingStep.java | 2 +- .../engine/spark/job/NSparkUpdateMetadataStep.java | 2 +- .../kylin/engine/spark/job/NTableSamplingJob.java | 4 +- .../engine/spark/job/step/NStageForBuild.java | 2 +- .../engine/spark/job/step/NStageForMerge.java | 2 +- .../engine/spark/job/step/NStageForSnapshot.java | 2 +- .../spark/job/step/NStageForTableSampling.java | 2 +- .../job/step/NStageForWaitingForYarnResource.java | 2 +- .../spark/merger/AfterBuildResourceMerger.java | 6 +- .../merger/AfterMergeOrRefreshResourceMerger.java | 4 +- .../spark/merger/SparkJobMetadataMerger.java | 2 +- .../kylin/engine/spark/mockup/CsvSource.java | 8 +- .../spark/source/NSparkCubingSourceInput.java | 94 ++- .../spark/source/NSparkMetadataExplorer.java | 2 +- .../spark/source/NSparkTableMetaBuilder.java | 2 +- .../spark/source/NSparkTableMetaExplorer.java | 4 +- .../kylin/engine/spark/source/SparkSqlUtil.java | 2 +- .../spark/stats/analyzer/TableAnalyzerJob.java | 4 +- .../engine/spark/utils/ComputedColumnEvalUtil.java | 2 +- .../spark/utils/HiveTransactionTableHelper.java | 2 +- .../kylin/cluster/ClusterManagerFactory.scala | 2 +- .../apache/kylin/cluster/K8sClusterManager.scala | 2 +- .../apache/kylin/cluster/YarnClusterManager.scala | 2 +- .../engine/spark/builder/CreateFlatTable.scala | 2 +- .../spark/builder/DictionaryBuilderHelper.java | 8 +- .../engine/spark/builder/SnapshotBuilder.scala | 10 +- .../engine/spark/builder/ZKJaasConfiguration.scala | 2 +- .../apache/kylin/engine/spark/job/DFBuildJob.java | 8 +- .../apache/kylin/engine/spark/job/DFChooser.scala | 4 +- .../apache/kylin/engine/spark/job/DFMergeJob.java | 6 +- .../kylin/engine/spark/job/MockedDFBuildJob.java | 4 +- .../kylin/engine/spark/job/PartitionExec.scala | 2 +- .../engine/spark/job/RDPartitionBuildExec.scala | 5 +- .../engine/spark/job/RDSegmentBuildExec.scala | 4 +- .../spark/job/ResourceDetectBeforeCubingJob.java | 6 +- .../spark/job/ResourceDetectBeforeMergingJob.java | 4 +- .../spark/job/ResourceDetectBeforeSampling.java | 4 +- .../kylin/engine/spark/job/SegmentBuildJob.java | 4 +- .../kylin/engine/spark/job/SegmentExec.scala | 8 +- .../apache/kylin/engine/spark/job/SegmentJob.java | 2 +- .../kylin/engine/spark/job/SegmentMergeJob.java | 2 +- .../kylin/engine/spark/job/SnapshotBuildJob.java | 6 +- .../kylin/engine/spark/job/TableAnalysisJob.scala | 23 + .../apache/kylin/engine/spark/job/UdfManager.scala | 2 +- .../kylin/engine/spark/job/stage/StageExec.scala | 4 +- .../engine/spark/job/stage/build/BuildLayer.scala | 2 +- .../engine/spark/job/stage/build/BuildStage.scala | 2 +- .../job/stage/build/FlatTableAndDictBase.scala | 14 +- .../spark/job/stage/build/GenerateFlatTable.scala | 4 +- .../build/partition/PartitionBuildLayer.scala | 2 +- .../build/partition/PartitionBuildStage.scala | 2 +- .../partition/PartitionFlatTableAndDictBase.scala | 2 +- .../partition/PartitionGatherFlatTableStats.scala | 2 +- .../engine/spark/job/stage/merge/MergeStage.scala | 2 +- .../merge/partition/PartitionMergeStage.scala | 4 +- .../engine/spark/model/PartitionFlatTableDesc.java | 2 +- .../engine/spark/model/SegmentFlatTableDesc.java | 6 +- .../kylin/engine/spark/smarter/DFSmartBuild.scala | 2 +- .../spark/smarter/IndexDependencyParser.scala | 2 +- .../kylin/engine/spark/utils/SparkConfHelper.java | 4 +- .../kylin/engine/spark/utils/ThreadUtils.scala | 2 +- .../org/apache/spark/application/JobMonitor.scala | 7 +- .../spark/autoheal/ExceptionTerminator.scala | 2 +- .../kylin/engine/spark/IndexDataConstructor.java | 8 +- .../engine/spark/NLocalWithSparkSessionTest.java | 2 +- .../spark/application/SparkApplicationTest.java | 4 +- .../engine/spark/dict/NGlobalDictionaryV2Test.java | 2 +- .../kylin/engine/spark/job/JobManagerTest.java | 4 +- .../kylin/engine/spark/job/MockResumeBuildJob.java | 2 +- .../engine/spark/job/NSparkCubingJobTest.java | 2 +- .../engine/spark/job/NSparkMergingJobTest.java | 5 +- .../engine/spark/job/NSparkSnapshotJobTest.java | 2 +- .../engine/spark/job/NTableSamplingJobTest.java | 60 ++ .../engine/spark/job/SparkBuildJobHandlerTest.java | 2 +- .../SparkCleanupTransactionalTableStepTest.java | 3 +- .../GenerateFlatTableWithSparkSessionTest.java | 2 +- .../kylin/engine/spark/mockup/CsvSourceTest.java | 2 +- .../model/planner/CuboIdToLayoutUtilsTest.java | 3 +- ...parkCubingSourceInputBySparkDataSourceTest.java | 2 +- .../spark/source/NSparkCubingSourceInputTest.java | 2 +- .../engine/spark/source/NSparkSourceTest.java | 2 +- .../spark/utils/ComputedColumnEvalUtilTest.java | 2 +- .../utils/HiveTransactionTableHelperTest.java | 2 +- .../engine/spark/utils/SparkConfHelperTest.java | 2 +- .../kylin/cluster/YarnClusterManagerTest.scala | 4 +- .../engine/spark/builder/TestClusterMonitor.scala | 2 +- .../kylin/engine/spark/builder/TestDFChooser.scala | 4 +- .../TestPartitionDictionaryBuilderHelper.scala | 2 +- .../kylin/engine/spark/job/TestDFBuildJob.scala | 2 +- .../engine/spark/job/TestRDSegmentBuildExec.scala | 2 +- .../job/stage/build/RefreshColumnBytesTest.scala | 2 +- .../PartitionRefreshColumnBytesTest.scala | 2 +- .../spark/source/NSparkTableMetaExplorerTest.scala | 2 +- .../kylin/engine/spark/utils/HDFSUtilsTest.scala | 2 +- .../engine/spark/utils/TestJobMetricsUtils.scala | 5 +- .../sql/hive/utils/TestResourceDetectUtils.scala | 2 +- .../hive/utils/TestResourceDetectUtilsByMock.scala | 34 +- .../kylin/cache/fs/AbstractCacheFileSystem.java | 6 +- .../cache/fs/AlluxioHdfsFileInputStreamTest.java | 2 +- .../org/apache/kylin/source/jdbc/JdbcExplorer.java | 4 +- .../apache/kylin/source/jdbc/JdbcSourceInput.java | 4 +- .../apache/kylin/source/jdbc/JdbcTableReader.java | 2 +- .../kylin/source/jdbc/JdbcSourceInputTest.java | 2 +- .../apache/kylin/source/jdbc/JdbcSourceTest.java | 28 +- .../query/mask/CompositeQueryResultMasks.java | 2 +- .../kylin/query/mask/QueryDependentColumnMask.java | 2 +- .../kylin/query/mask/QuerySensitiveDataMask.java | 4 +- .../pushdown/JdbcPushDownConnectionManager.java | 2 +- .../apache/kylin/query/util/PartitionsFilter.java | 2 +- .../org/apache/spark/sql/LogicalViewLoader.java | 4 +- .../plugin/diagnose/DiagnoseExecutorPlugin.scala | 2 +- .../kylin/query/pushdown/SparkSqlClient.scala | 69 ++- .../kylin/query/runtime/CalciteToSparkPlaner.scala | 95 +++- .../apache/kylin/query/runtime/SparkEngine.java | 2 +- .../kylin/query/runtime/plan/ResultPlan.scala | 19 +- .../kylin/query/runtime/plan/TableScanPlan.scala | 87 ++- .../kylin/query/util/SparderDerivedUtil.scala | 2 +- .../apache/kylin/query/util/SparkJobTrace.scala | 2 +- .../scala/org/apache/spark/sql/SparderEnv.scala | 28 +- .../sql/catalyst/expressions/ExpressionUtils.scala | 6 +- .../sql/catalyst/expressions/KapExpresssions.scala | 2 + .../spark/sql/manager/SparderLookupManager.scala | 2 +- .../org/apache/spark/sql/udf/SparderAggFun.scala | 2 +- .../org/apache/spark/sql/udf/UdfManager.scala | 2 +- .../query/pushdown/PushDownRunnerJdbcImplTest.java | 4 +- .../pushdown/PushDownRunnerSparkImplTest.java | 88 ++- .../query/pushdown/PushdownJobCancelTest.java | 4 +- .../kylin/query/runtime/plan/TestResultPlan.java | 14 +- .../kylin/query/sql/KylinDataFrameManagerTest.java | 2 +- .../org/apache/spark/sql/ColumnBatchTest.scala | 2 +- .../org/apache/spark/util/KylinHiveUtilsTest.scala | 2 +- .../spark/filter/BloomFilterSkipCollector.java | 121 ++++ .../engine/spark/filter/ParquetBloomFilter.java | 170 ++++++ .../engine/spark/filter/QueryFiltersCollector.java | 151 +++++ .../kylin/engine/spark/utils/Repartitioner.java | 10 +- .../common/logging/AbstractHdfsLogAppender.java | 4 +- .../logging/SparkExecutorHdfsLogAppender.java | 2 +- .../SparkExecutorHdfsRollingLogAppender.java | 2 +- .../AsyncProfilerExecutorPlugin.scala | 2 +- .../kylin/engine/spark/utils/StorageUtils.scala | 14 +- .../BuildAsyncProfilerDriverPlugin.scala | 2 +- .../org/apache/spark/sql/SparderConstants.scala | 1 + .../org/apache/spark/sql/SparderTypeUtil.scala | 26 + .../sql/execution/datasource/FilePruner.scala | 18 +- .../datasource/ShardFileStatusCache.scala | 2 +- .../spark/sql/hive/utils/ResourceDetectUtils.scala | 163 ++++-- .../scala/org/apache/spark/sql/udaf/SumLC.scala | 100 ++-- .../engine/spark/utils/RepartitionerTest.java | 2 +- .../sql/execution/datasource/FilePrunerSuite.scala | 2 +- .../scala/io/kyligence/kap/common/SSSource.scala | 2 +- .../kap/common/SystemPropertyHelper.scala | 56 ++ .../scala/org/apache/kylin/common/JobSupport.scala | 2 +- .../kylin/rest/request/StreamingJobActionEnum.java | 2 +- .../rest/request/StreamingJobParamsRequest.java | 2 +- .../kylin/rest/service/StreamingJobService.java | 2 +- .../rest/service/StreamingJobServiceTest.java | 4 +- .../src/test/resources/kylinSecurity.xml | 2 + .../org/apache/kylin/parser/StreamingParser.java | 4 +- .../apache/kylin/sample/KafkaSourceHandler.java | 6 +- .../kylin/streaming/app/StreamingApplication.java | 2 +- .../streaming/app/StreamingBuildApplication.java | 2 +- .../streaming/app/StreamingMergeApplication.java | 2 +- .../kylin/streaming/app/StreamingMergeEntry.java | 2 +- .../streaming/jobs/AbstractSparkJobLauncher.java | 4 +- .../kylin/streaming/jobs/StreamingDFBuildJob.java | 4 +- .../kylin/streaming/jobs/StreamingJobListener.java | 4 +- .../kylin/streaming/jobs/StreamingJobUtils.java | 2 +- .../streaming/jobs/impl/StreamingJobLauncher.java | 4 +- .../jobs/scheduler/StreamingJobStatusWatcher.java | 2 +- .../jobs/scheduler/StreamingScheduler.java | 8 +- .../metadata/BuildLayoutWithRestUpdate.java | 2 +- .../kylin/streaming/metadata/StreamingJobMeta.java | 2 +- .../org/apache/kylin/streaming/util/JobKiller.java | 2 +- .../kylin/streaming/util/MetaInfoUpdater.java | 2 +- .../kylin/streaming/CreateStreamingFlatTable.scala | 2 +- .../kylin/streaming/PartitionRowIterator.scala | 2 +- .../kylin/streaming/app/StreamingEntry.scala | 2 +- .../kylin/parser/AbstractDataParserTest.java | 2 +- .../streaming/jobs/StreamingDFBuildJobTest.java | 2 +- .../streaming/jobs/StreamingDFMergeJobTest.java | 4 +- .../streaming/manager/StreamingJobManagerTest.java | 2 +- .../apache/kylin/streaming/util/JobKillerTest.java | 2 +- .../kylin/streaming/util/RestSupportTest.java | 2 +- .../kylin/streaming/util/StreamingTestCase.java | 2 +- .../kylin/tool/AbstractInfoExtractorTool.java | 2 +- .../java/org/apache/kylin/tool/AuditLogTool.java | 2 +- .../org/apache/kylin/tool/ClickhouseDiagTool.java | 2 +- .../main/java/org/apache/kylin/tool/ConfTool.java | 2 +- .../org/apache/kylin/tool/JobDiagInfoTool.java | 4 +- .../java/org/apache/kylin/tool/KylinConfigCLI.java | 2 +- .../java/org/apache/kylin/tool/KylinLogTool.java | 6 +- .../org/apache/kylin/tool/KylinTableCCCleanup.java | 4 +- .../org/apache/kylin/tool/MaintainModeTool.java | 2 +- .../org/apache/kylin/tool/MetricsInfoTool.java | 4 +- .../apache/kylin/tool/QueryHistoryAccessCLI.java | 2 +- .../java/org/apache/kylin/tool/RollbackTool.java | 6 +- .../org/apache/kylin/tool/SystemUsageTool.java | 4 +- .../tool/constant/SensitiveConfigKeysConstant.java | 4 +- .../org/apache/kylin/tool/daemon/KapGuardian.java | 4 +- .../daemon/handler/AbstractCheckStateHandler.java | 2 +- .../kylin/tool/garbage/DataflowCleanerCLI.java | 4 +- .../kylin/tool/kerberos/KerberosLoginTask.java | 2 +- .../apache/kylin/tool/obf/KylinConfObfuscator.java | 2 +- .../org/apache/kylin/tool/obf/MappingRecorder.java | 4 +- .../org/apache/kylin/tool/obf/ResultRecorder.java | 2 +- .../kylin/tool/security/AdminUserInitCLI.java | 2 +- .../kylin/tool/security/KylinPasswordResetCLI.java | 2 +- .../snapshot/SnapshotSourceTableStatsTool.java | 4 +- .../kylin/tool/upgrade/CheckProjectModeCLI.java | 4 +- .../upgrade/CreateTableLayoutCandidateCLI.java | 2 +- .../kylin/tool/upgrade/DeleteFavoriteQueryCLI.java | 4 +- .../apache/kylin/tool/upgrade/MigrateJobTool.java | 2 +- .../apache/kylin/tool/upgrade/RenameEntity.java | 4 +- .../tool/upgrade/RenameProjectResourceTool.java | 2 +- .../kylin/tool/upgrade/RenameUserResourceTool.java | 2 +- .../apache/kylin/tool/upgrade/UpdateModelCLI.java | 4 +- .../kylin/tool/upgrade/UpdateSessionTableCLI.java | 2 +- .../kylin/tool/upgrade/UpdateUserGroupCLI.java | 2 +- .../kylin/tool/util/HadoopConfExtractor.java | 2 +- .../org/apache/kylin/tool/util/MetadataUtil.java | 2 +- .../org/apache/kylin/tool/AuditLogToolTest.java | 4 +- .../org/apache/kylin/tool/AuditLogWorkerTest.java | 6 +- .../apache/kylin/tool/DataflowCleanerCLITest.java | 2 +- .../org/apache/kylin/tool/JobDiagInfoToolTest.java | 2 +- .../org/apache/kylin/tool/MetadataToolTest.java | 4 +- .../apache/kylin/tool/QueryDiagInfoToolTest.java | 2 +- .../org/apache/kylin/tool/RollbackToolTest.java | 6 +- .../org/apache/kylin/tool/StorageCleanerTest.java | 2 +- .../org/apache/kylin/tool/SystemUsageToolTest.java | 2 +- .../apache/kylin/tool/YarnApplicationToolTest.java | 4 +- .../kylin/tool/domain/KEStatusCheckerTest.java | 2 +- .../snapshot/SnapshotSourceTableStatsToolTest.java | 12 +- 1319 files changed, 14127 insertions(+), 3644 deletions(-) copy src/{streaming-service/src/main/java/org/apache/kylin/rest/request/StreamingJobParamsRequest.java => common-service/src/main/java/org/apache/kylin/rest/request/MetadataBackupRequest.java} (75%) create mode 100644 src/common-service/src/main/java/org/apache/kylin/rest/service/FileService.java create mode 100644 src/common-service/src/main/java/org/apache/kylin/rest/service/RouteService.java copy src/common-service/src/test/java/org/apache/kylin/rest/service/{AccessServiceTest.java => AccessServiceWithProjectTest.java} (66%) create mode 100644 src/common-service/src/test/java/org/apache/kylin/rest/service/FileServiceTest.java create mode 100644 src/common-service/src/test/java/org/apache/kylin/rest/service/MetadataBackupServiceJdbcMetadataTest.java create mode 100644 src/common-service/src/test/java/org/apache/kylin/rest/service/RouteServiceTest.java rename src/core-common/src/main/java/{io/kyligence/kap/guava20 => org/apache/kylin/guava30}/shaded/common/eventbus/KylinEventException.java (95%) rename src/core-common/src/main/java/{io/kyligence/kap/guava20 => org/apache/kylin/guava30}/shaded/common/eventbus/SyncThrowExceptionEventBus.java (95%) rename src/{query-common => core-common}/src/main/java/org/apache/kylin/query/exception/UserStopQueryException.java (100%) create mode 100644 src/core-common/src/main/java/org/apache/kylin/query/util/CancelFlag.java rename src/core-metadata/src/main/java/{com/google => org/apache/kylin/guava30/shaded}/common/cache/CustomKeyEquivalenceCacheBuilder.java (94%) create mode 100644 src/core-metadata/src/main/java/org/apache/kylin/query/util/QueryInterruptChecker.java rename src/{core-common => core-metadata}/src/main/java/org/apache/kylin/query/util/QueryLimiter.java (97%) rename src/{query-common/src/main/java/org/apache/kylin/query => core-metadata/src/main/java/org/apache/kylin/query/util}/SlowQueryDetector.java (76%) create mode 100644 src/core-metadata/src/test/java/org/apache/kylin/measure/sumlc/SumLCCounterTest.java create mode 100644 src/examples/test_case_data/localmeta/data/SSB.SUMLC_CC_TEST.csv create mode 100644 src/examples/test_case_data/localmeta/data/SSB.SUMLC_EXTEND_4X.csv create mode 100644 src/examples/test_case_data/localmeta/data/SSB.SUM_LC_NULL_TBL.csv create mode 100644 src/examples/test_case_data/localmeta/data/SSB.SUM_LC_TB.csv copy src/examples/test_case_data/localmeta/metadata/sum_lc/dataflow/{f35f2937-9e4d-347a-7465-d64df939e7d6.json => 4120b88e-6a3b-aba2-f86e-c692f6588f22.json} (61%) create mode 100644 src/examples/test_case_data/localmeta/metadata/sum_lc/index_plan/4120b88e-6a3b-aba2-f86e-c692f6588f22.json create mode 100644 src/examples/test_case_data/localmeta/metadata/sum_lc/model_desc/4120b88e-6a3b-aba2-f86e-c692f6588f22.json create mode 100644 src/examples/test_case_data/localmeta/metadata/sum_lc/table/SSB.SUM_LC_NULL_TBL.json create mode 100644 src/job-service/src/test/java/org/apache/kylin/rest/service/ScheduleTenantTest.java create mode 100644 src/kylin-it/src/test/java/org/apache/kylin/newten/BloomFilterTest.java create mode 100644 src/kylin-it/src/test/java/org/apache/kylin/newten/SumLCResultTest.java create mode 100644 src/kylin-it/src/test/java/org/apache/kylin/query/engine/QueryExecWithMetaTest.java create mode 100644 src/kylin-it/src/test/resources/query/sql_min_max/query01.sql create mode 100644 src/kylin-it/src/test/resources/query/sql_min_max/query02.sql create mode 100644 src/kylin-it/src/test/resources/query/sql_min_max/query03-2.sql create mode 100644 src/kylin-it/src/test/resources/query/sql_min_max/query03.sql create mode 100644 src/kylin-it/src/test/resources/query/sql_min_max/query04.sql create mode 100644 src/kylin-it/src/test/resources/query/sql_min_max/query05.sql create mode 100644 src/kylin-it/src/test/resources/query/sql_min_max/query06.sql create mode 100644 src/kylin-it/src/test/resources/query/sql_min_max/query07.sql create mode 100644 src/kylin-it/src/test/resources/query/sql_min_max/query08.sql create mode 100644 src/kylin-it/src/test/resources/ut_meta/bloomfilter/metadata/_global/project/bloomfilter.json copy src/{examples/test_case_data/localmeta/metadata/sum_lc/dataflow/f35f2937-9e4d-347a-7465-d64df939e7d6.json => kylin-it/src/test/resources/ut_meta/bloomfilter/metadata/bloomfilter/dataflow/c41390c5-b93d-4db3-b167-029874b85a2c.json} (54%) create mode 100644 src/kylin-it/src/test/resources/ut_meta/bloomfilter/metadata/bloomfilter/index_plan/c41390c5-b93d-4db3-b167-029874b85a2c.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/bloomfilter/metadata/bloomfilter/model_desc/c41390c5-b93d-4db3-b167-029874b85a2c.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/bloomfilter/metadata/bloomfilter/table/SSB.CUSTOMER.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/bloomfilter/metadata/bloomfilter/table/SSB.P_LINEORDER.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/_global/project/min_max.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow/39e41387-c17e-1014-53cc-3d4c7b78e286.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow/4623e6d3-2ca2-319e-9a3f-e26bd819734f.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow/8a21c1db-f6b3-36cc-e454-84135de78352.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow/c19de21a-c43a-ad7b-9eec-3928da617025.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow/c5eecd91-0b8a-f8d7-89c8-c0afdaa01800.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow_details/39e41387-c17e-1014-53cc-3d4c7b78e286/7b16f7c7-7648-b41c-6a7a-7188660370b5.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow_details/39e41387-c17e-1014-53cc-3d4c7b78e286/7b8cf7c7-7648-b41c-623a-7188660370b5.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow_details/4623e6d3-2ca2-319e-9a3f-e26bd819734f/c183b315-eb0e-3eac-8607-73c5b1552bce.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow_details/8a21c1db-f6b3-36cc-e454-84135de78352/d5768bf0-978f-9a46-e295-2026484744ff.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow_details/c19de21a-c43a-ad7b-9eec-3928da617025/67ffb57f-8231-0534-93b1-a8239ffd26ab.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/dataflow_details/c5eecd91-0b8a-f8d7-89c8-c0afdaa01800/d36576c3-8ca1-a567-e54d-5d4062d3b742.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/index_plan/39e41387-c17e-1014-53cc-3d4c7b78e286.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/index_plan/4623e6d3-2ca2-319e-9a3f-e26bd819734f.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/index_plan/8a21c1db-f6b3-36cc-e454-84135de78352.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/index_plan/c19de21a-c43a-ad7b-9eec-3928da617025.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/index_plan/c5eecd91-0b8a-f8d7-89c8-c0afdaa01800.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/model_desc/39e41387-c17e-1014-53cc-3d4c7b78e286.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/model_desc/4623e6d3-2ca2-319e-9a3f-e26bd819734f.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/model_desc/8a21c1db-f6b3-36cc-e454-84135de78352.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/model_desc/c19de21a-c43a-ad7b-9eec-3928da617025.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/model_desc/c5eecd91-0b8a-f8d7-89c8-c0afdaa01800.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/table/SSB.CUSTOMER.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/table/SSB.DATES.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/table/SSB.LINEORDER.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/query_min_max_with_meta/metadata/min_max/table/TDVT.TEST_MEASURE.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/_global.project/sum_lc.json copy src/{examples/test_case_data/localmeta/metadata/sum_lc/dataflow/f35f2937-9e4d-347a-7465-d64df939e7d6.json => kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/dataflow/4120b88e-6a3b-aba2-f86e-c692f6588f22.json} (61%) create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/dataflow/648098d6-3009-5b26-3e20-82e494cfdb0c.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/dataflow/c2f81b79-2c10-dce2-4206-588cab0e68ec.json rename src/{examples/test_case_data/localmeta => kylin-it/src/test/resources/ut_meta/sum_lc}/metadata/sum_lc/dataflow/f35f2937-9e4d-347a-7465-d64df939e7d6.json (100%) create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/index_plan/4120b88e-6a3b-aba2-f86e-c692f6588f22.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/index_plan/648098d6-3009-5b26-3e20-82e494cfdb0c.json copy src/{examples/test_case_data/localmeta/metadata/sum_lc/index_plan/f35f2937-9e4d-347a-7465-d64df939e7d6.json => kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/index_plan/c2f81b79-2c10-dce2-4206-588cab0e68ec.json} (61%) rename src/{examples/test_case_data/localmeta => kylin-it/src/test/resources/ut_meta/sum_lc}/metadata/sum_lc/index_plan/f35f2937-9e4d-347a-7465-d64df939e7d6.json (100%) create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/model_desc/4120b88e-6a3b-aba2-f86e-c692f6588f22.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/model_desc/648098d6-3009-5b26-3e20-82e494cfdb0c.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/model_desc/c2f81b79-2c10-dce2-4206-588cab0e68ec.json rename src/{examples/test_case_data/localmeta => kylin-it/src/test/resources/ut_meta/sum_lc}/metadata/sum_lc/model_desc/f35f2937-9e4d-347a-7465-d64df939e7d6.json (100%) create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/table/SSB.SUMLC_CC_TEST.json rename src/{examples/test_case_data/localmeta => kylin-it/src/test/resources/ut_meta/sum_lc}/metadata/sum_lc/table/SSB.SUMLC_EXTEND_4X.json (100%) create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/table/SSB.SUM_LC_NULL_TBL.json create mode 100644 src/kylin-it/src/test/resources/ut_meta/sum_lc/metadata/sum_lc/table/SSB.SUM_LC_TB.json create mode 100644 src/modeling-service/src/test/java/org/apache/kylin/rest/service/MetaStoreTenantServiceTest.java create mode 100644 src/query-common/src/main/java/org/apache/kylin/query/enumerator/MetadataEnumerator.java create mode 100644 src/query-service/src/main/java/org/apache/kylin/rest/service/SparderUIService.java create mode 100644 src/query-service/src/test/java/org/apache/kylin/rest/service/AsyncQueryTenantServiceTest.java create mode 100644 src/query-service/src/test/java/org/apache/kylin/rest/service/SparderUIServiceTest.java copy src/{core-metadata/src/main/java/org/apache/kylin/metadata/acl/RowSet.java => query/src/main/java/org/apache/kylin/query/util/PushDownQueryRequestLimits.java} (55%) create mode 100644 src/server/src/main/java/org/apache/kylin/rest/BaseFilter.java create mode 100644 src/server/src/main/java/org/apache/kylin/rest/MultiTenantModeFilter.java create mode 100644 src/server/src/test/java/org/apache/kylin/rest/BaseFilterTest.java create mode 100644 src/server/src/test/java/org/apache/kylin/rest/MultiTenantModeFilterTest.java create mode 100644 src/spark-project/spark-common/src/main/java/org/apache/kylin/engine/spark/filter/BloomFilterSkipCollector.java create mode 100644 src/spark-project/spark-common/src/main/java/org/apache/kylin/engine/spark/filter/ParquetBloomFilter.java create mode 100644 src/spark-project/spark-common/src/main/java/org/apache/kylin/engine/spark/filter/QueryFiltersCollector.java create mode 100644 src/spark-project/spark-it/src/test/scala/io/kyligence/kap/common/SystemPropertyHelper.scala