This is an automated email from the ASF dual-hosted git repository.

rongr pushed a change to branch multi_stage_query_engine
in repository https://gitbox.apache.org/repos/asf/pinot.git


    omit 07a0bdf4f7 add support for project/filter pushdown (#8558)
    omit 791248a318 Use proto for query plan serialization (#8479)
    omit 005d5b9965 add pinot-query-runtime (#8412)
    omit 4874e203c9 Add pinot-query-planner module (#8340)
    omit b6763beee2 make github action trigger on multi_stage_query_engine 
branch (#8342)
     add 6849441b5b add tracing SPI (#8457)
     add e986d00548 Make the PR template simpler (#8455)
     add 8e21aec1c2 Add endpoints for some finer control on minion tasks (#8486)
     add 7dd374f2c2 fix netty-bom import (#8495)
     add 9314e60080 Reduce the size of arrays allocated in DataBlockCache 
(#8496)
     add 436e8ee85c Error message if the dimension table in memory hasn't been 
populated (#8505)
     add fd3eceaea0 bump roaringbitmap 0.9.26 (#8504)
     add b2e2a7e503 Remove cron for github action to build and push docker 
images (#8501)
     add 2935bb5c8c upgrade snappy version (#8494)
     add be163f6f55 Timestamp type index (#8343)
     add 68c89b74f5 Cleanup and simplify the integration test instance start 
(#8507)
     add c0309a2737 Expose instance config and starter in ClusterTest for 
easier extension (#8510)
     add 3556e7149e Improve segment metadata fetch API (#8128)
     add bb46e466af Fixing the bug of missing dot to extract sub props from 
ingestion job filesytem spec and minion segmentNameGeneratorSpec (#8511)
     add 44da1a098f DataTable deserialization improvements (#8499)
     add 348353be88 Handle authentication in pulsar pinot connector (#8338)
     add e4b1d050a2 upgrade to hadoop 2.10.1 due to cves (#8478)
     add ad6ae117b5 add shouldNotMerge field in segment metadata to indicate if 
it is safe to merge (#8508)
     add 4f30ab2b89 Manual tracing (#8485)
     add 900f01f288 Make getConfigMapWithPrefix auto append tailing dot if 
missing (#8522)
     add e594388c20 remove redundant operator names (#8528)
     add 45e382741e use ProcessHandle.pid when available (#8533)
     add 6debfa9771 Add zk metadata to segment's metadata.properties file 
(#8502)
     add a2f63921f0 Fix table creation bug for invalid realtime consumer props 
(#8509)
     add cb8bcc4d14 Add customizable parser module (#8484)
     add 400b603abd open javac modules for google-java-format (#8531)
     add 58ffe947b6 Add adhoc minion task creation endpoint (#8465)
     add 476679da86 Allow disabling dict generation for High cardinality 
columns (#8398)
     add 12227c5d70 Set 'shutdownInProgress' in server config when server 
starts before the startup check (#8525)
     add 5ae960d0de Add new compat test cases and data (#7235) (#8036)
     add aadd0cddcf make ConfigUtils testable without illegal reflective access 
(#8530)
     add fe7247fb96 create task queue as needed for adhoc task (#8540)
     add d503d505b2 Only discover public methods annotated with @ScalarFunction 
(#8544)
     add 05a7f28b73 don't snapshot environment in ConfigUtils (#8548)
     add 734d203a50 Fix BigDecimal ser/de on negative scale (#8553)
     add 87fb007f7d add scalar function for cast so it can be calculated at 
compile time (#8535)
     add 6fb7e521ef Add tracing for operator planning (#8523)
     add ce0a08a49d Add connection based FailureDetector (#8491)
     add 2704d88732 Make execute adhoc task call async to prevent timeout 
(#8555)
     add acfc618d0c This dependency should be packaged in the jar itself and 
not provided scope (#8561)
     add f48a22a141 Make spark dependency provided (#8559)
     add 82f7aefe3d Ensure all records are pushed in Pulsar Consumer Test 
(#8554)
     add 829ede946c Bump up azure dep versions to resolve conflict with netty 
(#8552)
     add 399cb97f30 Add brokerURL and better handle TimeoutException in 
QueryRunner (#8539)
     add bc363d8247 endpoints to get and delete minion task metadata (#8551)
     add 6eff17754a Enable range index on raw columns and push counts down to 
range index when v2 is in use (#8513)
     add 5687f27214 Simplify the parameters for 
DistinctCountSmartHLLAggregationFunction (#8566)
     add b025f437eb Add PercentileSmartTDigestAggregationFunction (#8565)
     add a08f8c637a Use MultiThreadedHttpConnectionManager in 
SegmentStatusChecker (#8568)
     add 727d0c9cf1 range index shouldn’t be loaded when the column is sorted 
(#8571)
     add 7e060fdbdd Improve StarTree traversal performance (#8570)
     add d2cfa0737a Invoke checkpoint before closing partition group consumer 
(#8564)
     add fe1423162e Move controllerUrlUtils to SPI (#8573)
     add 4f788b2995 Fix the deadlock in ClusterChangeMediator (#8572)
     add 2fba4b0cb7 Add query option to use more replica groups (#8550)
     add a954d85d29 Adding missing prometheus metrics to controller.yml (#8576)
     add d15847828a Package kafka 0.9 shaded jar to pinot-distribution (#8569)
     add f200ec5156 Added multi column partitioning for offline table (#8255)
     add 5eddb19d24 Merge ControllerSegmentUrlBuilder into 
ControllerRequestURLBuilder (#8575)
     add 8b5314dd97 Add minion health check endpoint (#8574)
     add d6001a258a Minimize data movement between instances in pools (#8483)
     add 75bacdfc00 Add dependencies for native netty and epoll to pinot-core 
(#8592)
     add 4d36f3dfbf Refactor quickstart data source (#8567)
     add 1d6ac065c1 Fix the upsert metadata bug when adding segment with same 
comparison value (#8590)
     add b96ca6c1fb upgrade lz4-java to 1.8.0 (#8594)
     add b0144cfba1 symlink pinot-java-client to jdk8 as well (#8591)
     add 89836a57c0 Enable minion liveness probe (#8593)
     add 6484742ada Bug fix: Complex type transformer should not be created for 
empty config (#8600)
     add b38a59be7c Indicate what fields are getting ignored when adding 
configs (#8514)
     add 7ab421d255 Make endReplaceSegments() idempotent. (#8599)
     add 5d54386ba4 Fix bug in segment rebalance with replica group segment 
assignment (#8598)
     add 232b946419 [pinot-spark-connector] Add option to connect using GRPC 
(#8481)
     add 71a6e6379b adding in OBJECT type resolver (#8608)
     add c373cb86e5 Add support for retry in kinesis producer (#8609)
     add d12c963b37 Add platform classifier to netty-tcnative-boringssl-static 
(#8615)
     add fc12dce890 [PQL Deprecation] Migrate all queries test to SQL (#8613)
     add 498387a323 Support st_contains using H3 index (#8498)
     add d282e45523 Support single-valued BigDecimal in schema, type 
conversion, SQL statements and minimum set of transforms. (#8503)
     add b5690a7137 Adding DML definition and parse SQL InsertFile (#8557)
     add d49d1173f9 Support filtering on bool/scalar fields without evaluator 
(#8518)
     add 4e14101f57 Add unrecognizedProperties to schema and tableConfigs APIs 
(#8606)
     add 72e1844559 Broker tracing (#8628)
     add 60ece7af17 Support BigDecimal raw value forward index; Support 
BigDecimal in many transforms and operators (#8622)
     add 01dda9ddfa pinot-java-client controller based broker selector (#8467)
     add f693bd3edc Update default helm image to latest (#8621)
     add 2e0f74d208 bugfix on timeout string format in KinesisDataProducer 
(#8631)
     add cced818177 Store batch message ids vs calculating them (#8612)
     add 907b0239b1 Implement Native Text Operator (#8384)
     add 1b2c278dae [PQL Cleanup] Remove all PQL related code (#8626)
     add 7edad89d61 Fix the potential NPE for timestamp index rewrite (#8633)
     add 43e1298e32 allow automatic tracing when a request is sampled by a 
registered tracer (#8629)
     add 9873ed9b96 add a experiment API for upsert heap memory estimation 
(#8355)
     add b3172464ce add FIRSTWITHTIME aggregate function support #7647 (#8181)
     add d5740856f4 Support conjugates for scalar functions, add more scalar 
functions (#8582)
     add 9bc1e059fb Allow rerunning startReplaceSegment with the same 
segmentsTo if the previous protocol fails in the middle (lineage entry in 
IN_PROGRESS status). (#8639)
     add 784860e3b4 Remove BrokerResponse from QueryContext (#8643)
     add 2896b1a9da In BrokerRequestHandler, directly work on PinotQuery if 
possible (#8644)
     add 74ee7252b4 Revert "Bug fix: Complex type transformer should not be 
created for empty config (#8600)" (#8646)
     add 4a0c574983 allow to take data outside the time window by negating the 
window filter (#8640)
     add 60e2706533 Remove geometry check for st_contain and st_within (#8620)
     add 328c0c23ec Access Control management Development (#8314) (#8314)
     add e8ddc1dbe8 make github action trigger on multi_stage_query_engine 
branch (#8342)
     add e819d11fa8 Add pinot-query-planner module (#8340)
     add 0e38a5f4d5 add pinot-query-runtime (#8412)
     add 1bbded3eac Use proto for query plan serialization (#8479)
     add 58df2c2003 add support for project/filter pushdown (#8558)

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (07a0bdf4f7)
            \
             N -- N -- N   refs/heads/multi_stage_query_engine (58df2c2003)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .github/PULL_REQUEST_TEMPLATE.md                   |   47 +-
 .github/workflows/build-pinot-docker-image.yml     |   12 +-
 .github/workflows/build-presto-docker-image.yml    |    3 -
 .github/workflows/build-superset-docker-image.yml  |    3 -
 .github/workflows/pinot_compatibility_tests.yml    |   10 +-
 .github/workflows/pinot_tests.yml                  |   50 +-
 LICENSE-binary                                     |    6 +-
 .../config/FeatureTest3-schema.json                |   55 +
 ...ta-00.csv => FeatureTest2-data-realtime-00.csv} |    0
 .../config/data/FeatureTest3-data-realtime-00.csv  |  307 +++
 .../data/recordReaderConfig-FeatureTest3.json      |    5 +
 .../sample-test-suite/config/dataGenerator.py      |   93 +
 .../sample-test-suite/config/feature-test-1.json   |    2 +-
 .../feature-test-3-realtime-stream-config.json     |    8 +
 .../config/feature-test-3-realtime.json            |   59 +
 .../queries/feature-test-3-sql-realtime.queries    |   47 +
 .../query-results/feature-test-1-rest-sql.results  |  126 +-
 .../feature-test-2-sql-realtime.results            |   62 +-
 .../feature-test-3-sql-realtime.results            |   47 +
 .../sample-test-suite/post-broker-rollback.yaml    |   16 +-
 .../post-controller-rollback.yaml                  |   14 +-
 .../sample-test-suite/post-server-rollback.yaml    |   16 +-
 .../sample-test-suite/post-server-upgrade.yaml     |   16 +-
 .../sample-test-suite/pre-broker-upgrade.yaml      |   15 +-
 .../sample-test-suite/pre-controller-upgrade.yaml  |   26 +-
 .../sample-test-suite/pre-server-upgrade.yaml      |   15 +-
 config/checkstyle.xml                              |    1 +
 contrib/pinot-fmpp-maven-plugin/pom.xml            |  111 +
 .../main/java/org/apache/pinot/fmpp/FMPPMojo.java  |  270 +++
 .../org/apache/pinot/fmpp/MavenDataLoader.java     |   55 +-
 docker/images/pinot/Dockerfile                     |    2 +-
 .../jmx_prometheus_javaagent/configs/broker.yml    |    3 +
 .../configs/controller.yml                         |   17 +-
 .../etc/jmx_prometheus_javaagent/configs/pinot.yml |    3 +
 headerdefinition.xml                               |   10 +
 kubernetes/helm/pinot/values.yaml                  |    8 +-
 .../broker/api/resources/PinotBrokerDebug.java     |   34 +-
 .../broker/api/resources/PinotClientRequest.java   |  126 +-
 .../pinot/broker/broker/AccessControlFactory.java  |   21 +-
 .../broker/BasicAuthAccessControlFactory.java      |    2 +
 .../broker/broker/BrokerAdminApiApplication.java   |    4 +-
 .../broker/ZkBasicAuthAccessControlFactory.java    |  122 +
 .../broker/broker/helix/BaseBrokerStarter.java     |   20 +-
 .../broker/broker/helix/ClusterChangeMediator.java |  112 +-
 ...BaseExponentialBackoffRetryFailureDetector.java |  190 ++
 .../failuredetector/ConnectionFailureDetector.java |   29 +-
 .../broker/failuredetector/FailureDetector.java    |  105 +
 .../failuredetector/FailureDetectorFactory.java    |   73 +
 .../failuredetector/NoOpFailureDetector.java       |   42 +-
 .../requesthandler/BaseBrokerRequestHandler.java   | 1172 +++-------
 .../requesthandler/BrokerRequestHandler.java       |    4 +-
 .../requesthandler/GrpcBrokerRequestHandler.java   |   16 +-
 .../SingleConnectionBrokerRequestHandler.java      |   85 +-
 .../pinot/broker/routing/BrokerRoutingManager.java |  179 +-
 .../instanceselector/BalancedInstanceSelector.java |    2 +-
 .../instanceselector/BaseInstanceSelector.java     |    8 +-
 .../routing/instanceselector/InstanceSelector.java |    2 +-
 .../ReplicaGroupInstanceSelector.java              |   19 +-
 ...ava => MultiPartitionColumnsSegmentPruner.java} |  187 +-
 .../segmentpruner/SegmentPrunerFactory.java        |   31 +-
 ...ava => SinglePartitionColumnSegmentPruner.java} |   90 +-
 .../routing/segmentpruner/TimeSegmentPruner.java   |   94 +-
 .../segmentselector/RealtimeSegmentSelector.java   |    5 +-
 .../broker/broker/HelixBrokerStarterTest.java      |    5 +-
 .../broker/helix/ClusterChangeMediatorTest.java    |   89 +
 .../ConnectionFailureDetectorTest.java             |  155 ++
 ...elixExternalViewBasedQueryQuotaManagerTest.java |    2 +-
 .../request/PqlAndCalciteSqlCompatibilityTest.java |  152 --
 .../requesthandler/BrokerRequestOptionsTest.java   |  116 +-
 .../requesthandler/DistinctCountRewriteTest.java   |   18 -
 .../LiteralOnlyBrokerRequestTest.java              |   15 +-
 .../requesthandler/QueryLimitOverrideTest.java     |   72 +-
 .../broker/requesthandler/QueryValidationTest.java |  200 +-
 .../instanceselector/InstanceSelectorTest.java     |  243 ++
 .../routing/segmentpruner/SegmentPrunerTest.java   |  208 +-
 .../segmentselector/SegmentSelectorTest.java       |    5 +-
 .../java/org/apache/pinot/client/BrokerCache.java  |  153 ++
 .../pinot/client/BrokerCacheUpdaterPeriodic.java   |   83 +
 .../java/org/apache/pinot/client/BrokerData.java   |   31 +-
 .../org/apache/pinot/client/ConnectionFactory.java |   31 +
 .../client/ControllerBasedBrokerSelector.java      |   48 +-
 .../apache/pinot/client/UpdatableBrokerCache.java  |   63 +-
 .../org/apache/pinot/client/utils/DriverUtils.java |    7 +
 pinot-clients/pom.xml                              |    1 -
 pinot-common/pom.xml                               |   92 +
 .../antlr4/org/apache/pinot/pql/parsers/PQL2.g4    |  188 --
 pinot-common/src/main/codegen/config.fmpp          |  540 +++++
 .../src/main/codegen/includes/parserImpls.ftl      |  103 +
 .../assignment/InstanceAssignmentConfigUtils.java  |    5 +-
 .../config/provider/AccessControlUserCache.java    |  177 ++
 .../pinot/common/config/provider/TableCache.java   |   13 +
 .../pinot/common/exception/QueryException.java     |    8 +-
 .../apache/pinot/common/function/FunctionInfo.java |    1 -
 .../pinot/common/function/FunctionInvoker.java     |    1 -
 .../pinot/common/function/FunctionRegistry.java    |    4 +
 .../pinot/common/function/FunctionUtils.java       |    8 +
 .../function/scalar/ComparisonFunctions.java       |   65 +
 .../scalar/DataTypeConversionFunctions.java        |   34 +
 .../common/function/scalar/DateTimeFunctions.java  |    2 +-
 .../function/scalar/ObjectFunctions.java}          |   24 +-
 .../apache/pinot/common/http/MultiGetRequest.java  |    8 +-
 .../pinot/common/metadata/ZKMetadataProvider.java  |   69 +-
 .../metadata/instance/InstanceZKMetadata.java      |    2 +-
 .../apache/pinot/common/metrics/BrokerGauge.java   |    3 +-
 .../apache/pinot/common/metrics/BrokerMeter.java   |    2 +-
 .../pinot/common/metrics/ControllerMeter.java      |    3 +-
 .../apache/pinot/common/minion/MinionClient.java   |   21 +
 .../common/minion/MinionRequestURLBuilder.java     |    6 +-
 .../pinot/common/request/AggregationInfo.java      |  809 -------
 .../apache/pinot/common/request/BrokerRequest.java | 2396 ++------------------
 .../apache/pinot/common/request/DataSource.java    |   14 +-
 .../apache/pinot/common/request/Expression.java    |   33 +-
 .../pinot/common/request/ExpressionType.java       |    2 +-
 .../pinot/common/request/FilterOperator.java       |   96 -
 .../apache/pinot/common/request/FilterQuery.java   |  929 --------
 .../pinot/common/request/FilterQueryMap.java       |  458 ----
 .../org/apache/pinot/common/request/Function.java  |   19 +-
 .../org/apache/pinot/common/request/GroupBy.java   |  701 ------
 .../pinot/common/request/HavingFilterQuery.java    |  931 --------
 .../pinot/common/request/HavingFilterQueryMap.java |  453 ----
 .../apache/pinot/common/request/Identifier.java    |   14 +-
 .../pinot/common/request/InstanceRequest.java      |   79 +-
 .../org/apache/pinot/common/request/Literal.java   |    2 +-
 .../apache/pinot/common/request/PinotQuery.java    |   69 +-
 .../apache/pinot/common/request/QuerySource.java   |   14 +-
 .../org/apache/pinot/common/request/QueryType.java |  781 -------
 .../org/apache/pinot/common/request/Selection.java |  808 -------
 .../apache/pinot/common/request/SelectionSort.java |  496 ----
 .../request/context/RequestContextUtils.java       |  203 +-
 .../request/context/predicate/Predicate.java       |   12 +-
 .../context/predicate/TextContainsPredicate.java   |   76 +
 .../request/transform/TransformExpressionTree.java |  233 --
 .../common/response/broker/AggregationResult.java  |  145 --
 .../response/broker/BrokerResponseNative.java      |   28 +-
 .../common/response/broker/SelectionResults.java   |   59 -
 .../org/apache/pinot/common/utils/BcryptUtils.java |   45 +-
 .../org/apache/pinot/common/utils/DataSchema.java  |   41 +-
 .../org/apache/pinot/common/utils/DataTable.java   |   14 +-
 .../common/utils/FileUploadDownloadClient.java     |    1 +
 .../pinot/{pql/parsers => common}/utils/Pair.java  |    2 +-
 .../apache/pinot/common/utils/PinotDataType.java   |  154 +-
 .../pinot/common/utils/SqlResultComparator.java    |   14 +
 .../utils/config/AccessControlUserConfigUtils.java |   88 +
 .../common/utils/request/FilterQueryTree.java      |   74 -
 .../pinot/common/utils/request/RequestUtils.java   |  157 +-
 .../apache/pinot/parsers/CompilerConstants.java    |   31 -
 .../utils/BrokerRequestComparisonUtils.java        |  303 ---
 .../apache/pinot/parsers/utils/ParserUtils.java    |  230 --
 .../parsers/PinotQuery2BrokerRequestConverter.java |  300 ---
 .../apache/pinot/pql/parsers/Pql2AstListener.java  |  442 ----
 .../pql/parsers/Pql2CompilationException.java      |   36 -
 .../org/apache/pinot/pql/parsers/Pql2Compiler.java |  201 --
 .../pinot/pql/parsers/pql2/ast/BaseAstNode.java    |  116 -
 .../parsers/pql2/ast/BetweenPredicateAstNode.java  |   99 -
 .../parsers/pql2/ast/BooleanOperatorAstNode.java   |   93 -
 .../pql2/ast/ComparisonPredicateAstNode.java       |  219 --
 .../pql/parsers/pql2/ast/FunctionCallAstNode.java  |  136 --
 .../pinot/pql/parsers/pql2/ast/GroupByAstNode.java |   53 -
 .../pql/parsers/pql2/ast/IdentifierAstNode.java    |   49 -
 .../pql/parsers/pql2/ast/InPredicateAstNode.java   |  113 -
 .../parsers/pql2/ast/IsNullPredicateAstNode.java   |   75 -
 .../pinot/pql/parsers/pql2/ast/OptionAstNode.java  |   87 -
 .../pinot/pql/parsers/pql2/ast/OrderByAstNode.java |   91 -
 .../parsers/pql2/ast/OrderByExpressionAstNode.java |   45 -
 .../pql/parsers/pql2/ast/OutputColumnAstNode.java  |   91 -
 .../pql/parsers/pql2/ast/PredicateListAstNode.java |  163 --
 .../pql2/ast/PredicateParenthesisGroupAstNode.java |   39 -
 .../pql2/ast/RegexpLikePredicateAstNode.java       |   79 -
 .../pinot/pql/parsers/pql2/ast/SelectAstNode.java  |  213 --
 .../parsers/pql2/ast/StarColumnListAstNode.java    |   48 -
 .../pql/parsers/pql2/ast/TableNameAstNode.java     |   50 -
 .../pql2/ast/TextMatchPredicateAstNode.java        |   80 -
 .../{pql/parsers/pql2/ast => sql}/FilterKind.java  |   11 +-
 .../pinot/sql/parsers/CalciteSqlCompiler.java      |   16 +-
 .../apache/pinot/sql/parsers/CalciteSqlParser.java |  102 +-
 .../parsers/PinotSqlType.java}                     |   15 +-
 .../parsers/SqlNodeAndOptions.java}                |   28 +-
 .../parsers/dml/DataManipulationStatement.java}    |   47 +-
 .../dml/DataManipulationStatementParser.java}      |   37 +-
 .../pinot/sql/parsers/dml/InsertIntoFile.java      |  102 +
 .../sql/parsers/parser/SqlInsertFromFile.java      |   74 +
 .../pinot/sql/parsers/parser/UnparseUtils.java     |   66 +
 .../rewriter/PredicateComparisonRewriter.java      |   91 +-
 .../apache/pinot/common/data/FieldSpecTest.java    |   21 +
 .../org/apache/pinot/common/data/SchemaTest.java   |   22 +-
 .../function/AggregationFunctionTypeTest.java      |    2 +
 .../scalar/DataTypeConversionFunctionsTest.java    |   63 +
 .../transform/TransformExpressionTreeTest.java     |  124 -
 .../apache/pinot/common/utils/DataSchemaTest.java  |    3 +-
 .../pinot/common/utils/PinotDataTypeTest.java      |   34 +-
 .../apache/pinot/common/utils/StringUtilTest.java  |    1 +
 .../common/utils/config/TableConfigSerDeTest.java  |    2 +-
 .../apache/pinot/pql/parsers/Pql2CompilerTest.java |  495 ----
 .../request/BrokerRequestSerializationTest.java    |  241 --
 .../pinot/request/BrokerResponseNativeTest.java    |    2 +-
 .../pinot/sql/parsers/CalciteSqlCompilerTest.java  |  599 ++---
 .../pinot/sql/parsers/dml/InsertIntoFileTest.java  |   66 +
 pinot-common/src/test/resources/pql_queries.list   |  827 -------
 pinot-common/src/test/resources/sql_queries.list   |  827 -------
 pinot-common/src/thrift/request.thrift             |  160 +-
 pinot-compatibility-verifier/pom.xml               |    6 +
 .../main/java/org/apache/pinot/compat/QueryOp.java |    3 +-
 .../java/org/apache/pinot/compat/SegmentOp.java    |    2 +-
 .../java/org/apache/pinot/compat/StreamOp.java     |    2 +-
 .../main/java/org/apache/pinot/compat/TableOp.java |    2 +-
 .../pinot/connector/flink/FlinkQuickStart.java     |    2 +-
 pinot-connectors/pinot-spark-connector/pom.xml     |   52 +
 .../spark/connector/PinotClusterClient.scala       |   31 +-
 .../connector/PinotGrpcServerDataFetcher.scala     |   77 +
 .../spark/connector/PinotServerDataFetcher.scala   |    9 +-
 .../connector/spark/connector/PinotSplitter.scala  |   37 +-
 .../datasource/PinotDataSourceReadOptions.scala    |    9 +-
 .../spark/datasource/PinotDataSourceReader.scala   |   11 +-
 .../datasource/PinotInputPartitionReader.scala     |   16 +-
 .../spark/ExampleSparkPinotConnectorTest.scala     |   32 +-
 .../spark/connector/PinotSplitterTest.scala        |   75 +-
 .../PinotDataSourceReadOptionsTest.scala           |    8 +-
 .../pinot-common-jdk8/pom.xml                      |   92 +
 .../pinot-core-jdk8/pom.xml                        |    7 -
 .../pinot-java-client-jdk8}/pom.xml                |  107 +-
 .../pinot-java-client-jdk8/src                     |    1 +
 .../prestodb-pinot-dependencies/pom.xml            |    1 +
 .../presto-pinot-driver/pom.xml                    |    4 -
 .../presto/PinotScatterGatherQueryClient.java      |   18 +-
 .../pinot/controller/BaseControllerStarter.java    |   13 +-
 .../apache/pinot/controller/ControllerConf.java    |   23 +-
 .../api/ControllerAdminApiApplication.java         |    6 +
 .../pinot/controller/api/access/AccessControl.java |    4 +
 .../api/access/AccessControlFactory.java           |   15 +
 .../controller/api/access/AccessControlUtils.java  |   14 +
 .../api/access/BasicAuthAccessControlFactory.java  |    1 +
 .../access/ZkBasicAuthAccessControlFactory.java    |  131 ++
 .../NoTaskMetadataException.java}                  |   14 +-
 .../NoTaskScheduledException.java}                 |   14 +-
 .../TaskAlreadyExistsException.java}               |   14 +-
 .../UnknownTaskTypeException.java}                 |   14 +-
 .../UserAlreadyExistsException.java}               |   18 +-
 ...essResponse.java => ConfigSuccessResponse.java} |   15 +-
 .../pinot/controller/api/resources/Constants.java  |   20 +-
 .../PinotAccessControlUserRestletResource.java     |  243 ++
 .../PinotInstanceAssignmentRestletResource.java    |   31 +-
 .../api/resources/PinotQueryResource.java          |  139 +-
 .../api/resources/PinotSchemaRestletResource.java  |   86 +-
 .../api/resources/PinotSegmentRestletResource.java |   15 +-
 .../PinotSegmentUploadDownloadRestletResource.java |    2 +-
 .../api/resources/PinotTableInstances.java         |   17 +
 .../api/resources/PinotTableRestletResource.java   |   47 +-
 .../api/resources/PinotTaskRestletResource.java    |  114 +
 .../api/resources/PinotUpsertRestletResource.java  |  153 ++
 .../controller/api/resources/SuccessResponse.java  |    2 +-
 .../api/resources/TableConfigsRestletResource.java |   37 +-
 .../controller/helix/ControllerRequestClient.java  |   13 +-
 .../controller/helix/SegmentStatusChecker.java     |    7 +-
 .../helix/core/PinotHelixResourceManager.java      |  195 +-
 .../helix/core/PinotTableIdealStateBuilder.java    |    2 +-
 .../instance/InstanceAssignmentDriver.java         |    6 +-
 .../InstanceReplicaGroupPartitionSelector.java     |  256 ++-
 .../segment/OfflineSegmentAssignment.java          |   12 +-
 .../segment/RealtimeSegmentAssignment.java         |   13 +-
 .../assignment/segment/SegmentAssignmentUtils.java |   15 +-
 .../core/minion/PinotHelixTaskResourceManager.java |  138 +-
 .../helix/core/minion/PinotTaskManager.java        |   71 +
 .../core/minion/generator/BaseTaskGenerator.java   |   11 +
 .../core/minion/generator/PinotTaskGenerator.java  |    7 +
 .../realtime/PinotLLCRealtimeSegmentManager.java   |    2 +-
 .../helix/core/rebalance/TableRebalancer.java      |    8 +-
 .../helix/core/relocation/SegmentRelocator.java    |    2 +-
 .../controller/recommender/io/InputManager.java    |   37 +-
 .../rules/io/params/RecommenderConstants.java      |    1 -
 .../utils/QueryInvertedSortedIndexRecommender.java |    7 +-
 .../controller/util/AutoAddInvertedIndex.java      |   19 +-
 pinot-controller/src/main/resources/app/App.tsx    |   30 +-
 .../src/main/resources/app/app_state.ts            |    2 +
 .../main/resources/app/components/Breadcrumbs.tsx  |    3 +-
 .../src/main/resources/app/components/Layout.tsx   |   12 +-
 .../main/resources/app/components/User/AddUser.tsx |  243 ++
 .../resources/app/components/User/UpdateUser.tsx   |  235 ++
 .../src/main/resources/app/interfaces/types.d.ts   |   17 +
 .../src/main/resources/app/pages/LoginPage.tsx     |    1 +
 .../src/main/resources/app/pages/Query.tsx         |   37 +-
 .../src/main/resources/app/pages/UserPage.tsx      |  296 +++
 .../src/main/resources/app/requests/index.ts       |   23 +-
 pinot-controller/src/main/resources/app/router.tsx |    2 +
 .../main/resources/app/utils/PinotMethodUtils.ts   |   53 +-
 .../pinot/controller/ControllerTestUtils.java      |   28 +-
 .../pinot/controller/api/AccessControlTest.java    |    5 +-
 .../PinotAccessControlUserRestletResourceTest.java |  138 ++
 ...PinotInstanceAssignmentRestletResourceTest.java |    4 +-
 .../api/PinotSchemaRestletResourceTest.java        |   63 +-
 .../api/PinotSegmentRestletResourceTest.java       |   15 +
 .../api/PinotTableRestletResourceTest.java         |  134 +-
 .../api/PinotUpsertRestletResourceTest.java        |   78 +
 .../api/TableConfigsRestletResourceTest.java       |   41 +-
 .../PinotDummyExtraRestletResourceTest.java        |    2 +-
 .../pinot/controller/helix/ControllerTest.java     |   70 +-
 .../controller/helix/PinotResourceManagerTest.java |   24 +
 .../helix/core/PinotHelixResourceManagerTest.java  |  101 +-
 .../instance/InstanceAssignmentTest.java           |  556 ++++-
 ...fflineNonReplicaGroupSegmentAssignmentTest.java |    2 +-
 ...NonReplicaGroupTieredSegmentAssignmentTest.java |    2 +-
 .../OfflineReplicaGroupSegmentAssignmentTest.java  |   33 +-
 ...altimeNonReplicaGroupSegmentAssignmentTest.java |    2 +-
 ...NonReplicaGroupTieredSegmentAssignmentTest.java |    2 +-
 .../RealtimeReplicaGroupSegmentAssignmentTest.java |    4 +-
 .../PinotLLCRealtimeSegmentManagerTest.java        |    2 +-
 .../TableRebalancerClusterStatelessTest.java       |    3 +-
 .../memory_estimation/schema-for-upsert.json       |   96 +
 .../memory_estimation/table-config-for-upsert.json |   53 +
 pinot-core/pom.xml                                 |   24 +-
 .../org/apache/pinot/core/auth/BasicAuthUtils.java |   87 +-
 .../pinot/core/auth/ZkBasicAuthPrincipal.java      |   56 +
 .../org/apache/pinot/core/common/BlockValSet.java  |   10 +-
 .../apache/pinot/core/common/DataBlockCache.java   |   64 +-
 .../org/apache/pinot/core/common/DataFetcher.java  |   75 +
 .../apache/pinot/core/common/MinionConstants.java  |    6 +
 .../org/apache/pinot/core/common/Operator.java     |    7 -
 .../core/common/RowBasedBlockValueFetcher.java     |   15 +
 .../pinot/core/common/datatable/BaseDataTable.java |   27 +-
 .../core/common/datatable/DataTableBuilder.java    |   11 +
 .../core/common/datatable/DataTableImplV2.java     |   25 +-
 .../core/common/datatable/DataTableImplV3.java     |   82 +-
 .../core/common/datatable/DataTableUtils.java      |   69 +-
 .../evaluators/DefaultJsonPathEvaluator.java       |   77 +
 .../core/data/manager/offline/DimensionTable.java  |    4 +
 .../manager/offline/DimensionTableDataManager.java |    4 +
 .../realtime/HLRealtimeSegmentDataManager.java     |    6 +-
 .../realtime/LLRealtimeSegmentDataManager.java     |   39 +-
 .../realtime/PeerSchemeSplitSegmentCommitter.java  |    2 +-
 .../manager/realtime/PinotFSSegmentUploader.java   |    2 +-
 .../transform/function/StContainsFunction.java     |    5 +-
 .../transform/function/StWithinFunction.java       |    5 +-
 .../AcquireReleaseColumnsSegmentOperator.java      |    5 -
 .../apache/pinot/core/operator/BaseOperator.java   |   16 +-
 .../core/operator/BitmapDocIdSetOperator.java      |    6 +-
 .../pinot/core/operator/DocIdSetOperator.java      |    5 -
 .../core/operator/InstanceResponseOperator.java    |    6 +-
 .../pinot/core/operator/ProjectionOperator.java    |    8 +-
 .../StreamingInstanceResponseOperator.java         |    2 +-
 .../operator/blocks/IntermediateResultsBlock.java  |   50 +-
 .../core/operator/blocks/ProjectionBlock.java      |   12 +
 .../combine/AggregationOnlyCombineOperator.java    |    6 -
 .../core/operator/combine/BaseCombineOperator.java |    3 +-
 .../operator/combine/DistinctCombineOperator.java  |    5 -
 .../operator/combine/GroupByCombineOperator.java   |  228 --
 .../combine/GroupByOrderByCombineOperator.java     |    6 +-
 ...xValueBasedSelectionOrderByCombineOperator.java |    6 +-
 .../combine/SelectionOnlyCombineOperator.java      |    6 +-
 .../combine/SelectionOrderByCombineOperator.java   |    6 +-
 .../ExpressionScanDocIdIterator.java               |    6 -
 .../dociditerators/SVScanDocIdIterator.java        |   10 +
 .../operator/docvalsets/ProjectionBlockValSet.java |   86 +-
 .../operator/docvalsets/TransformBlockValSet.java  |   86 +-
 .../core/operator/filter/AndFilterOperator.java    |    7 +-
 .../operator/filter/BitmapBasedFilterOperator.java |   14 +-
 .../operator/filter/CombinedFilterOperator.java    |    8 +-
 .../core/operator/filter/EmptyFilterOperator.java  |    6 +-
 .../operator/filter/ExpressionFilterOperator.java  |    5 -
 .../core/operator/filter/FilterOperatorUtils.java  |    3 +-
 .../filter/H3InclusionIndexFilterOperator.java     |  152 ++
 .../operator/filter/H3IndexFilterOperator.java     |    6 +-
 .../operator/filter/JsonMatchFilterOperator.java   |   23 +-
 .../operator/filter/MatchAllFilterOperator.java    |    5 -
 .../core/operator/filter/NotFilterOperator.java    |    6 +-
 .../core/operator/filter/OrFilterOperator.java     |    8 +-
 .../filter/RangeIndexBasedFilterOperator.java      |  319 ++-
 .../operator/filter/ScanBasedFilterOperator.java   |    5 -
 .../filter/SortedIndexBasedFilterOperator.java     |    5 -
 ...erator.java => TextContainsFilterOperator.java} |   34 +-
 .../operator/filter/TextMatchFilterOperator.java   |   23 +-
 .../BaseDictionaryBasedPredicateEvaluator.java     |    6 +
 .../BaseRawValueBasedPredicateEvaluator.java       |    6 +
 .../predicate/EqualsPredicateEvaluatorFactory.java |   22 +
 .../predicate/InPredicateEvaluatorFactory.java     |   34 +
 .../NotEqualsPredicateEvaluatorFactory.java        |   22 +
 .../predicate/NotInPredicateEvaluatorFactory.java  |   31 +
 .../filter/predicate/PredicateEvaluator.java       |    9 +
 .../predicate/RangePredicateEvaluatorFactory.java  |   54 +-
 .../operator/query/AggregationGroupByOperator.java |  121 -
 .../query/AggregationGroupByOrderByOperator.java   |    6 -
 .../core/operator/query/AggregationOperator.java   |    8 +-
 .../query/DictionaryBasedDistinctOperator.java     |   10 +-
 .../core/operator/query/DistinctOperator.java      |   10 +-
 .../operator/query/EmptySelectionOperator.java     |    6 +-
 .../operator/query/FastFilteredCountOperator.java  |   10 +-
 .../query/FilteredAggregationOperator.java         |    8 +-
 .../query/NonScanBasedAggregationOperator.java     |   17 +-
 .../core/operator/query/SelectionOnlyOperator.java |    6 +-
 .../operator/query/SelectionOrderByOperator.java   |   10 +-
 .../StreamingSelectionOnlyCombineOperator.java     |    6 +-
 .../streaming/StreamingSelectionOnlyOperator.java  |    6 +-
 .../transform/PassThroughTransformOperator.java    |    6 +-
 .../core/operator/transform/TransformOperator.java |    7 +-
 .../function/AdditionTransformFunction.java        |   71 +-
 .../transform/function/BaseTransformFunction.java  |   81 +-
 .../function/BinaryOperatorTransformFunction.java  |  111 +
 .../transform/function/CaseTransformFunction.java  |   56 +
 .../transform/function/CastTransformFunction.java  |   68 +
 .../function/DivisionTransformFunction.java        |  123 +-
 .../function/GreatestTransformFunction.java        |   18 +
 .../function/GroovyTransformFunction.java          |   24 +
 .../function/IdentifierTransformFunction.java      |   13 +
 .../JsonExtractScalarTransformFunction.java        |   62 +-
 .../transform/function/LeastTransformFunction.java |   18 +
 .../function/LiteralTransformFunction.java         |   40 +-
 .../function/LookupTransformFunction.java          |    2 +
 .../function/MultiplicationTransformFunction.java  |   73 +-
 .../function/PushDownTransformFunction.java        |   11 +
 .../function/ScalarTransformFunctionWrapper.java   |    3 +
 .../SelectTupleElementTransformFunction.java       |   17 +-
 .../function/SingleParamMathTransformFunction.java |   52 +-
 .../function/SubtractionTransformFunction.java     |  120 +-
 .../transform/function/TransformFunction.java      |    9 +
 .../core/plan/AggregationGroupByPlanNode.java      |   96 -
 .../apache/pinot/core/plan/CombinePlanNode.java    |   23 +-
 .../org/apache/pinot/core/plan/FilterPlanNode.java |   76 +-
 .../core/plan/maker/InstancePlanMakerImplV2.java   |   22 +-
 .../function/AggregationFunctionFactory.java       |   33 +
 .../function/AggregationFunctionUtils.java         |   35 +-
 .../function/DistinctAggregationFunction.java      |    6 +-
 .../DistinctCountSmartHLLAggregationFunction.java  |   79 +-
 ...irstDoubleValueWithTimeAggregationFunction.java |  126 +
 ...FirstFloatValueWithTimeAggregationFunction.java |  127 ++
 .../FirstIntValueWithTimeAggregationFunction.java  |  142 ++
 .../FirstLongValueWithTimeAggregationFunction.java |  126 +
 ...irstStringValueWithTimeAggregationFunction.java |  124 +
 .../function/FirstWithTimeAggregationFunction.java |  222 ++
 .../PercentileSmartTDigestAggregationFunction.java |  346 +++
 .../function/SumPrecisionAggregationFunction.java  |   26 +
 .../groupby/AggregationGroupByResult.java          |   28 -
 .../groupby/AggregationGroupByTrimmingService.java |  364 ---
 .../groupby/DictionaryBasedGroupKeyGenerator.java  |  124 -
 .../aggregation/groupby/GroupKeyGenerator.java     |   26 -
 .../NoDictionaryMultiColumnGroupKeyGenerator.java  |   52 -
 .../NoDictionarySingleColumnGroupKeyGenerator.java |  181 +-
 .../query/distinct/DistinctExecutorFactory.java    |    6 +
 .../pinot/core/query/distinct/DistinctTable.java   |    7 +
 ...eRawBigDecimalSingleColumnDistinctExecutor.java |   69 +
 ...BigDecimalSingleColumnDistinctOnlyExecutor.java |   51 +
 ...DecimalSingleColumnDistinctOrderByExecutor.java |   72 +
 .../query/executor/ServerQueryExecutorV1Impl.java  |   51 +-
 .../core/query/executor/sql/SqlQueryExecutor.java  |  124 +
 .../pinot/core/query/optimizer/QueryOptimizer.java |   27 +-
 .../query/optimizer/filter/FilterOptimizer.java    |    6 -
 .../filter/FlattenAndOrFilterOptimizer.java        |   28 +-
 .../optimizer/filter/MergeEqInFilterOptimizer.java |  102 +-
 .../filter/MergeRangeFilterOptimizer.java          |   79 +-
 .../optimizer/filter/NumericalFilterOptimizer.java |   10 +-
 .../filter/TimePredicateFilterOptimizer.java       |   23 +-
 .../statement/JsonStatementOptimizer.java          |   60 +-
 .../optimizer/statement/StatementOptimizer.java    |    2 +-
 .../statement/StringPredicateFilterOptimizer.java  |    2 +-
 .../core/query/pruner/SegmentPrunerService.java    |   12 +-
 .../query/reduce/AggregationDataTableReducer.java  |   53 +-
 .../core/query/reduce/BrokerReduceService.java     |   11 +-
 .../query/reduce/DistinctDataTableReducer.java     |   60 +-
 .../core/query/reduce/GroupByDataTableReducer.java |  362 +--
 .../core/query/reduce/ResultReducerFactory.java    |    6 +-
 .../core/query/reduce/RowBasedBlockValSet.java     |   14 +
 .../query/reduce/SelectionDataTableReducer.java    |   35 +-
 .../reduce/SelectionOnlyStreamingReducer.java      |   21 +-
 .../core/query/reduce/StreamingReduceService.java  |   13 +-
 .../query/reduce/filter/PredicateRowMatcher.java   |    3 +
 .../core/query/request/ServerQueryRequest.java     |   23 +-
 .../core/query/request/context/QueryContext.java   |  101 +-
 .../BrokerRequestToQueryContextConverter.java      |  267 ---
 .../context/utils/QueryContextConverterUtils.java  |  141 +-
 .../query/scheduler/resources/ResourceManager.java |    9 +-
 .../query/selection/SelectionOperatorService.java  |   57 +-
 .../query/selection/SelectionOperatorUtils.java    |  180 +-
 .../requesthandler/PinotQueryParserFactory.java    |   55 -
 .../segment/processing/mapper/SegmentMapper.java   |    2 +-
 .../processing/timehandler/EpochTimeHandler.java   |   10 +-
 .../processing/timehandler/TimeHandlerConfig.java  |   25 +-
 .../processing/timehandler/TimeHandlerFactory.java |    4 +-
 .../startree/operator/StarTreeFilterOperator.java  |   10 +-
 .../pinot/core/transport/AsyncQueryResponse.java   |   71 +-
 .../pinot/core/transport/DataTableHandler.java     |    3 +-
 .../apache/pinot/core/transport/QueryResponse.java |   76 +
 .../apache/pinot/core/transport/QueryRouter.java   |   29 +-
 .../pinot/core/transport/ServerChannels.java       |   42 +-
 .../pinot/core/transport/ServerInstance.java       |   52 +-
 .../pinot/core/transport/ServerResponse.java       |    2 +
 .../core/transport/ServerRoutingInstance.java      |   37 +-
 .../org/apache/pinot/core/util/GapfillUtils.java   |  105 +-
 .../pinot/core/util/PeerServerSegmentFinder.java   |    2 +-
 .../apache/pinot/core/util/QueryOptionsUtils.java  |   17 +-
 .../pinot/core/util/trace/BuiltInTracer.java       |   74 +
 .../pinot/core/util/trace/TracedThread.java}       |   39 +-
 .../pinot/core/util/trace/TracedThreadFactory.java |   43 +-
 .../pinot/server/access/AccessControlFactory.java  |   14 +
 .../server/access/BasicAuthAccessFactory.java      |    1 +
 .../server/access/ZkBasicAuthAccessFactory.java    |  121 +
 .../server/realtime/ControllerLeaderLocator.java   |    2 +-
 .../ServerSegmentCompletionProtocolHandler.java    |    2 +-
 .../apache/pinot/core/auth/ZkBasicAuthTest.java    |   59 +
 .../apache/pinot/core/common/DataFetcherTest.java  |   53 +-
 .../core/common/datatable/DataTableUtilsTest.java  |   32 +-
 .../function/InbuiltFunctionEvaluatorTest.java     |    4 +-
 .../realtime/PinotFSSegmentUploaderTest.java       |    2 +-
 .../pinot/core/data/table/IndexedTableTest.java    |    6 +-
 .../pinot/core/data/table/TableResizerTest.java    |   44 +-
 .../core/geospatial/transform/GeoFunctionTest.java |    2 +-
 .../geospatial/transform/StPointFunctionTest.java  |    6 +-
 .../operator/combine/CombineSlowOperatorsTest.java |   21 +-
 .../combine/SelectionCombineOperatorTest.java      |    2 +-
 .../core/operator/filter/TestFilterOperator.java   |    5 -
 .../NoDictionaryEqualsPredicateEvaluatorsTest.java |   24 +
 .../NoDictionaryInPredicateEvaluatorTest.java      |   33 +
 .../NoDictionaryRangePredicateEvaluatorTest.java   |   40 +
 .../predicate/PredicateEvaluatorTestUtils.java     |    7 +
 .../function/AdditionTransformFunctionTest.java    |   41 +-
 .../function/ArrayBaseTransformFunctionTest.java   |    4 +-
 .../function/BaseTransformFunctionTest.java        |   43 +
 .../BinaryOperatorTransformFunctionTest.java       |   35 +-
 .../function/CaseTransformFunctionTest.java        |  225 +-
 .../function/CastTransformFunctionTest.java        |   66 +-
 .../DateTimeConversionTransformFunctionTest.java   |    4 +-
 .../function/DateTimeTransformFunctionTest.java    |    4 +-
 .../function/DateTruncTransformFunctionTest.java   |    2 +-
 .../function/DivisionTransformFunctionTest.java    |   48 +-
 .../function/EqualsTransformFunctionTest.java      |    8 +
 .../GreaterThanOrEqualTransformFunctionTest.java   |    8 +
 .../function/GreaterThanTransformFunctionTest.java |    8 +
 .../function/GroovyTransformFunctionTest.java      |   23 +-
 .../function/InTransformFunctionTest.java          |   16 +-
 .../JsonExtractScalarTransformFunctionTest.java    |   61 +-
 .../LessThanOrEqualTransformFunctionTest.java      |    8 +
 .../function/LessThanTransformFunctionTest.java    |    8 +
 .../function/LiteralTransformFunctionTest.java     |    1 +
 .../LogicalOperatorTransformFunctionTest.java      |    6 +-
 .../function/LookupTransformFunctionTest.java      |   89 +-
 .../function/ModuloTransformFunctionTest.java      |   14 +-
 .../MultiplicationTransformFunctionTest.java       |   38 +-
 .../function/NotEqualsTransformFunctionTest.java   |    8 +
 .../NullHandlingTransformFunctionTest.java         |    4 +-
 .../function/PowerTransformFunctionTest.java       |   12 +-
 .../function/RegexpTransformFunctionTest.java      |    4 +-
 .../RoundDecimalTransformFunctionTest.java         |    8 +-
 .../ScalarTransformFunctionWrapperTest.java        |  121 +-
 .../SingleParamMathTransformFunctionTest.java      |  169 +-
 .../function/SubtractionTransformFunctionTest.java |   35 +-
 .../TimeConversionTransformFunctionTest.java       |    4 +-
 .../function/TrigonometricFunctionsTest.java       |   12 +-
 .../TruncateDecimalTransformFunctionTest.java      |    8 +-
 .../TupleSelectionTransformFunctionsTest.java      |   52 +-
 .../function/ValueInTransformFunctionTest.java     |    4 +-
 .../pinot/core/plan/CombinePlanNodeTest.java       |    2 +-
 ...adataAndDictionaryAggregationPlanMakerTest.java |   20 +-
 .../plan/maker/QueryOverrideWithHintsTest.java     |   29 +-
 .../DefaultAggregationExecutorTest.java            |    2 +-
 .../function/AggregationFunctionFactoryTest.java   |   48 +-
 .../AggregationGroupByTrimmingServiceTest.java     |  138 --
 .../DictionaryBasedGroupKeyGeneratorTest.java      |   36 +-
 .../query/aggregation/groupby/GroupByTrimTest.java |    6 +-
 .../groupby/NoDictionaryGroupKeyGeneratorTest.java |   26 +-
 .../aggregation/groupby/StringGroupKeyTest.java    |   60 -
 .../executor/QueryExecutorExceptionsTest.java      |    4 +-
 .../core/query/executor/QueryExecutorTest.java     |   27 +-
 .../core/query/optimizer/QueryOptimizerTest.java   |  162 +-
 .../filter/NumericalFilterOptimizerTest.java       |    7 +-
 .../filter/TimePredicateFilterOptimizerTest.java   |    2 +-
 .../statement/JsonStatementOptimizerTest.java      |    4 -
 .../StringPredicateFilterOptimizerTest.java        |    4 -
 .../core/query/optimizer/statement/TestHelper.java |   19 +-
 .../PostAggregationFunctionTest.java               |    5 +
 .../query/pruner/ColumnValueSegmentPrunerTest.java |    2 +-
 .../pruner/SelectionQuerySegmentPrunerTest.java    |   30 +-
 .../core/query/reduce/BrokerReduceServiceTest.java |    5 +-
 .../query/reduce/GapfillFilterHandlerTest.java     |    2 +-
 .../core/query/reduce/HavingFilterHandlerTest.java |    8 +-
 .../query/reduce/PostAggregationHandlerTest.java   |   12 +-
 .../query/reduce/StreamingReduceServiceTest.java   |    6 +-
 .../BrokerRequestToQueryContextConverterTest.java  |  623 ++---
 .../pinot/core/query/scheduler/TestHelper.java     |   15 +-
 .../selection/SelectionOperatorServiceTest.java    |  100 +-
 .../processing/framework/SegmentMapperTest.java    |   21 +-
 .../framework/SegmentProcessorFrameworkTest.java   |   17 +
 .../pinot/core/startree/v2/BaseStarTreeV2Test.java |    2 +-
 .../pinot/core/transport/QueryRoutingTest.java     |   18 +-
 .../core/util/PeerServerSegmentFinderTest.java     |    2 +-
 .../pinot/core/util/trace/TraceContextTest.java    |    3 +-
 .../apache/pinot/queries/BaseJsonQueryTest.java    |   14 +-
 .../pinot/queries/BaseMultiValueQueriesTest.java   |   15 +-
 .../org/apache/pinot/queries/BaseQueriesTest.java  |  195 +-
 .../pinot/queries/BaseSingleValueQueriesTest.java  |   19 +-
 .../pinot/queries/BigDecimalQueriesTest.java       |  358 +++
 .../apache/pinot/queries/BooleanQueriesTest.java   |   29 +-
 ...tLeastQueriesTest.java => CastQueriesTest.java} |   85 +-
 .../queries/DistinctCountBitmapQueriesTest.java    |   74 +-
 .../pinot/queries/DistinctCountQueriesTest.java    |  176 +-
 .../DistinctCountThetaSketchQueriesTest.java       |   65 +-
 .../apache/pinot/queries/DistinctQueriesTest.java  |  517 ++---
 .../apache/pinot/queries/ExpectedQueryResult.java  |   56 -
 .../pinot/queries/ExplainPlanQueriesTest.java      |  105 +-
 .../queries/FSTBasedRegexpLikeQueriesTest.java     |  416 ++--
 .../pinot/queries/FastFilteredCountTest.java       |   21 +-
 .../apache/pinot/queries/FastHllQueriesTest.java   |   65 +-
 .../pinot/queries/FilteredAggregationsTest.java    |   28 +-
 .../pinot/queries/FirstWithTimeQueriesTest.java    |  434 ++++
 .../apache/pinot/queries/GapfillQueriesTest.java   |  191 +-
 .../apache/pinot/queries/H3IndexQueriesTest.java   |  236 +-
 .../org/apache/pinot/queries/IdSetQueriesTest.java |  176 +-
 ...nerSegmentAggregationMultiValueQueriesTest.java |  166 +-
 ...erSegmentAggregationSingleValueQueriesTest.java |  221 +-
 ...InnerSegmentSelectionMultiValueQueriesTest.java |  235 +-
 ...nnerSegmentSelectionSingleValueQueriesTest.java |  472 ++--
 ...terSegmentAggregationMultiValueQueriesTest.java |  879 ++++---
 ...erSegmentAggregationSingleValueQueriesTest.java |  823 +++----
 .../InterSegmentGroupByMultiValueQueriesTest.java  |  143 ++
 .../InterSegmentGroupBySingleValueQueriesTest.java |  290 +++
 .../InterSegmentOrderByMultiValueQueriesTest.java  |  175 --
 .../InterSegmentOrderBySingleValueQueriesTest.java |  804 -------
 ...terSegmentResultTableMultiValueQueriesTest.java |  895 --------
 ...erSegmentResultTableSingleValueQueriesTest.java | 1074 ---------
 .../pinot/queries/JsonDataTypeQueriesTest.java     |   52 +-
 .../queries/JsonIngestionFromAvroQueriesTest.java  |   28 +-
 .../apache/pinot/queries/JsonMatchQueriesTest.java |    2 +-
 .../pinot/queries/LastWithTimeQueriesTest.java     |  478 ++--
 .../org/apache/pinot/queries/ModeQueriesTest.java  |  941 ++------
 .../queries/NativeAndLuceneComparisonTest.java     |  275 +++
 .../NoDictionaryCompressionQueriesTest.java        |   72 +-
 .../pinot/queries/NotOperatorQueriesTest.java      |    4 +-
 .../queries/PercentileTDigestMVQueriesTest.java    |   22 +-
 .../queries/PercentileTDigestQueriesTest.java      |  152 +-
 .../org/apache/pinot/queries/QueriesTestUtils.java |  344 ++-
 .../RangePredicateWithSortedInvertedIndexTest.java |    7 +-
 .../org/apache/pinot/queries/RangeQueriesTest.java |  201 ++
 ...SegmentPartitionedDistinctCountQueriesTest.java |   65 +-
 .../queries/SegmentWithNullValueVectorTest.java    |   16 +-
 .../pinot/queries/SerializedBytesQueriesTest.java  |  269 +--
 .../apache/pinot/queries/StUnionQueriesTest.java   |   88 +-
 .../pinot/queries/SumGreatestLeastQueriesTest.java |   14 +-
 .../pinot/queries/SumPrecisionQueriesTest.java     |   16 +-
 .../pinot/queries/TextSearchQueriesTest.java       |  685 +++---
 .../apache/pinot/queries/TimestampQueriesTest.java |   12 +-
 .../apache/pinot/queries/TransformQueriesTest.java |   48 +-
 .../pinot/queries/UrlFunctionGroupByTest.java      |  264 ---
 .../converter/RealtimeSegmentConverterTest.java    |   16 +-
 .../{pql_query1.txt => queries.txt}                |    0
 pinot-distribution/pinot-assembly.xml              |    9 +-
 pinot-integration-test-base/pom.xml                |    4 +
 .../tests/BaseClusterIntegrationTest.java          |    9 +-
 .../tests/ClusterIntegrationTestUtils.java         |   15 +-
 .../pinot/integration/tests/ClusterTest.java       |  326 ++-
 .../tests/AdminConsoleIntegrationTest.java         |    3 -
 .../tests/BaseClusterIntegrationTestSet.java       |   12 +-
 .../tests/ChaosMonkeyIntegrationTest.java          |   24 +-
 .../tests/GrpcBrokerClusterIntegrationTest.java    |   25 +-
 .../tests/HybridClusterIntegrationTest.java        |   26 +-
 .../MergeRollupMinionClusterIntegrationTest.java   |   22 +-
 .../MultiNodesOfflineClusterIntegrationTest.java   |  116 +-
 .../tests/OfflineClusterIntegrationTest.java       |   19 +-
 .../tests/OfflineGRPCServerIntegrationTest.java    |   80 +-
 .../OfflineSecureGRPCServerIntegrationTest.java    |   25 +-
 ...rDownloadLLCRealtimeClusterIntegrationTest.java |    3 +-
 .../tests/RealtimeKinesisIntegrationTest.java      |    2 +-
 ...fflineSegmentsMinionClusterIntegrationTest.java |   44 +-
 ...mentGenerationMinionClusterIntegrationTest.java |  185 ++
 .../tests/SimpleMinionClusterIntegrationTest.java  |   18 +-
 .../integration/tests/TlsIntegrationTest.java      |    6 +-
 .../UpsertTableSegmentUploadIntegrationTest.java   |    2 +-
 .../ControllerLeaderLocatorIntegrationTest.java    |    2 +-
 .../org/apache/pinot/minion/BaseMinionStarter.java |   23 +-
 .../pinot/minion/MinionAdminApiApplication.java    |    4 +-
 .../minion/api/resources/HealthCheckResource.java  |   66 +
 .../apache/pinot/perf/BenchmarkCombineGroupBy.java |   74 +-
 .../apache/pinot/perf/BenchmarkIndexedTable.java   |    2 +-
 .../perf/BenchmarkNativeAndLuceneBasedLike.java    |    2 +-
 ....java => BenchmarkNativeVsLuceneTextIndex.java} |  137 +-
 .../org/apache/pinot/perf/BenchmarkQueries.java    |   14 +-
 .../pinot/perf/BenchmarkScanDocIdIterators.java    |    6 +
 .../pinot-batch-ingestion-hadoop/pom.xml           |    8 +-
 .../pinot-batch-ingestion-spark/pom.xml            |    5 +
 .../v0_deprecated/pinot-hadoop/pom.xml             |    6 +
 .../hadoop/job/HadoopSegmentPreprocessingJob.java  |    2 +-
 .../pinot/ingestion/jobs/SegmentCreationJob.java   |    2 +-
 .../ingestion/jobs/SegmentPreprocessingJob.java    |    2 +-
 .../v0_deprecated/pinot-spark/pom.xml              |   32 +-
 pinot-plugins/pinot-file-system/pinot-adls/pom.xml |    4 +-
 pinot-plugins/pinot-file-system/pinot-s3/pom.xml   |    5 -
 pinot-plugins/pinot-input-format/pinot-orc/pom.xml |   11 +
 .../pinot/plugin/minion/tasks/MergeTaskUtils.java  |   38 +-
 .../mergerollup/MergeRollupTaskGenerator.java      |   45 +-
 .../SegmentGenerationAndPushTaskExecutor.java      |    6 +-
 .../SegmentGenerationAndPushTaskGenerator.java     |   97 +-
 .../plugin/minion/tasks/MergeTaskUtilsTest.java    |   33 +
 .../mergerollup/MergeRollupTaskGeneratorTest.java  |   56 +-
 .../pinot-stream-ingestion/pinot-kafka-0.9/pom.xml |   86 +
 .../pinot-kafka-2.0/README.md                      |    2 +-
 .../stream/kinesis/server/KinesisDataProducer.java |  105 +-
 .../pinot-stream-ingestion/pinot-pulsar/pom.xml    |  164 +-
 .../pinot/plugin/stream/pulsar/PulsarConfig.java   |   19 +
 .../PulsarPartitionLevelConnectionHandler.java     |   15 +-
 .../pulsar/PulsarStreamLevelConsumerManager.java   |   17 +-
 .../plugin/stream/pulsar/PulsarConsumerTest.java   |  145 +-
 .../stream/pulsar/PulsarStandaloneCluster.java     |  132 --
 .../src/test/resources/standalone.properties       |  904 --------
 pinot-plugins/pom.xml                              |    4 +
 .../local/function/InbuiltFunctionEvaluator.java   |  111 +-
 .../immutable/ImmutableSegmentLoader.java          |    6 +
 .../indexsegment/mutable/IntermediateSegment.java  |   23 +-
 .../indexsegment/mutable/MutableSegmentImpl.java   |   32 +-
 .../pinot/segment/local/io/util/ValueReader.java   |    6 +
 .../impl/VarByteChunkSVForwardIndexWriter.java     |    7 +
 .../impl/VarByteChunkSVForwardIndexWriterV4.java   |    7 +
 .../local/io/writer/impl/VarByteChunkWriter.java   |    3 +
 .../converter/RealtimeSegmentConverter.java        |   14 +-
 .../local/realtime/impl/RealtimeSegmentConfig.java |   18 +-
 .../dictionary/BytesOffHeapMutableDictionary.java  |    7 +
 .../dictionary/BytesOnHeapMutableDictionary.java   |    7 +
 .../dictionary/DoubleOffHeapMutableDictionary.java |    6 +
 .../dictionary/DoubleOnHeapMutableDictionary.java  |    6 +
 .../dictionary/FloatOffHeapMutableDictionary.java  |    6 +
 .../dictionary/FloatOnHeapMutableDictionary.java   |    6 +
 .../dictionary/IntOffHeapMutableDictionary.java    |    6 +
 .../dictionary/IntOnHeapMutableDictionary.java     |    6 +
 .../dictionary/LongOffHeapMutableDictionary.java   |    6 +
 .../dictionary/LongOnHeapMutableDictionary.java    |    6 +
 .../dictionary/StringOffHeapMutableDictionary.java |    6 +
 .../dictionary/StringOnHeapMutableDictionary.java  |    6 +
 .../forward/FixedByteSVMutableForwardIndex.java    |   12 +
 .../impl/forward/VarByteSVMutableForwardIndex.java |    7 +
 .../recordtransformer/ExpressionTransformer.java   |   15 +
 .../recordtransformer/SanitizationTransformer.java |    2 +-
 .../creator/impl/DefaultIndexCreatorProvider.java  |   10 +-
 .../creator/impl/SegmentColumnarIndexCreator.java  |   50 +-
 .../creator/impl/SegmentDictionaryCreator.java     |   50 +
 .../impl/SegmentIndexCreationDriverImpl.java       |   12 +-
 .../fwd/SingleValueVarByteRawIndexCreator.java     |   10 +-
 .../BigDecimalColumnPreIndexStatsCollector.java    |  125 +
 .../stats/SegmentPreIndexStatsCollectorImpl.java   |    4 +
 .../creator/impl/text/NativeTextIndexCreator.java  |  182 ++
 .../index/column/PhysicalColumnIndexContainer.java |   23 +-
 .../segment/index/loader/IndexLoadingConfig.java   |   37 +
 .../loader/invertedindex/TextIndexHandler.java     |    5 +-
 .../index/readers/BaseImmutableDictionary.java     |   23 +
 ...esDictionary.java => BigDecimalDictionary.java} |   47 +-
 .../index/readers/BitSlicedRangeIndexReader.java   |   39 +-
 .../segment/index/readers/BytesDictionary.java     |    7 +
 .../readers/ConstantValueBytesDictionary.java      |    7 +
 .../readers/ConstantValueDoubleDictionary.java     |    6 +
 .../readers/ConstantValueFloatDictionary.java      |    6 +
 .../index/readers/ConstantValueIntDictionary.java  |    6 +
 .../index/readers/ConstantValueLongDictionary.java |    6 +
 .../readers/ConstantValueStringDictionary.java     |    6 +
 .../index/readers/DefaultIndexReaderProvider.java  |   12 +-
 .../segment/index/readers/DocIdDictionary.java     |    6 +
 .../segment/index/readers/DoubleDictionary.java    |    6 +
 .../segment/index/readers/FloatDictionary.java     |    6 +
 .../local/segment/index/readers/IntDictionary.java |    6 +
 .../segment/index/readers/LongDictionary.java      |    6 +
 .../index/readers/OnHeapDoubleDictionary.java      |    6 +
 .../index/readers/OnHeapFloatDictionary.java       |    6 +
 .../segment/index/readers/OnHeapIntDictionary.java |    6 +
 .../index/readers/OnHeapLongDictionary.java        |    6 +
 .../index/readers/OnHeapStringDictionary.java      |    6 +
 .../index/readers/RangeIndexReaderImpl.java        |   41 +
 .../segment/index/readers/StringDictionary.java    |    6 +
 .../forward/VarByteChunkSVForwardIndexReader.java  |    9 +-
 .../VarByteChunkSVForwardIndexReaderV4.java        |    7 +
 .../index/readers/text/NativeTextIndexReader.java  |  119 +
 .../local/segment/store/TextIndexUtils.java        |   40 +-
 .../local/startree/OffHeapStarTreeNode.java        |   58 +-
 .../upsert/PartitionUpsertMetadataManager.java     |   17 +-
 .../local/utils/FixedIntArrayOffHeapIdMap.java     |    6 +
 .../apache/pinot/segment/local/utils/H3Utils.java  |   92 +
 .../segment/local/utils/TableConfigUtils.java      |    4 +
 .../pinot/segment/local/utils/nativefst/FST.java   |    4 +-
 .../mutable/IntermediateSegmentTest.java           |   32 +-
 .../recordtransformer/RecordTransformerTest.java   |  145 ++
 .../local/segment/creator/DictionariesTest.java    |   55 +
 .../segment/creator/DictionaryOptimiserTest.java   |  178 ++
 .../impl/SegmentColumnarIndexCreatorTest.java      |    7 +-
 .../index/creator/BitSlicedIndexCreatorTest.java   |   18 +-
 .../index/creator/NativeTextIndexCreatorTest.java  |   89 +
 .../segment/index/creator/RawIndexCreatorTest.java |    2 +-
 .../index/creator/SegmentPartitionTest.java        |   20 +-
 .../index/readers/ImmutableDictionaryTest.java     |   55 +
 .../ImmutableDictionaryTypeConversionTest.java     |   44 +-
 .../upsert/PartitionUpsertMetadataManagerTest.java |   85 +-
 .../segment/local/utils/TableConfigUtilsTest.java  |    2 +-
 .../local/utils/nativefst/FSTSanityTest.java       |    2 +-
 .../resources/data/mixed_cardinality_data.avro     |  Bin 0 -> 553960 bytes
 .../pinot/segment/spi/AggregationFunctionType.java |    2 +
 .../org/apache/pinot/segment/spi/V1Constants.java  |    1 +
 .../segment/spi/creator/IndexCreationContext.java  |    8 +-
 .../spi/creator/SegmentGeneratorConfig.java        |   82 +-
 .../segment/spi/evaluator/TransformEvaluator.java  |   13 +
 .../spi/index/creator/ForwardIndexCreator.java     |   10 +
 .../spi/index/metadata/ColumnMetadataImpl.java     |    5 +
 .../spi/index/metadata/SegmentMetadataImpl.java    |    9 +-
 .../spi/index/mutable/MutableForwardIndex.java     |   17 +
 .../pinot/segment/spi/index/reader/Dictionary.java |    9 +
 .../spi/index/reader/ForwardIndexReader.java       |   84 +
 .../segment/spi/index/reader/RangeIndexReader.java |   46 +
 .../segment/spi/store/SegmentDirectoryPaths.java   |   12 +
 .../spi/creator/SegmentGeneratorConfigTest.java    |   67 +
 .../pinot/server/starter/ServerInstance.java       |   13 +-
 .../server/starter/helix/BaseServerStarter.java    |  119 +-
 .../apache/pinot/server/api/BaseResourceTest.java  |    2 +-
 .../org/apache/pinot/spi/config/ConfigUtils.java   |   22 +-
 .../apache/pinot/spi/config/table/ColumnStats.java |   89 +
 .../apache/pinot/spi/config/table/FieldConfig.java |   17 +-
 .../pinot/spi/config/table/IndexingConfig.java     |   23 +
 .../spi/config/table/SegmentZKPropsConfig.java     |   28 +-
 .../SegmentsValidationAndRetentionConfig.java      |    9 +
 .../pinot/spi/config/table/TimestampConfig.java    |   36 +-
 .../config/table/TimestampIndexGranularity.java    |  109 +
 .../InstanceReplicaGroupPartitionConfig.java       |   10 +-
 .../config/table/ingestion/IngestionConfig.java    |   21 +-
 .../pinot/spi/config/task/AdhocTaskConfig.java     |   81 +
 .../apache/pinot/spi/config/user/AccessType.java   |    8 +-
 .../pinot/spi/config/user/ComponentType.java       |    8 +-
 .../org/apache/pinot/spi/config/user/RoleType.java |    8 +-
 .../apache/pinot/spi/config/user/UserConfig.java   |  140 ++
 .../java/org/apache/pinot/spi/data/FieldSpec.java  |   13 +
 .../java/org/apache/pinot/spi/data/Schema.java     |   20 +-
 .../pinot/spi/stream/StreamDataProducer.java       |   72 +
 .../org/apache/pinot/spi/trace/BaseRecording.java  |   27 +-
 .../pinot/spi/trace/DefaultRequestContext.java     |  217 +-
 .../org/apache/pinot/spi/trace/FilterType.java     |   18 +-
 .../pinot/spi/trace/InvocationRecording.java       |  129 ++
 .../apache/pinot/spi/trace/InvocationScope.java    |    7 +-
 .../org/apache/pinot/spi/trace/NoOpRecording.java  |   22 +-
 .../org/apache/pinot/spi/trace/RequestContext.java |  163 ++
 .../org/apache/pinot/spi/trace/RequestScope.java   |    7 +-
 .../java/org/apache/pinot/spi/trace/Scope.java     |   10 +-
 .../org/apache/pinot/spi/trace/TraceState.java     |   49 +-
 .../java/org/apache/pinot/spi/trace/Tracer.java    |   58 +
 .../java/org/apache/pinot/spi/trace/Tracing.java   |  106 +
 .../org/apache/pinot/spi/utils/ArrayCopyUtils.java |   74 +
 .../apache/pinot/spi/utils/BigDecimalUtils.java    |   21 +-
 .../apache/pinot/spi/utils/CommonConstants.java    |   51 +-
 .../pinot/spi/utils/IngestionConfigUtils.java      |   11 +-
 .../java/org/apache/pinot/spi/utils/JsonUtils.java |   60 +
 .../pinot/spi/utils}/RebalanceConfigConstants.java |    2 +-
 .../org/apache/pinot/spi}/utils/StringUtil.java    |    3 +-
 .../builder}/ControllerRequestURLBuilder.java      |   83 +-
 .../pinot/spi/utils/builder/UserConfigBuilder.java |   70 +
 .../apache/pinot/spi/config/ConfigUtilsTest.java   |   41 +-
 .../table/TimestampIndexGranularityTest.java       |   85 +
 .../pinot/spi/config/task/AdhocTaskConfigTest.java |   43 +
 .../pinot/spi/stream/StreamDataProducerTest.java   |   55 +
 .../pinot/spi/utils/BigDecimalUtilsTest.java       |   10 +-
 .../pinot/spi/utils/IngestionConfigUtilsTest.java  |    8 +
 .../org/apache/pinot/spi/utils/JsonUtilsTest.java  |   16 +
 .../pinot/spi/utils/JsonUtilsTestSamplePojo.java   |   84 +
 pinot-tools/pom.xml                                |    4 +
 .../org/apache/pinot/tools/HybridQuickstart.java   |    9 +
 .../apache/pinot/tools/PinotTableRebalancer.java   |    2 +-
 .../RealtimeComplexTypeHandlingQuickStart.java     |    4 +-
 .../pinot/tools/RealtimeJsonIndexQuickStart.java   |    4 +-
 .../pinot/tools/TimestampIndexQuickstart.java      |  120 +
 .../apache/pinot/tools/UpsertJsonQuickStart.java   |    5 +-
 .../pinot/tools/admin/command/AddTableCommand.java |    2 +-
 .../tools/admin/command/AddTenantCommand.java      |    2 +-
 .../tools/admin/command/AnonymizeDataCommand.java  |   24 +-
 .../tools/admin/command/ImportDataCommand.java     |    2 +-
 .../tools/admin/command/PostQueryCommand.java      |   30 +-
 .../tools/admin/command/QuickstartRunner.java      |   23 +-
 .../anonymizer/PinotDataAndQueryAnonymizer.java    |  956 ++++----
 .../pinot/tools/perf/PerfBenchmarkDriver.java      |   33 +-
 .../pinot/tools/perf/PerfBenchmarkDriverConf.java  |   22 +-
 .../org/apache/pinot/tools/perf/QueryRunner.java   |  124 +-
 .../pinot/tools/streams/AirlineDataStream.java     |  112 +-
 .../tools/streams/AvroFileSourceGenerator.java     |  141 ++
 .../pinot/tools/streams/MeetupRsvpStream.java      |  121 +-
 .../pinot/tools/streams/PinotRealtimeSource.java   |  190 ++
 .../tools/streams/PinotSourceDataGenerator.java    |   44 +
 .../tools/streams/PinotStreamRateLimiter.java      |   15 +-
 .../pinot/tools/streams/RsvpSourceGenerator.java   |   98 +
 .../GithubPullRequestSourceGenerator.java          |  220 ++
 .../PullRequestMergedEventsStream.java             |  227 +-
 .../pinot/tools/utils/KafkaStarterUtils.java       |   12 +-
 .../resources/conf/sample_query_comparison.conf    |   30 -
 .../airlineStats_offline_table_config.json         |   26 +
 .../batch/airlineStats/airlineStats_schema.json    |   12 +
 .../pinot/tools/TestDataAndQueryAnonymizer.java    |  112 +-
 .../tools/streams/PinotRealtimeSourceTest.java     |   65 +
 pinot-tools/src/test/resources/queries.raw         |    6 +-
 pom.xml                                            |  150 +-
 881 files changed, 30330 insertions(+), 36385 deletions(-)
 create mode 100644 
compatibility-verifier/sample-test-suite/config/FeatureTest3-schema.json
 rename 
compatibility-verifier/sample-test-suite/config/data/{RealtimeFeatureTest1-data-00.csv
 => FeatureTest2-data-realtime-00.csv} (100%)
 create mode 100644 
compatibility-verifier/sample-test-suite/config/data/FeatureTest3-data-realtime-00.csv
 create mode 100644 
compatibility-verifier/sample-test-suite/config/data/recordReaderConfig-FeatureTest3.json
 create mode 100644 
compatibility-verifier/sample-test-suite/config/dataGenerator.py
 create mode 100644 
compatibility-verifier/sample-test-suite/config/feature-test-3-realtime-stream-config.json
 create mode 100644 
compatibility-verifier/sample-test-suite/config/feature-test-3-realtime.json
 create mode 100644 
compatibility-verifier/sample-test-suite/config/queries/feature-test-3-sql-realtime.queries
 create mode 100644 
compatibility-verifier/sample-test-suite/config/query-results/feature-test-3-sql-realtime.results
 create mode 100644 contrib/pinot-fmpp-maven-plugin/pom.xml
 create mode 100644 
contrib/pinot-fmpp-maven-plugin/src/main/java/org/apache/pinot/fmpp/FMPPMojo.java
 rename 
pinot-common/src/main/java/org/apache/pinot/common/response/broker/GroupByResult.java
 => 
contrib/pinot-fmpp-maven-plugin/src/main/java/org/apache/pinot/fmpp/MavenDataLoader.java
 (52%)
 create mode 100644 
pinot-broker/src/main/java/org/apache/pinot/broker/broker/ZkBasicAuthAccessControlFactory.java
 create mode 100644 
pinot-broker/src/main/java/org/apache/pinot/broker/failuredetector/BaseExponentialBackoffRetryFailureDetector.java
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/OptionsAstNode.java
 => 
pinot-broker/src/main/java/org/apache/pinot/broker/failuredetector/ConnectionFailureDetector.java
 (51%)
 create mode 100644 
pinot-broker/src/main/java/org/apache/pinot/broker/failuredetector/FailureDetector.java
 create mode 100644 
pinot-broker/src/main/java/org/apache/pinot/broker/failuredetector/FailureDetectorFactory.java
 copy 
pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/index/readers/IntDictionary.java
 => 
pinot-broker/src/main/java/org/apache/pinot/broker/failuredetector/NoOpFailureDetector.java
 (50%)
 copy 
pinot-broker/src/main/java/org/apache/pinot/broker/routing/segmentpruner/{PartitionSegmentPruner.java
 => MultiPartitionColumnsSegmentPruner.java} (54%)
 rename 
pinot-broker/src/main/java/org/apache/pinot/broker/routing/segmentpruner/{PartitionSegmentPruner.java
 => SinglePartitionColumnSegmentPruner.java} (75%)
 create mode 100644 
pinot-broker/src/test/java/org/apache/pinot/broker/broker/helix/ClusterChangeMediatorTest.java
 create mode 100644 
pinot-broker/src/test/java/org/apache/pinot/broker/failuredetector/ConnectionFailureDetectorTest.java
 delete mode 100644 
pinot-broker/src/test/java/org/apache/pinot/broker/request/PqlAndCalciteSqlCompatibilityTest.java
 create mode 100644 
pinot-clients/pinot-java-client/src/main/java/org/apache/pinot/client/BrokerCache.java
 create mode 100644 
pinot-clients/pinot-java-client/src/main/java/org/apache/pinot/client/BrokerCacheUpdaterPeriodic.java
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/FloatingPointLiteralAstNode.java
 => 
pinot-clients/pinot-java-client/src/main/java/org/apache/pinot/client/BrokerData.java
 (62%)
 copy 
pinot-tools/src/main/java/org/apache/pinot/tools/streams/MeetupRsvpJsonStream.java
 => 
pinot-clients/pinot-java-client/src/main/java/org/apache/pinot/client/ControllerBasedBrokerSelector.java
 (51%)
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/AstNode.java 
=> 
pinot-clients/pinot-java-client/src/main/java/org/apache/pinot/client/UpdatableBrokerCache.java
 (50%)
 delete mode 100644 
pinot-common/src/main/antlr4/org/apache/pinot/pql/parsers/PQL2.g4
 create mode 100644 pinot-common/src/main/codegen/config.fmpp
 create mode 100644 pinot-common/src/main/codegen/includes/parserImpls.ftl
 create mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/config/provider/AccessControlUserCache.java
 create mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/function/scalar/ComparisonFunctions.java
 copy 
pinot-common/src/main/java/org/apache/pinot/{pql/parsers/pql2/ast/BinaryMathOpAstNode.java
 => common/function/scalar/ObjectFunctions.java} (64%)
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/AggregationInfo.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/FilterOperator.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/FilterQuery.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/FilterQueryMap.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/GroupBy.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/HavingFilterQuery.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/HavingFilterQueryMap.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/QueryType.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/Selection.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/SelectionSort.java
 create mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/context/predicate/TextContainsPredicate.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/request/transform/TransformExpressionTree.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/response/broker/AggregationResult.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/response/broker/SelectionResults.java
 rename 
pinot-tools/src/main/java/org/apache/pinot/tools/streams/MeetupRsvpJsonStream.java
 => pinot-common/src/main/java/org/apache/pinot/common/utils/BcryptUtils.java 
(50%)
 rename pinot-common/src/main/java/org/apache/pinot/{pql/parsers => 
common}/utils/Pair.java (96%)
 create mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/utils/config/AccessControlUserConfigUtils.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/common/utils/request/FilterQueryTree.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/parsers/CompilerConstants.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/parsers/utils/BrokerRequestComparisonUtils.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/parsers/utils/ParserUtils.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/PinotQuery2BrokerRequestConverter.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/Pql2AstListener.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/Pql2CompilationException.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/Pql2Compiler.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/BaseAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/BetweenPredicateAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/BooleanOperatorAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/ComparisonPredicateAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/FunctionCallAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/GroupByAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/IdentifierAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/InPredicateAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/IsNullPredicateAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/OptionAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/OrderByAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/OrderByExpressionAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/OutputColumnAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/PredicateListAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/PredicateParenthesisGroupAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/RegexpLikePredicateAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/SelectAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/StarColumnListAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/TableNameAstNode.java
 delete mode 100644 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/TextMatchPredicateAstNode.java
 rename pinot-common/src/main/java/org/apache/pinot/{pql/parsers/pql2/ast => 
sql}/FilterKind.java (94%)
 copy 
pinot-common/src/main/java/org/apache/pinot/{pql/parsers/pql2/ast/ExpressionParenthesisGroupAstNode.java
 => sql/parsers/PinotSqlType.java} (70%)
 rename 
pinot-common/src/main/java/org/apache/pinot/{pql/parsers/pql2/ast/BinaryMathOpAstNode.java
 => sql/parsers/SqlNodeAndOptions.java} (64%)
 rename 
pinot-common/src/main/java/org/apache/pinot/{pql/parsers/pql2/ast/PredicateAstNode.java
 => sql/parsers/dml/DataManipulationStatement.java} (50%)
 rename 
pinot-common/src/main/java/org/apache/pinot/{pql/parsers/pql2/ast/TopAstNode.java
 => sql/parsers/dml/DataManipulationStatementParser.java} (56%)
 create mode 100644 
pinot-common/src/main/java/org/apache/pinot/sql/parsers/dml/InsertIntoFile.java
 create mode 100644 
pinot-common/src/main/java/org/apache/pinot/sql/parsers/parser/SqlInsertFromFile.java
 create mode 100644 
pinot-common/src/main/java/org/apache/pinot/sql/parsers/parser/UnparseUtils.java
 create mode 100644 
pinot-common/src/test/java/org/apache/pinot/common/function/scalar/DataTypeConversionFunctionsTest.java
 delete mode 100644 
pinot-common/src/test/java/org/apache/pinot/common/request/transform/TransformExpressionTreeTest.java
 delete mode 100644 
pinot-common/src/test/java/org/apache/pinot/pql/parsers/Pql2CompilerTest.java
 delete mode 100644 
pinot-common/src/test/java/org/apache/pinot/request/BrokerRequestSerializationTest.java
 create mode 100644 
pinot-common/src/test/java/org/apache/pinot/sql/parsers/dml/InsertIntoFileTest.java
 delete mode 100644 pinot-common/src/test/resources/pql_queries.list
 delete mode 100644 pinot-common/src/test/resources/sql_queries.list
 create mode 100644 
pinot-connectors/pinot-spark-connector/src/main/scala/org/apache/pinot/connector/spark/connector/PinotGrpcServerDataFetcher.scala
 copy {pinot-plugins/pinot-file-system/pinot-adls => 
pinot-connectors/prestodb-pinot-dependencies/pinot-java-client-jdk8}/pom.xml 
(51%)
 create mode 120000 
pinot-connectors/prestodb-pinot-dependencies/pinot-java-client-jdk8/src
 create mode 100644 
pinot-controller/src/main/java/org/apache/pinot/controller/api/access/ZkBasicAuthAccessControlFactory.java
 copy 
pinot-controller/src/main/java/org/apache/pinot/controller/api/{resources/SuccessResponse.java
 => exception/NoTaskMetadataException.java} (74%)
 copy 
pinot-controller/src/main/java/org/apache/pinot/controller/api/{resources/SuccessResponse.java
 => exception/NoTaskScheduledException.java} (74%)
 copy 
pinot-controller/src/main/java/org/apache/pinot/controller/api/{resources/SuccessResponse.java
 => exception/TaskAlreadyExistsException.java} (73%)
 copy 
pinot-controller/src/main/java/org/apache/pinot/controller/api/{resources/SuccessResponse.java
 => exception/UnknownTaskTypeException.java} (74%)
 copy 
pinot-controller/src/main/java/org/apache/pinot/controller/api/{resources/SuccessResponse.java
 => exception/UserAlreadyExistsException.java} (72%)
 copy 
pinot-controller/src/main/java/org/apache/pinot/controller/api/resources/{SuccessResponse.java
 => ConfigSuccessResponse.java} (67%)
 create mode 100644 
pinot-controller/src/main/java/org/apache/pinot/controller/api/resources/PinotAccessControlUserRestletResource.java
 create mode 100644 
pinot-controller/src/main/java/org/apache/pinot/controller/api/resources/PinotUpsertRestletResource.java
 create mode 100644 
pinot-controller/src/main/resources/app/components/User/AddUser.tsx
 create mode 100644 
pinot-controller/src/main/resources/app/components/User/UpdateUser.tsx
 create mode 100644 pinot-controller/src/main/resources/app/pages/UserPage.tsx
 create mode 100644 
pinot-controller/src/test/java/org/apache/pinot/controller/api/PinotAccessControlUserRestletResourceTest.java
 create mode 100644 
pinot-controller/src/test/java/org/apache/pinot/controller/api/PinotUpsertRestletResourceTest.java
 create mode 100644 
pinot-controller/src/test/resources/memory_estimation/schema-for-upsert.json
 create mode 100644 
pinot-controller/src/test/resources/memory_estimation/table-config-for-upsert.json
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/auth/ZkBasicAuthPrincipal.java
 delete mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/operator/combine/GroupByCombineOperator.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/operator/filter/H3InclusionIndexFilterOperator.java
 copy 
pinot-core/src/main/java/org/apache/pinot/core/operator/filter/{TextMatchFilterOperator.java
 => TextContainsFilterOperator.java} (68%)
 delete mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/operator/query/AggregationGroupByOperator.java
 delete mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/plan/AggregationGroupByPlanNode.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/aggregation/function/FirstDoubleValueWithTimeAggregationFunction.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/aggregation/function/FirstFloatValueWithTimeAggregationFunction.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/aggregation/function/FirstIntValueWithTimeAggregationFunction.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/aggregation/function/FirstLongValueWithTimeAggregationFunction.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/aggregation/function/FirstStringValueWithTimeAggregationFunction.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/aggregation/function/FirstWithTimeAggregationFunction.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/aggregation/function/PercentileSmartTDigestAggregationFunction.java
 delete mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/aggregation/groupby/AggregationGroupByTrimmingService.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/distinct/raw/BaseRawBigDecimalSingleColumnDistinctExecutor.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/distinct/raw/RawBigDecimalSingleColumnDistinctOnlyExecutor.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/distinct/raw/RawBigDecimalSingleColumnDistinctOrderByExecutor.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/executor/sql/SqlQueryExecutor.java
 delete mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/query/request/context/utils/BrokerRequestToQueryContextConverter.java
 delete mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/requesthandler/PinotQueryParserFactory.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/transport/QueryResponse.java
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/core/util/trace/BuiltInTracer.java
 copy 
pinot-core/src/{test/java/org/apache/pinot/core/operator/transform/function/GreaterThanTransformFunctionTest.java
 => main/java/org/apache/pinot/core/util/trace/TracedThread.java} (54%)
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/OutputColumnListAstNode.java
 => 
pinot-core/src/main/java/org/apache/pinot/core/util/trace/TracedThreadFactory.java
 (52%)
 create mode 100644 
pinot-core/src/main/java/org/apache/pinot/server/access/ZkBasicAuthAccessFactory.java
 create mode 100644 
pinot-core/src/test/java/org/apache/pinot/core/auth/ZkBasicAuthTest.java
 delete mode 100644 
pinot-core/src/test/java/org/apache/pinot/core/query/aggregation/groupby/AggregationGroupByTrimmingServiceTest.java
 delete mode 100644 
pinot-core/src/test/java/org/apache/pinot/core/query/aggregation/groupby/StringGroupKeyTest.java
 create mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/BigDecimalQueriesTest.java
 copy 
pinot-core/src/test/java/org/apache/pinot/queries/{SumGreatestLeastQueriesTest.java
 => CastQueriesTest.java} (67%)
 delete mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/ExpectedQueryResult.java
 create mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/FirstWithTimeQueriesTest.java
 create mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/InterSegmentGroupByMultiValueQueriesTest.java
 create mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/InterSegmentGroupBySingleValueQueriesTest.java
 delete mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/InterSegmentOrderByMultiValueQueriesTest.java
 delete mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/InterSegmentOrderBySingleValueQueriesTest.java
 delete mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/InterSegmentResultTableMultiValueQueriesTest.java
 delete mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/InterSegmentResultTableSingleValueQueriesTest.java
 create mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/NativeAndLuceneComparisonTest.java
 create mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/RangeQueriesTest.java
 delete mode 100644 
pinot-core/src/test/java/org/apache/pinot/queries/UrlFunctionGroupByTest.java
 rename pinot-core/src/test/resources/data/text_search_data/{pql_query1.txt => 
queries.txt} (100%)
 create mode 100644 
pinot-integration-tests/src/test/java/org/apache/pinot/integration/tests/SegmentGenerationMinionClusterIntegrationTest.java
 create mode 100644 
pinot-minion/src/main/java/org/apache/pinot/minion/api/resources/HealthCheckResource.java
 copy 
pinot-perf/src/main/java/org/apache/pinot/perf/{BenchmarkNativeAndLuceneBasedLike.java
 => BenchmarkNativeVsLuceneTextIndex.java} (58%)
 delete mode 100644 
pinot-plugins/pinot-stream-ingestion/pinot-pulsar/src/test/java/org/apache/pinot/plugin/stream/pulsar/PulsarStandaloneCluster.java
 delete mode 100644 
pinot-plugins/pinot-stream-ingestion/pinot-pulsar/src/test/resources/standalone.properties
 create mode 100644 
pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/creator/impl/stats/BigDecimalColumnPreIndexStatsCollector.java
 create mode 100644 
pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/creator/impl/text/NativeTextIndexCreator.java
 copy 
pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/index/readers/{BytesDictionary.java
 => BigDecimalDictionary.java} (64%)
 create mode 100644 
pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/index/readers/text/NativeTextIndexReader.java
 create mode 100644 
pinot-segment-local/src/test/java/org/apache/pinot/segment/local/segment/creator/DictionaryOptimiserTest.java
 create mode 100644 
pinot-segment-local/src/test/java/org/apache/pinot/segment/local/segment/index/creator/NativeTextIndexCreatorTest.java
 create mode 100644 
pinot-segment-local/src/test/resources/data/mixed_cardinality_data.avro
 create mode 100644 
pinot-spi/src/main/java/org/apache/pinot/spi/config/table/ColumnStats.java
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/IntegerLiteralAstNode.java
 => 
pinot-spi/src/main/java/org/apache/pinot/spi/config/table/SegmentZKPropsConfig.java
 (60%)
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/LimitAstNode.java
 => 
pinot-spi/src/main/java/org/apache/pinot/spi/config/table/TimestampConfig.java 
(58%)
 create mode 100644 
pinot-spi/src/main/java/org/apache/pinot/spi/config/table/TimestampIndexGranularity.java
 create mode 100644 
pinot-spi/src/main/java/org/apache/pinot/spi/config/task/AdhocTaskConfig.java
 copy 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/StarExpressionAstNode.java
 => pinot-spi/src/main/java/org/apache/pinot/spi/config/user/AccessType.java 
(81%)
 copy 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/ExpressionParenthesisGroupAstNode.java
 => pinot-spi/src/main/java/org/apache/pinot/spi/config/user/ComponentType.java 
(81%)
 copy 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/StarExpressionAstNode.java
 => pinot-spi/src/main/java/org/apache/pinot/spi/config/user/RoleType.java (81%)
 create mode 100644 
pinot-spi/src/main/java/org/apache/pinot/spi/config/user/UserConfig.java
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/StringLiteralAstNode.java
 => pinot-spi/src/main/java/org/apache/pinot/spi/trace/BaseRecording.java (64%)
 rename 
pinot-broker/src/main/java/org/apache/pinot/broker/api/RequestStatistics.java 
=> 
pinot-spi/src/main/java/org/apache/pinot/spi/trace/DefaultRequestContext.java 
(70%)
 copy pinot-common/src/main/java/org/apache/pinot/parsers/QueryCompiler.java => 
pinot-spi/src/main/java/org/apache/pinot/spi/trace/FilterType.java (75%)
 create mode 100644 
pinot-spi/src/main/java/org/apache/pinot/spi/trace/InvocationRecording.java
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/LiteralAstNode.java
 => pinot-spi/src/main/java/org/apache/pinot/spi/trace/InvocationScope.java 
(80%)
 copy pinot-common/src/main/java/org/apache/pinot/parsers/QueryCompiler.java => 
pinot-spi/src/main/java/org/apache/pinot/spi/trace/NoOpRecording.java (72%)
 create mode 100644 
pinot-spi/src/main/java/org/apache/pinot/spi/trace/RequestContext.java
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/StarExpressionAstNode.java
 => pinot-spi/src/main/java/org/apache/pinot/spi/trace/RequestScope.java (78%)
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/ExpressionParenthesisGroupAstNode.java
 => pinot-spi/src/main/java/org/apache/pinot/spi/trace/Scope.java (75%)
 rename 
pinot-common/src/main/java/org/apache/pinot/pql/parsers/pql2/ast/WhereAstNode.java
 => pinot-spi/src/main/java/org/apache/pinot/spi/trace/TraceState.java (52%)
 create mode 100644 
pinot-spi/src/main/java/org/apache/pinot/spi/trace/Tracer.java
 create mode 100644 
pinot-spi/src/main/java/org/apache/pinot/spi/trace/Tracing.java
 rename 
{pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/rebalance
 => 
pinot-spi/src/main/java/org/apache/pinot/spi/utils}/RebalanceConfigConstants.java
 (98%)
 rename {pinot-common/src/main/java/org/apache/pinot/common => 
pinot-spi/src/main/java/org/apache/pinot/spi}/utils/StringUtil.java (95%)
 rename {pinot-controller/src/main/java/org/apache/pinot/controller/helix => 
pinot-spi/src/main/java/org/apache/pinot/spi/utils/builder}/ControllerRequestURLBuilder.java
 (86%)
 create mode 100644 
pinot-spi/src/main/java/org/apache/pinot/spi/utils/builder/UserConfigBuilder.java
 create mode 100644 
pinot-spi/src/test/java/org/apache/pinot/spi/config/table/TimestampIndexGranularityTest.java
 create mode 100644 
pinot-spi/src/test/java/org/apache/pinot/spi/config/task/AdhocTaskConfigTest.java
 create mode 100644 
pinot-spi/src/test/java/org/apache/pinot/spi/stream/StreamDataProducerTest.java
 create mode 100644 
pinot-spi/src/test/java/org/apache/pinot/spi/utils/JsonUtilsTestSamplePojo.java
 create mode 100644 
pinot-tools/src/main/java/org/apache/pinot/tools/TimestampIndexQuickstart.java
 create mode 100644 
pinot-tools/src/main/java/org/apache/pinot/tools/streams/AvroFileSourceGenerator.java
 create mode 100644 
pinot-tools/src/main/java/org/apache/pinot/tools/streams/PinotRealtimeSource.java
 create mode 100644 
pinot-tools/src/main/java/org/apache/pinot/tools/streams/PinotSourceDataGenerator.java
 rename pinot-common/src/main/java/org/apache/pinot/parsers/QueryCompiler.java 
=> 
pinot-tools/src/main/java/org/apache/pinot/tools/streams/PinotStreamRateLimiter.java
 (73%)
 create mode 100644 
pinot-tools/src/main/java/org/apache/pinot/tools/streams/RsvpSourceGenerator.java
 create mode 100644 
pinot-tools/src/main/java/org/apache/pinot/tools/streams/githubevents/GithubPullRequestSourceGenerator.java
 delete mode 100644 
pinot-tools/src/main/resources/conf/sample_query_comparison.conf
 create mode 100644 
pinot-tools/src/test/java/org/apache/pinot/tools/streams/PinotRealtimeSourceTest.java


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to