You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@druid.apache.org by gi...@apache.org on 2023/12/15 15:34:06 UTC

(druid) branch dependabot/maven/org.codehaus.mojo-javacc-maven-plugin-3.0.1 updated (ab4a0708bd4 -> 3b1ca21a6b6)

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

github-bot pushed a change to branch dependabot/maven/org.codehaus.mojo-javacc-maven-plugin-3.0.1
in repository https://gitbox.apache.org/repos/asf/druid.git


 discard ab4a0708bd4 Bump org.codehaus.mojo:javacc-maven-plugin from 2.4 to 3.0.1
     add d5d483fdc94 Bump org.apache.rat:apache-rat-plugin from 0.12 to 0.15 (#14817)
     add 5f54ae7d274 Bump org.apache.maven.plugins:maven-surefire-plugin (#14813)
     add 76c79639796 Bump com.github.oshi:oshi-core from 6.4.2 to 6.4.4 (#14814)
     add 0967048dca5 Bump org.scala-lang:scala-library from 2.13.9 to 2.13.11 (#14826)
     add f0a79fa0e4d Bump org.apache.maven.plugins:maven-source-plugin from 2.2.1 to 3.3.0 (#14812)
     add 2fdf5b195f0 Bump org.assertj:assertj-core from 3.19.0 to 3.24.2 (#14815)
     add e33d2db2359 202307-notebooks Template amends (#14683)
     add 8abdaa239bc Bump dropwizard.metrics.version from 4.0.0 to 4.2.19 (#14824)
     add aeeeed3b354 Bump protobuf.version from 3.21.7 to 3.24.0 (#14823)
     add a38579ab3c0 Retention rules API documentation refactor (#14623)
     add 8fa78594ea6 Druid SQL API documentation refactor (#14711)
     add 0b2563fea32 Web console: adding format notice for CSV and TSV (#14783)
     add 9be0f64f506 Bump org.apache.commons:commons-compress from 1.21 to 1.23.0 (#14820)
     add d9221e46e4b Completely disable cachingCost balancer strategy (#14798)
     add 7911a04064b Refactoring of multi-topic kafka ingestion docs (#14828)
     add e55fe67535f Bump apache.curator.version from 5.4.0 to 5.5.0 (#14843)
     add 8be7751dbd9 Bump org.tukaani:xz from 1.8 to 1.9 (#14839)
     add 97c37730121 Bump commons-cli:commons-cli from 1.3.1 to 1.5.0 (#14837)
     add 3954685aae1 Report more metrics to monitor K8s task runner (#14771)
     add faf79470ae5 Bump io.dropwizard.metrics:metrics-graphite from 3.1.2 to 4.2.19 (#14842)
     add 2561477e875 Jupyter nested columns tutorial (#14788)
     add f585f0a8ed9 202306-docs-notebook topn (#14478)
     add 26d82fd342d fix filtering bug in filtering unnest cols and dim cols: Received a non-applicable rewrite (#14587)
     add 6b14dde50ef deprecate config-magic in favor of json configuration stuff (#14695)
     add 6b4dda964d4 Docusaurus2 upgrade for master (#14411)
     add cb27d0d2ed0 Web console: enable Kafka multi-topic ingestion from the data loader (#14833)
     add 5d4ac641783 Adapt maxSegmentsToMove based on cluster skew (#14584)
     add dc2ae1e99c7 Web console: improving the helper queries by allowing for running inline helper queries (#14801)
     add b97cc45d813 Add clarification to the docs for multi-topic Kafka ingestion (#14847)
     add fffb2e4fe72 Speed up SQLMetadataStorageActionHandlerTest (#14856)
     add 2a7fbf2ab46 Bump org.apache.directory.api:api-util from 1.0.3 to 2.1.3 (#14852)
     add 2cc3bd63839 Bump joda-time:joda-time from 2.12.4 to 2.12.5 (#14855)
     add 37db5d9b81b Reset offsets supervisor API (#14772)
     add 59415ba9b2b Web console: expose new coordinator properties in the dialog (#14791)
     add 7e147ee9054 Web console: Reset to specific offsets dialog (#14863)
     add 9c124f2cde0 Add a configurable bufferPeriod between when a segment is marked unused and deleted by KillUnusedSegments duty (#12599)
     add a8eaa1e4ed8 Skip streaming auto-scaling action if supervisor is idle (#14773)
     add 1e14df4c496 Bump com.ibm.icu:icu4j from 55.1 to 73.2 (#14853)
     add 097b6450057 Clean up after add kill bufferPeriod (#14868)
     add 263ac36e8d7 docs: fix autolabeler for jupyter notebooks (#14862)
     add 9065ef1aff0 Fix a bug in QosFilter (#14859)
     add 07a193a1420 Use separate executor for each coordinator duty group (#14869)
     add c211dcc4b31 Clean up compaction logs on coordinator (#14875)
     add 92906059d29 Remove segmentsToBeDropped from SegmentTransactionInsertAction (#14883)
     add a38b4f04919 Add topic name as a column in the Kafka Input format (#14857)
     add 631dc3b589e add Kafka topic column controls (#14865)
     add 0dfd99e3811 202307-notebook-unionall (#14726)
     add 9fe7c01c16c Automatic compaction API documentation refactor (#14740)
     add 5f74ef56f18 Clean up Kafka supervisor topic (#14651)
     add 5d1412949e4 enable sql compatible null handling mode by default (#14792)
     add 18f7cb69262 Fixed broken URL of python api tutorial (#14881)
     add d87056e708c Upgrade guava version to 31.1-jre (#14767)
     add 194a9c9abc1 set druid.expressions.useStrictBooleans to true by default (#14734)
     add bd505062de1 Improve streaming ingestion completion timeout error message (#14636)
     add 14c1aff150d Fix error messages relating to OVERWRITE keyword (#14870)
     add 9376d8d6e1c Refactor: Move `UpdateCoordinatorStateAndPrepareCluster` duty out of `DruidCoordinator` (#14845)
     add b9a33949fd4 Fix aggregation filter expression processing in the absense of projection (#14893)
     add 6817de9376c Doc changes for avatica transparent reconnection (#14896)
     add fb053c399cf consolidate json and auto indexers, remove v4 nested column serializer (#14456)
     add 7b5012ea6e3 override retry attempts for InputEntityIteratingReaderTest for much faster test run (#14897)
     add e806d093099 Allow EARLIEST/EARLIEST_BY/LATEST/LATEST_BY for STRING columns without specifying maxStringBytes (#14848)
     add 76e5048aabe fix supervisor spec api submission commands (#14877)
     add 989ed8d0c20 Fix null check for JWT claims (#14872)
     add dfb5a988882 Add coordinator API for unused segments (#14846)
     add 0c76df1c7dc Enable Continuous auto kill (#14831)
     add 36e659a5015 remove group-by v1 (#14866)
     add f9f734cde5b Display the output column name in InvalidNullByteException (#14780)
     add 54336e2a3e2 Imporve on incremental compilation (#14860)
     add 3c7b237c225 Add docs for ingesting Kafka topic name (#14894)
     add 388d5ecf78d Fix reported CVEs (#14882)
     add e51181957c5 Use num cores to determine balancerComputeThreads (#14902)
     add ad32f845867 Fix capacity response in mm-less ingestion (#14888)
     add 95b0de61d17 Move some lifecycle management from doTask -> shutdown for the mm-less task runner (#14895)
     add 9142f4b8d7a docs: update note in automatic compaction doc (#14908)
     add 30c49c4cfc3 Web console: misc fixes and SQL query re-formatting (#14906)
     add 9fcbf05c5d5 Adjusting `SqlStatementResource` and `SqlTaskResource` to set request attribute via a new method. (#14878)
     add d6565f46b00 Increase the computed value of replicationThrottleLimit (#14913)
     add 8885805bb39 Update filters.md (#14917)
     add 004cd012e1c HttpClient: Include error handler on all connection attempts. (#14915)
     add d201ea0ece0 prometheus-emitter: add extraLabels parameter (#14728)
     add 8263f0d1e93 Reduce coordinator logs when operating normally (#14926)
     add d295b9158ff Web console: dynamic query parameters UI (#14921)
     add 42cfb999cd5 Added brush to time-chart (#14929)
     add 04a1153d0f5 line chart fix others not mapping correctly (#14931)
     add 680669fd3a7 show execution dialog in task view (#14930)
     add dea9d4f1a75 cleaning DruidProcessingConfig bindings (#14927)
     add 7f26b80e213 Simplify ServiceMetricEvent.Builder (#14933)
     add ec630e36710 Remove deprecated coordinator dynamic configs (#14923)
     add d4e972e1e4b Add checking for new checkpoint (#14353)
     add 289ee1e0114 Refactor: Cleanup NoopTask (#14938)
     add 9d6ca61ac1f Verify statsd mock client interaction in unit test (#14939)
     add 8088a763a69 Vectorize earliest aggregator for both numeric and string types (#14408)
     add 425ebaa387c Query tips doc (#14922)
     add 706b57c0b2a fixup array and mvd sql docs (#14928)
     add 959148ad370 Add code to wait for segments generated to be loaded on historicals (#14322)
     add 6ee0b06e38d Auto configuration for maxSubqueryBytes (#14808)
     add 23308c050da Remove DruidAggregateCaseToFilterRule (#14940)
     add a8fa979115a Unnest dont push down not (#14942)
     add 88f3c9baed5 Fix bug in computed value of balancerComputeThreads (#14947)
     add e100b18e86f Updated documentation for OshiSysMonitor (#14912)
     add f9cf500a695 Extend GHA autolabeler to other areas (#14903)
     add 647686aee2a Add test and metrics for KillStalePendingSegments duty (#14951)
     add 699893bcff2 Fix StringLastAggregatorFactory equals/toString (#14907)
     add 09f7dfe3278 docs: update docusaurus 2 stuff (#14864)
     add 2b7f2c51190 use VectorValueSelector instead of BaseLongVectorValueSelector for StringFirstAggregatorFactory.factorizeVector (#14957)
     add dec6a0aa14d Update google client apis to latest version (#14414)
     add 7871e633c68 Fix bug in KillStalePendingSegments (#14961)
     add 3a453f7a3cd docs: add note about transparent_reconnection (#14953)
     add f773d839147 Mixed task runner for migration to mm-less ingestion (#14918)
     add 757603a773d Set task location as k8sPodName for mm-less ingestion (#14959)
     add 5cecf6ce8f5 fix issue with segment metadata cache and complex types when doing out of order upgrades from 0.22 (#14948)
     add 0f38a37b9d8 Tweak GHA runner label. (#14963)
     add 5d16d0edf08 Count distinct returned incorrect results without useApproximateCountDistinct (#14748)
     add 891f0a3fe99 longer compatibility window for nested column format v4 (#14955)
     add 6371721e17e Add DOAP file for Druid (#14954)
     add 286eecad7cf Simplify DruidCoordinatorConfig and binding of metadata cleanup duties (#14891)
     add 23b78c0f955 use mmap for nested column value to dictionary id lookup for more chill heap usage during serialization (#14919)
     add b7bb5ee1dbf Upload docker and druid service logs as artifacts on GitHub Actions IT run failure (#14967)
     add 4c575049605 Fix the uncaught exceptions when materializing results as frames (#14970)
     add 7f757e33f06 Fix the created property in DOAP RDF file (#14971)
     add bf99d2c7b2e Fix for schema mismatch to go down using the non vectorize path till we update the vectorized aggs properly (#14924)
     add 5c42ac8c4db Fix for latest agg to handle nulls in time column. Also adding optimi… (#14911)
     add 7bbefd57413 Updating version in from.ftl (#14982)
     add 0e3df2d2e9e Clean up stale locks if segment allocation fails (#14966)
     add 3ae5e978012 Add IS [NOT] TRUE, IS [NOT] FALSE native functions. (#14977)
     add 279b3818f0e Make Unnest work with nullif operator (#14993)
     add 0fc5d5405a7 Tweak GHA runner label for MSQ (#14992)
     add 39d95955f55 Do not eagerly close inner iterators in CloseableIterator#flatMap (#14986)
     add 973fbaf962f Adding addition logging for taskIdReady in MSQ for debugging lock races. (#14998)
     add d459df8d6e3 Fix log syntax (#15004)
     add 4f498e64691 SQL: Plan non-equijoin conditions as cross join followed by filter. (#14978)
     add 73bab2f0205 Add option to copy query results directly to clipboard (#14889)
     add e8773f4d0f5 Enable already passing tests in DecoupledPlanningCalciteQueryTest (#14996)
     add 79f882f48c1 Fix exception cause logging in QueryResultPusher  (#14975)
     add 823f620edea Add IS [NOT] DISTINCT FROM to SQL and join matchers. (#14976)
     add 08cf290da27 Configure caching for static-check actions (#15010)
     add 82e809c8d05 fix (#15017)
     add 22abc10f245 update RoaringBitmap to 0.9.49 (#15006)
     add 883c2692d23 Adding new function decode_base64_utf8 and expr macro (#14943)
     add ebb794632ac Allow users with STATE permissions to read and write the state APIs for querying with deep storage (#14944)
     add e76962f4538 Use annotation to mark DecoupleIgnore (#15005)
     add 409bffe7f28 Rename IMSC.announceHistoricalSegments to commitSegments (#15021)
     add 5cee9f61484 Allow cancellation of MSQ tasks if they are waiting for segments to load (#15000)
     add be3f93e3cf0 Restore tasks when lifecycle start (#14909)
     add d7c152c82c1 Add a TaskReport for "kill" tasks (#15023)
     add c62193c4d75 Add support for concurrent batch Append and Replace (#14407)
     add c184b5250f1 Unnest now works on MSQ (#14886)
     add 0850e615b2f Remove istrue, isfalse vectorized impls. (#14991)
     add 48b6d2abf97 skip org.owasp:dependency-check on extensions-contrib modules and suppress false-positive gRPC CVEs (#15026)
     add f7a549123b9 Commit segments only when they are covered by active locks (#15027)
     add ba6101ad752 Remove `EOFException` catch block from the Avro decoders (#15018)
     add 75af741a96d Revert "SQL: Plan non-equijoin conditions as cross join followed by filter. (#14978)" (#15029)
     add 7301e60a9c5 Add metrics for number of segments generated per task in MSQ (#14980)
     add 3dabfead050 Fix getResultType for HLL, quantiles aggregators. (#15043)
     add 8e22a178cc9 Support getTaskLocation for mixed task runner (#15033)
     add fc929e6d25f upgrade shade (#15042)
     add 022950a0c53 MV_FILTER_ONLY may run into Exceptions in case duplicate values were processed (#15012)
     add fa61e654e47 fix uploading IT docker logs to GHA artifacts (#15046)
     add 5f3b3101153 Build reliablity fixes (#15048)
     add db71e28808c Enable SortProjectTransposeRule (#15002)
     add 9a4433bbad7 Fix invalid segment path when using hdfs as the intermediate deepstore (#14984)
     add ebb9724c264 Pass jvm option to write heap dump on out of memory (#15053)
     add 2f1bcd67178 Adding `"segment/scan/active" metric for processing thread pool. (#15060)
     add 86087cee0a0 Fix Peon not fail gracefully (#14880)
     add 07c28f17ca6 Fix missing format strings in calls to DruidException.build  (#15056)
     add 2785e062d72 Correct quotation in drill query files (#15044)
     add d038237ecee memcached cache: switch to AWS elasticache-java-cluster-client and add TLS support  (#14827)
     add f1edd671fb4 Exposing optional replaceMissingValueWith in lookup function and macros (#14956)
     add 261f54dc040 coalesce on unnest row mismatch fix (#15019)
     add f3d1c8b70ee Enable back testcases in CalciteWindowQueryTest (#15045)
     add 64754b6799a Allow users to pass task payload via deep storage instead of environment variable (#14887)
     add cb050282a03 Intervals are updated properly for Unnest queries (#15020)
     add adef2069b15 Make unit tests pass with Java 21 (#15014)
     add 3342e03ea8b Windowing processing may have run into Exceptions when the whole table was processed (#15064)
     add 7e8f3e69ef7 Avoid intermediate offsets in bucketStart calculation logic to handle DST transition (#15038)
     add 2ed4fd1ae31 Compute broadcast-join segmentMapFn only once per worker. (#15007)
     add 28870c702ae Resolve reported CVEs (#15081)
     add 632811b2858 fix json compat layer to not rewrite v4 into v5 after segment merging (#14997)
     add a9021e4cd7d Fix NPE with lenient aggregators merging in segmentMetadata. (#15078)
     add c888ac5d61e fix path of druid service IT logs (#15082)
     add 90e4b25620b Fix lead/lag to be usable without offset (#15057)
     add 88476e0e835 docs: add note about transparent_reconnection for Avatica (#15066)
     add 30cf76db994 Field writers for numerical arrays (#14900)
     add 3afe09a19d9 urlencode nested serializer temp file names so they dont explode stuff (#15068)
     add b8d03d36b09 Free up the resources when materializing the results as Frames (#15032)
     add b4bc9b69506 fix issue with auto columns with mix of scalar values and empty arrays (#15083)
     add 2c286d6f428 Fix monomorphic processing code running on JDK8 since it references a non-existing method (#15092)
     add 7e987e3d696 Add query context parameter for segment load wait (#15076)
     add 2164dafb991 docs: update unnest to use crossjoin instead of comma (#15074)
     add 36d7b3cc656 Add CalciteSysQueryTest to enable some testing of bindable plans. (#15070)
     add 06c5527c85d Allow aliasing of Macros and add new alias for complex decode 64 (#15034)
     add 1a06ef5a242 Fixing old function used (#15099)
     add f9439970c92 run build and unit tests using Java 21 (#15088)
     add 57ab8e13dc6 Updating plans when using joins with unnest on the left (#15075)
     add 7b869fd37a9 Change type of AVG aggregates to double (#15089)
     add b5a87fd89bc Support constant args in window functions (#15071)
     add c7d0615af3f Fix the build for #15013.: Lookup jitter upstream build fix (#15103)
     add c483cb863d4 Fix IndexerWorkerClient#fetchChannelData when response has data and error. (#15084)
     add e2cc1c4ad19 Add metric -- count of queries waiting for merge buffers (#15025)
     add 7a35ce886d8 Add ability for MSQ tasks to query realtime tasks (#15024)
     add 40a6dc46313 Optimize used segment fetching in Kill tasks (#15107)
     add 549ef562884 UNION ALLs in MSQ (#14981)
     add 1fc8fb1b200 add a bunch of tests with array typed columns to CalciteArraysQueryTest (#15101)
     add 36edbce0366 Fix compilation failure in master (#15111)
     add b0edbc3d912 MSQ writes out string arrays instead of MVDs by default (#15093)
     add 90a1458ac9b Parse passwords containing colon correctly (#15109)
     add 95bf331c08f Rename the default setting of 'maxSubqueryBytes' from 'unlimited' to 'disabled' (#15108)
     add fda8d2b7f3d fix debugging and running with intellij runConfiguration (#15115)
     add 48f35b3fddb Add query id to processing pool thread name. (#15059)
     add 23605c1eddd Enable resultset validation of Drill tests (#15096)
     add 263e106714d docs: remove experimental note from unnest docs (#15123)
     add 5f860724561 Prepare master for Druid 29 (#15121)
     add dba0246aca7 Added UI support for waitTillSegmentsLoad (#15110)
     add 52d94b09a77 update jetty & netty4 dependencies (#15129)
     add c6ca990f1fd Rewrite EARLIEST/LATEST query operators to EARLIEST_BY/LATEST_BY (#15095)
     add ae88f2c0b6e Fix non-sqlcompat validation in CalciteWindowQueryTest (#15086)
     add 10aab7506e1 Dynamic configuration API documentation refactor (#15098)
     add 265c8119637 docs: remove experimental note from query from deep storage docs (#15132)
     add d0f64608eb1 sql compatible three-valued logic native filters  (#15058)
     add a0fd9ec55ca fix issue with SQL boolean constants not respecting nulls when strict booleans and sql compatible null handling are enabled (#15135)
     add 61ea9e07c5a Limit pages size to a configurable limit (#14994)
     add 0a6f78c0bbc Fix GHA workflow bugs (#15138)
     add d25caaefa42 Add support for streaming ingestion with concurrent replace (#15039)
     add 4deeb7e9364 Fix issue with checking segment load status (#15147)
     add f0a70fe3c45 Fixing the flaky tests. (#15142)
     add 6d62c758668 Fix columns with null values in windowing expressions (#15131)
     add 9ca10c7bd7a Added concurrent compaction switches (#15114)
     add 4b0d1b3488a Fix expression result writing of arrays in Hadoop Ingestion (#15127)
     add dc8d2192c34 Introduce natural comparator for types that don't have a StringComparator (#15145)
     add 0a27a7a7ca1 Update eirslett frontend (#15154)
     add dc0b163e192 Separate task lifecycle from kubernetes/location lifecycle (#15133)
     add 953ce794396 Add undocumented taskLockType to MSQ. (#15168)
     add b4540ed5d4b Optimize the reading of numerical frame arrays in MSQ  (#15175)
     add 22034a16302 preserve Rows.objectToStrings behavior of translating null into "null" inside of lists and arrays (#15190)
     add c58b7f40eee Rename windowing option (#15184)
     add 061cfee224a add native filters for "(filter) is true" and "(filter) is false" (#15182)
     add 5c14b42e72e fix incorrect unnest dimension cursor value matcher implementation (#15192)
     add 780207869b3 Attach user identity to router request logs (#15126)
     add fa311dd0b6f Cast the values read in the EXTERN function to the type in the row signature  (#15183)
     add a8febd457ce A Replacing task must read segments created before it acquired its lock (#15085)
     add 9fb0dbfc9f4 Fix json inputs for drill windowing tests (#15148)
     add 1f39c054a76 Fix GHA workflow bugs (#15209)
     add 5752a1a3831 Proper default for taskLockType in streaming ingestion (#15213)
     add 352702bb259 run some integration tests with Java 21 (#15104)
     add e03f863cf69 update core Apache Kafka dependencies to 3.6.0 (#15214)
     add fbbb9c77305 Allow DESC ordering in window expressions (#15195)
     add 33fdd770f70 Consider only supervisors with append lock for concurrent transactional replace (#15220)
     add c8e458452db Fix native is boolean filter cache key tests to test the right thing (#15216)
     add b95035f183e Fix VirtualColumn related issues in window expressions (#15119)
     add 2e31cb2901b DrillWindowQueryTest: use proper way to decide if the query is ordered (#15118)
     add 65b69cded40 Filter pending segments upgraded with transactional replace (#15169)
     add 63e3e9531d6 Update S3 retry logic to account for the underlying cause in case of `IOException` (#15238)
     add 4149c9422cf cleanup temp files for nested column serializer (#15236)
     add 06f40a00192 remove calcite AggregateRemoveRule to fix nested group by query with order by in outer query (#15237)
     add 6784e9c507b Fix summary row issues in case postaggregations are happening (#15232)
     add c5fa649ea57 Rename segment load wait parameter (#15251)
     add 207398a47de Initialize null handling in CompressedBigDecimalAggregatorTimeseriesTestBase to fix failing test(#15252)
     add 7a25ee4fd9a Ability to send task types to k8s or worker task runner (#15196)
     add f48263bbb3f Report function name for unknown exceptions during execution (#14987)
     add e7b8e6569b0 Updating plugin which has fix for corrupt nodejs pkg (#15259)
     add fc0b940f785 Document the allowed range of announcer maxBytesPerNode (#15063)
     add f1132d20c57 use datasketches-java 4.2.0 (#15257)
     add e9b7e4a0eb2 fix JSON flaky tests (#15261)
     add 7c8e8413627 Suppress CVE's in master (#15231)
     add 60c2ad597ab Enhance json parser error logging to better track Istio Proxy error message (#15176)
     add 737947754df docs: add concurent compaction docs (#15218)
     add f4a74710e6d Process pure ordering changes with windowing operators (#15241)
     add 039b05585cb Add worker status and duration metrics in live and task reports  (#15180)
     add 275c1ec64c6 Fix error assuming a Complex Type that is a Number is a double (#15272)
     add a27598a487a Segregate advance and advanceUninterruptibly flow in postJoinCursor to allow for interrupts in advance (#15222)
     add 31730934159 Handle status failures for streaming supervisors (#15174)
     add e6b7c36e740 LoadRules with 0 replicas should be treated as handoff complete (#15274)
     add 87695410ac5 docs: blurb about msq union all (#15223)
     add a43ffbdf2bc [Docs] Improvements to JSON-based batch Ingestion page (#15286)
     add 436ded3d781 docs: durable storage azure cleanup (#15120)
     add 49e0cba7ba0 Fix dockerfile for druid image (#15264)
     add 2ea7177f151 Allow casted literal values in SQL functions accepting literals (#15282)
     add c9c3df204e7 Redirect to new jupyter notebook project (#15136)
     add 935050bf43f docs: Dynamic config cleanup (#15265)
     add 3860052de06 remove references to Jupyter notebooks within the Druid repo (#15143)
     add de557a62adc Suggest adoption of Google Style guide (#14905)
     add 37e158c2c4a Frames: consider writing singly-valued column when input column hasMultipleValues is UNKNOWN. (#15300)
     add 6b6d73b5d44 Use min of scheduler threads and server threads for subquery guardrails. (#15295)
     add b82ad59dfe5 Better logging in ServiceClientImpl (#15269)
     add 22443ab87e3 Fix an issue with passing order by and limit to realtime tasks (#15301)
     add d261587f4af explicit outputType for ExpressionPostAggregator, better documentation for the differences between arrays and mvds (#15245)
     add dc3213b05dd Fix used segment retrieval in Kill tasks (#15306)
     add d87d92bc436 Add system fields to input sources. (#15276)
     add fb260f3e412 docs: LDAP trust store property clarification (#15028)
     add 9576fd3141e HllSketch Merge Aggregator optimizations (#15162)
     add 5036af6fb34 Doc fixes for query from deep storage and MSQ (#15313)
     add 98f1eb8ede5 Use filters for pruning properly for hash-joins. (#15299)
     add f39a778f7d9 Fix 404 URL about native query (#15324)
     add 0cc8839a604 Allow casted literal values in SQL functions accepting literals (Part 2) (#15316)
     add 5d39b94149c allow compaction to work with spatial dimensions (#15321)
     add a8906b6ea0c Fix k8s task runner failure reporting (#15311)
     add 8c802e4c9b2 Relocating Table Schema Building: Shifting from Brokers to Coordinator for Improved Efficiency (#14985)
     add ff7de49015b Consolidate and reduce dependency footprint for iceberg extension (#15280)
     add 4b64a5693be Move service specific JVM parameters to the right in tests (#15325)
     add 2136dc3591a Batch segment retrieval from the metadata store (#15305)
     add 0403e482667 window functions docs (#14739)
     add e6ab8a15eb6 Fixed the table in docker.md (#15328)
     add 9333dd1f73a Correct the path of ipynb file of notebook introduction. (#15327)
     add 54fa3425c3b fix: Creating span label not closed (#15323)
     add e2fde8c516e Refactor lookups behavior while loading/dropping the containers (#14806)
     add db95c375a62 Increase historical heap for standard IT (#15337)
     add b7d7f84bcef Bump Jedis version to 5.0.2 (#15344)
     add 130bfbfc6d7 Revert "Separate task lifecycle from kubernetes/location lifecycle (#15133)" (#15346)
     add d12f557492f fix ingest datasource detection falling over on paren (#15339)
     add fa48d4ea7d0 use is not distinct from (#15349)
     add 895e53555cf Optimize mark segments as unused (#15352)
     add e7d0429f5b9 docs: suggest metadata store with instant ADD COLUMN semantics (#15334)
     add 3a3d37ef405 Fix for segment/count Metric Not Emitting with Statsd-emitter (#15347)
     add 99da4f30572 Bump commons-codec:commons-codec from 1.13 to 1.16.0 (#14819)
     add 5446494e63c Non-existent datasource shouldn't affect schema rebuilding for other datasources (#15355)
     add a134cc30a69 Change default inSubQueryThreshold (#15336)
     add 5edeac28df5 + Switching Comparison from String to JSON (#15364)
     add 2cb74433fd1 Web console: fix time shifting (#15359)
     add 06744d3827c Changing a string to key:value pair to fix flakiness in `testSerializationWithDefaults` (#15317)
     add 2e79fd56a7f MSQ generates tombstones honoring granularity specified in a `REPLACE` query. (#15243)
     add a70a3d5d489 Fix cancellation bug in MSQ. (#15368)
     add bedf246ed26 Fixing 1 flaky test in testAPIs() (#15375)
     add 4ca5acdc338 Fixed 2 Flaky Tests (#15376)
     add 03a092f4ece Document Nuances in SegmentMetadataCache Behaviour (#15367)
     add 53797b9e49e Fixed a flaky test in `S3DataSegmentPusherConfigTest#testSerialization` by changing string to key:value pair (#15207)
     add 67f45fa7bfc Fix histograms for sketches where min and max are equal (#15381)
     add 857b8de425c Query from deep storage doc fixes. (#15382)
     add cdc192d38d6 Prevent multiple attempts to publish segments for the same sequence (#14995)
     add 6a5da5a05eb fix redirect for api docs and misc array-related typos (#15387)
     add 77828bead48 Fetch active task payloads from memory (#15377)
     add 7b5790c72ca Fix flaky tests in ParserTest.java (#15318)
     add a2914789d73 Add support for ingesting older iceberg snapshots (#15348)
     add a95c22ce700 support non-constant expressions for path arguments for json_value and json_query (#15320)
     add ba1b6fa5a93 Web console: reset spec before looking for tile (#15396)
     add 470c8ed7b01 Make `numCorePartitions` as 0 for tombstones (#15379)
     add 5ccd79d62b7  Fix NPE caused by realtime segment closing race, fix possible missing-segment retry bug. (#15260)
     add dfc52994d40 docs: fix code tabs (#15403)
     add 6ed343c0471 Data management API doc refactor (#15087)
     add 3fa856b3ffb Update Kinesis resharding doc (#15401)
     add 4ba3cf52215 Add test to verify sequence name of Kafka task (#15397)
     add 1df53d6eb30 fix physical memory detection on OSX (#15405)
     add dff5bcb0a6c Fix resultcache multiple postaggregation restore (#15402)
     add 2f269fe065a   Returning correct Response Code HTTP 429 when taskQueue reached maxSize (#15409)
     add c14cfc2a86f Patched security vulnerability by updating Ranger libraries to the ne… (#15363)
     add 386cdb95e79 Fixes minor typo in kafka emitter (#15416)
     add 75d6993da93 Suppress Hadoop and jose4j cve (#15425)
     add 4ab0b715131 Fix missing task failure error message on Overlord caused by MessageBodyWriter not found error on Middle Manager (#15412)
     add 3113e7b3505 Fix grouping aggregator when one of the dimension is a simple extraction (#15421)
     add 67c7b6248cf Fix log typos, clean up some kill messages in SeekableStreamSupervisor (#15424)
     add a0188192de9 Fixing failing compaction/parallel index jobs during upgrade due to new actions being available on the overlord.  (#15430)
     add c8eb7adeb9b Improved web-console's time-chart brush and added auto-granularity (#14990)
     add 58a724c7e40 Use StubServiceEmitter in tests (#15426)
     add ca544e552cf Add option to compare results with relative error tolerance (#15429)
     add 7a8204db72c Upgrade Avro to 1.11.3 to address CVE-2023-39410 (#15419)
     add b102667695c [Docs] Add example connection parameters for Java APIs (#15345)
     add eb6b9cb4a9d Update publishing readme (#15406)
     add bd6afb70566 time shift literals also (#15433)
     add a929b9f16e4 clafiry DISTINCT is optional for COUNT() (#15394)
     add eb056e23b5e Fix dictionarySize overrides in tests (#15354)
     add 3d1d26f8240 Fix mmless ingestion and index tasks (#15372)
     add 97623b408c5 add optional 'castToType' parameter to 'auto' column schema (#15417)
     add ee6ad36fab2 update confluent's dependencies to common, supported version (#15441)
     add 0a56c87e938 SQL: Plan non-equijoin conditions as cross join followed by filter (#15302)
     add 64fcb32bcfd add native 'array contains element' filter (#15366)
     add 93cd6386458 Enabling aggregateMultipleValues in all StringAnyAggregators (#15434)
     add 0516d0dae43 simplify IncrementalIndex since group-by v1 has been removed (#15448)
     add 5ce4aab3b8b update ARRAY_OVERLAP to plan with ArrayContainsElement for ARRAY columns (#15451)
     add 74ab6024e19 Native doc update (#15456)
     add 31fa63e7894 Web console: better management proxy detection (#15453)
     add 8ddb8476588 Fix message when skipping compaction (#15460)
     add 7467d2c00d5 Upgrade Jackson and Google GSON to address CVEs (#15461)
     add f8bd3b0b7e7 Web console: fix tab duplication (#15457)
     add 9f3b26676d3 Log full stack when exception message is null (#15467)
     add 4a594bb9f6a Use task actions to fetch used segments in MSQ (#15284)
     add b8540584910 remove unnecessary elasticsearch dependencies to fix CVE regressions (#15443)
     add a1aa4340d0f Changing the queryFrameWork in Calcite*Tests may have sideeffects (#15428)
     add ddeb55fac11 update few minor dependencies to resolve CVEs (#15464)
     add ddd2299272f Add null check for VarianceAggregatorCollector
     add 3d3d23c53ff run npm audit fix to update JS packages (#15466)
     add 8cc256b0798 update guava to 32.0.1-jre to address CVEs (#15482)
     add b66d995e6fd remove licenses of removed libraries, update the license checker  (#15446)
     add a469c53c0c8 cleanup already resolved CVEs (#15447)
     add d968bb3f43f Rename config for enabling CentralizedDatasourceSchema feature (#15476)
     add 326b7b731dd Upgrade zookeeper from 3.5.10 to 3.8.3 (#15477)
     add 77b929f494f Fix CentralizedDatasourceSchema IT (#15493)
     add f4856bc1c1d ranger-security: exclude jackson-jaxrs from + fix outdated documentation (#15481)
     add 0e14a2c77f1 Update retention rules doc (#15439)
     add ff0e838d309 add gson to dependencyManagement (#15488)
     add 82e3c61514a Update lookup model in console (#15472)
     add aa696b03104 Web console: Log out any request errors in e2e tests for better CI debugging (#15483)
     add 0b41b05aa04 Web console: Update and prune dependancies (#15487)
     add ae6893edc3c unpin guava related dependabot dependencies (#15494)
     add f4949afdd73 clarify and fixup typos related to unused segments in docs and javadocs. (#15498)
     add 6f51155ccb7 Fix NullFilter getDimensionRangeSet. (#15500)
     add 6a64f72c679 Lookup on incomplete partition set in SegmentMetadataQuerySegmentWalker (#15496)
     add fea53c7084b Re-arranging sections for append and replace docs. (#15497)
     add 557f3f6f57d add array column type support to EXTEND operator (#15458)
     add 82ac48786b9 document arrayContainsElement filter (#15455)
     add b541000d43e Bump up max heap memory for unit tests from 1.5 GB to 2 GB. (#15507)
     add 801967b75fa Add test logs zipping and archival steps for failures in Static Checks Github Actions (#15506)
     add c241c6980c9 store auto columns with only empty or null containing arrays as ARRAY<LONG> instead of COMPLEX<json> (#15505)
     add db3a6332502 update timeseries to reflect NULL filling (#15512)
     add 935aa187a0b add Assert function to verify in the DataGeneratorTest (#15504)
     add 254a8eb7e0c Add null checks for HllSketchHolder (#15502)
     add 5fda8613ad6 Feature: Add IPv6 Match Function (#15212)
     add 1eafe983eca fix array presenting columns to not match single element arrays to scalars for equality (#15503)
     add c353ccfdeff Windowed min aggregates null-s as 0 (#15371)
     add 2e45eadc08a Add better error messages for using OVERWRITE with INSERT statments (#15517)
     add e64b92eb351 add JSON_QUERY_ARRAY function to pluck ARRAY<COMPLEX<json>> out of COMPLEX<json> (#15521)
     add ca4ecdf7d0e Fixing NPE with virtual expression with unnest (#15513)
     add 355c800108b Revamp design page (#15486)
     add e68979e03be Docs: update SQL API reference (#15515)
     add e7c8f2e2083 lift restriction of array_to_mv to only support direct column access (#15528)
     add 54df2350261 Lazily build Filter in FilteredAggregatorFactory to avoid parsing exceptions in Router (#15526)
     add 42f2496b7d1 fix bug with nested empty array fields (#15532)
     add 099a9825d16 [Docs] Add a release notes template (#15333)
     add 96be82a3e67 Clean up duty for non-overlapping eternity tombstones (#15281)
     add fc222377ae8 [Docs] Document decode_base64_complex and decode_base64_utf8 functions (#15444)
     add 4152f1d1471 Fix empty logs and status messages for mmless ingestion (#15527)
     add ab7d9bc6ecf Add api for Retrieving unused segments (#15415)
     add 6f780497607 remove references to non-existant website maven module (#15540)
     add e8fcf2cac83 minor doc adjustments (#15531)
     add 85af2c83403 only create used and unused segments once to make the test faster (#15533)
     add 8735d023a14 Add experimental support for first/last for double/float/long #10702 (#14462)
     add 91ca8e73d6d Skip compaction for datasources with partial-eternity segments (#15542)
     add 38f3cf9e65e Fixing a case where datatype mismatch was happenning in join (#15541)
     add debb6b401c7 update core Apache Kafka dependencies to 3.6.1 (#15539)
     add 3c7dec56ca2 update kubernetes java client to 19.0.0 and docker-java to 3.3.4 (#15449)
     add 4ec9a0a7f7d Update Druid version in Tag in pom.xml (#15545)
     add 48a96f5d06b Better automatic offset reset for Kinesis ingestion (#15338)
     add 8bc7a5f3ac0 Move codeql-config.yml out of the workflows folder (#15553)
     add 4670a7650fb Optional removal of metrics from Prometheus PushGateway on shutdown (#14935)
     add f32dbd41311 Upgrade pac4j-oidc to 4.5.7 to address CVE-2021-44878 (#15522)
     add 857693f5cf8 Decorate sampling response with system fields if specified (#15536)
     add f770eeb8be6 Web console: Update webpack-dev-server v3 to v4 (#15555)
     add e55f6b6202b remove search auto strategy, estimateSelectivity of BitmapColumnIndex (#15550)
     add 81fe855b6ff Update com.github.eirslett to fix bad zip issue (#15556)
     add 3e15522d6b3 Round works correctly on system metadata columns (#15554)
     add 0436edae0cb fix rat and checkstyle issue (#15530)
     add e43bb74c3af Add MSQ Durable Storage Connector for Google Cloud Storage and change current Google Cloud Storage client library (#15398)
     add feeb4f0fb03 Allocate pending segments at latest committed version (#15459)
     add 7fa987dae92 Update labeler to v5 that includes fix where bot doesn't remove labels added by maintainers. (#15558)
     add 9deeb288c5a Update labeler config per v5 spec. (#15564)
     add c9be1cb4e84 Clean useless InterruptedException warn in ingestion task log (#15519)
     add 7552dc49fb7 Reduce amount of expression objects created during evaluations (#15552)
     add 3b1ca21a6b6 Bump org.codehaus.mojo:javacc-maven-plugin from 2.4 to 3.0.1

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   (ab4a0708bd4)
            \
             N -- N -- N   refs/heads/dependabot/maven/org.codehaus.mojo-javacc-maven-plugin-3.0.1 (3b1ca21a6b6)

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/{workflows => config}/codeql-config.yml    |     0
 .github/dependabot.yml                             |    10 -
 .github/labeler.yml                                |    75 +-
 .github/workflows/codeql.yml                       |     9 +-
 .github/workflows/cron-job-its.yml                 |     7 +-
 .github/workflows/labeler.yml                      |     2 +-
 .github/workflows/reusable-revised-its.yml         |    41 +-
 .github/workflows/reusable-standard-its.yml        |    43 +-
 .github/workflows/reusable-unit-tests.yml          |    10 +-
 .github/workflows/standard-its.yml                 |    16 +-
 .github/workflows/static-checks.yml                |    66 +-
 .../unit-and-integration-tests-unified.yml         |    17 +-
 .gitignore                                         |     7 +
 README.md                                          |     6 +-
 benchmarks/pom.xml                                 |     4 +-
 ...tionaryEncodedStringIndexSupplierBenchmark.java |     1 -
 .../DruidSchemaInternRowSignatureBenchmark.java    |    26 +-
 .../druid/benchmark/ExpressionFilterBenchmark.java |     2 +
 .../benchmark/ExpressionSelectorBenchmark.java     |   156 +-
 .../benchmark/FlattenJSONBenchmarkUtilTest.java    |    29 +-
 .../benchmark/GroupByTypeInterfaceBenchmark.java   |    42 +-
 .../IncrementalIndexRowTypeBenchmark.java          |     1 -
 .../query/CachingClusteredClientBenchmark.java     |    53 +-
 .../druid/benchmark/query/GroupByBenchmark.java    |    42 +-
 .../apache/druid/benchmark/query/SqlBenchmark.java |    21 +-
 .../benchmark/query/SqlExpressionBenchmark.java    |    57 +-
 .../benchmark/query/SqlNestedDataBenchmark.java    |    16 +-
 .../benchmark/query/SqlVsNativeBenchmark.java      |     2 +-
 .../NewestSegmentFirstPolicyBenchmark.java         |     9 +-
 cloud/aws-common/pom.xml                           |     2 +-
 cloud/gcp-common/pom.xml                           |     2 +-
 codestyle/checkstyle-suppressions.xml              |    23 +-
 codestyle/druid-forbidden-apis.txt                 |     7 +
 codestyle/guava16-forbidden-apis.txt               |     3 -
 dev/druid_intellij_formatting.xml                  |     4 +
 dev/style-conventions.md                           |     7 +-
 distribution/asf-release-process-guide.md          |    85 +-
 distribution/bin/check-licenses.py                 |    21 +-
 distribution/docker/Dockerfile                     |    29 +-
 distribution/docker/docker-compose.yml             |    10 +-
 distribution/docker/peon.sh                        |     5 +-
 distribution/pom.xml                               |     2 +-
 doap_Druid.rdf                                     |    42 +
 docs/api-reference/automatic-compaction-api.md     |   843 +-
 docs/api-reference/data-management-api.md          |   580 +-
 docs/api-reference/dynamic-configuration-api.md    |   648 +-
 docs/api-reference/json-querying-api.md            |    77 +-
 docs/api-reference/legacy-metadata-api.md          |    63 +-
 docs/api-reference/retention-rules-api.md          |   541 +-
 docs/api-reference/service-status-api.md           |   462 +-
 docs/api-reference/sql-api.md                      |   595 +-
 docs/api-reference/sql-ingestion-api.md            |   117 +-
 docs/api-reference/sql-jdbc.md                     |    31 +-
 docs/api-reference/supervisor-api.md               |   522 +-
 docs/api-reference/tasks-api.md                    |   510 +-
 docs/assets/druid-architecture.svg                 |    19 +
 docs/configuration/extensions.md                   |    28 +-
 docs/configuration/index.md                        |  1039 +-
 docs/configuration/logging.md                      |    14 +-
 docs/data-management/automatic-compaction.md       |   120 +-
 docs/data-management/compaction.md                 |   150 +-
 docs/data-management/manual-compaction.md          |   167 +
 docs/data-management/update.md                     |     4 +-
 docs/design/architecture.md                        |   348 +-
 docs/design/broker.md                              |    32 +-
 docs/design/coordinator.md                         |   102 +-
 docs/design/extensions-contrib/dropwizard.md       |     4 +
 docs/design/historical.md                          |    47 +-
 docs/design/indexer.md                             |    56 +-
 docs/design/metadata-storage.md                    |    34 +-
 docs/design/middlemanager.md                       |    22 +-
 docs/design/overlord.md                            |    29 +-
 docs/design/peons.md                               |    18 +-
 docs/design/processes.md                           |   143 -
 docs/design/router.md                              |    85 +-
 docs/design/segments.md                            |    13 +-
 docs/design/storage.md                             |   140 +
 docs/design/zookeeper.md                           |     4 +-
 docs/development/docs-contribute.md                |    42 +-
 docs/development/experimental-features.md          |     7 +-
 docs/development/extensions-contrib/k8s-jobs.md    |    25 +-
 docs/development/extensions-contrib/prometheus.md  |    14 +-
 docs/development/extensions-contrib/statsd.md      |     6 +-
 .../extensions-core/approximate-histograms.md      |     4 +-
 .../extensions-core/datasketches-hll.md            |    34 +-
 docs/development/extensions-core/druid-lookups.md  |    10 +-
 .../extensions-core/druid-ranger-security.md       |    17 +-
 .../development/extensions-core/kafka-ingestion.md |    18 +-
 .../extensions-core/kafka-supervisor-operations.md |    75 +-
 .../extensions-core/kafka-supervisor-reference.md  |   285 +-
 .../extensions-core/kinesis-ingestion.md           |    34 +-
 .../extensions-core/lookups-cached-global.md       |    21 +-
 docs/development/extensions-core/mysql.md          |    10 +-
 docs/development/extensions-core/postgresql.md     |     2 +
 docs/development/extensions-core/stats.md          |    14 +-
 docs/development/modules.md                        |     2 +-
 docs/ingestion/data-formats.md                     |    83 +-
 docs/ingestion/index.md                            |     2 +-
 docs/ingestion/ingestion-spec.md                   |    78 +-
 docs/ingestion/input-sources.md                    |    60 +-
 docs/ingestion/native-batch-firehose.md            |     4 +-
 docs/ingestion/native-batch-simple-task.md         |     6 +-
 docs/ingestion/native-batch.md                     |   309 +-
 docs/ingestion/schema-design.md                    |    17 +-
 docs/ingestion/tasks.md                            |    12 +-
 docs/multi-stage-query/concepts.md                 |    17 +-
 docs/multi-stage-query/examples.md                 |    18 +-
 docs/multi-stage-query/index.md                    |     8 +-
 docs/multi-stage-query/known-issues.md             |    16 +-
 docs/multi-stage-query/reference.md                |    93 +-
 docs/multi-stage-query/security.md                 |    37 +-
 docs/operations/auth-ldap.md                       |    27 +-
 docs/operations/basic-cluster-tuning.md            |    12 +-
 docs/operations/clean-metadata-store.md            |    12 +-
 docs/operations/durable-storage.md                 |    19 +-
 docs/operations/getting-started.md                 |    48 -
 docs/operations/metadata-migration.md              |     6 +
 docs/operations/metrics.md                         |    87 +-
 docs/operations/mixed-workloads.md                 |     4 +-
 docs/operations/pull-deps.md                       |     8 +-
 docs/operations/rule-configuration.md              |     6 +-
 docs/operations/security-overview.md               |    29 +-
 docs/operations/segment-optimization.md            |    14 +-
 docs/operations/web-console.md                     |     4 +-
 docs/querying/aggregations.md                      |    30 +-
 docs/querying/arrays.md                            |   253 +
 docs/querying/caching.md                           |    11 +-
 docs/querying/datasource.md                        |   147 +-
 docs/querying/datasourcemetadataquery.md           |     8 +-
 docs/querying/dimensionspecs.md                    |    14 +-
 docs/querying/filters.md                           |   120 +-
 docs/querying/geo.md                               |     6 +-
 docs/querying/granularities.md                     |    14 +-
 docs/querying/groupbyquery.md                      |   140 +-
 docs/querying/having.md                            |    10 +-
 docs/querying/limitspec.md                         |     8 +-
 docs/querying/lookups.md                           |    14 +-
 docs/querying/math-expr.md                         |    52 +-
 docs/querying/multi-value-dimensions.md            |   237 +-
 docs/querying/nested-columns.md                    |    34 +-
 docs/querying/post-aggregations.md                 |   137 +-
 docs/querying/query-context.md                     |     4 +-
 docs/querying/query-execution.md                   |    10 +-
 docs/querying/query-from-deep-storage.md           |    16 +-
 docs/querying/query-processing.md                  |    48 +
 docs/querying/querying.md                          |    18 +-
 docs/querying/scan-query.md                        |    10 +-
 docs/querying/searchquery.md                       |    12 +-
 docs/querying/segmentmetadataquery.md              |    10 +-
 docs/querying/sorting-orders.md                    |    10 +-
 docs/querying/sql-aggregations.md                  |    67 +-
 docs/querying/sql-array-functions.md               |    14 +-
 docs/querying/sql-data-types.md                    |    85 +-
 docs/querying/sql-functions.md                     |    73 +-
 docs/querying/sql-json-functions.md                |     1 +
 docs/querying/sql-metadata-tables.md               |    20 +-
 docs/querying/sql-multivalue-string-functions.md   |    14 +-
 docs/querying/sql-operators.md                     |     8 +-
 docs/querying/sql-query-context.md                 |     8 +-
 docs/querying/sql-scalar.md                        |    42 +-
 docs/querying/sql-translation.md                   |    10 +-
 docs/querying/sql-window-functions.md              |   225 +
 docs/querying/sql.md                               |    31 +-
 docs/querying/timeboundaryquery.md                 |     8 +-
 docs/querying/timeseriesquery.md                   |    32 +-
 docs/querying/tips-good-queries.md                 |   203 +
 docs/querying/topnmetricspec.md                    |     8 +-
 docs/querying/topnquery.md                         |    10 +-
 docs/querying/troubleshooting.md                   |     2 +-
 docs/querying/virtual-columns.md                   |    10 +-
 docs/release-info/release-notes.md                 |   106 +
 docs/release-info/upgrade-notes.md                 |   634 +
 docs/tutorials/cluster.md                          |    22 +-
 docs/tutorials/tutorial-batch-native.md            |     5 +-
 docs/tutorials/tutorial-compaction.md              |     4 +-
 docs/tutorials/tutorial-jupyter-docker.md          |   250 -
 docs/tutorials/tutorial-jupyter-index.md           |    50 +-
 docs/tutorials/tutorial-kafka.md                   |    16 +-
 docs/tutorials/tutorial-msq-convert-spec.md        |     8 +-
 docs/tutorials/tutorial-msq-extern.md              |     8 +-
 docs/tutorials/tutorial-query-deep-storage.md      |     5 +-
 docs/tutorials/tutorial-query.md                   |    32 +-
 docs/tutorials/tutorial-sketches-theta.md          |     4 +-
 docs/tutorials/tutorial-sql-query-view.md          |     4 +-
 docs/tutorials/tutorial-unnest-arrays.md           |    67 +-
 examples/bin/run-java                              |     2 +-
 examples/bin/start-druid-main.py                   |     4 +-
 examples/quickstart/jupyter-notebooks/README.md    |    16 +-
 .../notebooks/01-introduction/00-START-HERE.ipynb  |     4 +-
 .../02-working-with-nested-columns.ipynb           |   426 +
 .../notebooks/03-query/02-approxRanking.ipynb      |   596 +
 .../notebooks/03-query/04-UnionOperations.ipynb    |   509 +
 .../99-contributing/notebook-template.ipynb        |   242 +-
 extensions-contrib/aliyun-oss-extensions/pom.xml   |     9 +-
 .../apache/druid/data/input/aliyun/OssEntity.java  |     5 +
 .../druid/data/input/aliyun/OssInputSource.java    |    52 +-
 .../data/input/aliyun/OssInputSourceTest.java      |    79 +
 extensions-contrib/ambari-metrics-emitter/pom.xml  |     9 +-
 .../src/main/resources/defaultWhiteListMap.json    |     1 +
 ...ListBasedDruidToTimelineEventConverterTest.java |    18 +-
 extensions-contrib/cassandra-storage/pom.xml       |    13 +-
 extensions-contrib/cloudfiles-extensions/pom.xml   |    15 +-
 .../cloudfiles/CloudFilesStorageDruidModule.java   |     2 +-
 extensions-contrib/compressed-bigdecimal/pom.xml   |    15 +-
 .../CompressedBigDecimalAggregatorFactoryBase.java |     3 -
 .../CompressedBigDecimalMaxAggregatorFactory.java  |    15 -
 .../CompressedBigDecimalMinAggregatorFactory.java  |    14 -
 .../CompressedBigDecimalSqlAggregatorBase.java     |    49 +-
 .../CompressedBigDecimalSumAggregatorFactory.java  |    14 -
 ...ssedBigDecimalAggregatorTimeseriesTestBase.java |     3 +-
 .../CompressedBigDecimalMaxFactoryTest.java        |     5 -
 .../CompressedBigDecimalMinFactoryTest.java        |     6 +-
 .../CompressedBigDecimalSqlAggregatorTestBase.java |     2 +-
 .../CompressedBigDecimalSumFactoryTest.java        |     6 +-
 extensions-contrib/distinctcount/pom.xml           |    13 +-
 .../DistinctCountAggregatorFactory.java            |     8 -
 .../DistinctCountGroupByQueryTest.java             |     2 -
 extensions-contrib/dropwizard-emitter/pom.xml      |    14 +-
 .../main/resources/defaultMetricDimensions.json    |     4 +
 .../druid-iceberg-extensions/pom.xml               |   416 +-
 .../apache/druid/iceberg/input/IcebergCatalog.java |    10 +-
 .../druid/iceberg/input/IcebergInputSource.java    |    18 +-
 .../iceberg/input/IcebergInputSourceTest.java      |    63 +-
 extensions-contrib/gce-extensions/pom.xml          |    14 +-
 extensions-contrib/graphite-emitter/pom.xml        |    16 +-
 .../src/main/resources/defaultWhiteListMap.json    |     1 +
 .../graphite/WhiteListBasedConverterTest.java      |    17 +-
 extensions-contrib/influx-extensions/pom.xml       |     9 +-
 extensions-contrib/influxdb-emitter/pom.xml        |    14 +-
 .../emitter/influxdb/InfluxdbEmitterTest.java      |     8 +-
 extensions-contrib/kafka-emitter/pom.xml           |    14 +-
 .../apache/druid/emitter/kafka/KafkaEmitter.java   |     8 +-
 .../druid/emitter/kafka/KafkaEmitterTest.java      |     4 +-
 .../kubernetes-overlord-extensions/pom.xml         |    14 +-
 .../overlord/KubernetesAndWorkerTaskRunner.java    |   294 +
 .../KubernetesAndWorkerTaskRunnerConfig.java       |    74 +
 .../KubernetesAndWorkerTaskRunnerFactory.java      |    81 +
 .../k8s/overlord/KubernetesOverlordModule.java     |    58 +
 .../k8s/overlord/KubernetesPeonLifecycle.java      |    58 +-
 .../druid/k8s/overlord/KubernetesTaskRunner.java   |    79 +-
 .../k8s/overlord/KubernetesTaskRunnerFactory.java  |    13 +-
 .../druid/k8s/overlord/KubernetesWorkItem.java     |     9 -
 .../k8s/overlord/common/DruidK8sConstants.java     |     1 +
 .../k8s/overlord/common/KubernetesPeonClient.java  |    29 +-
 .../runnerstrategy/KubernetesRunnerStrategy.java   |    43 +
 .../overlord/runnerstrategy/RunnerStrategy.java    |    75 +
 .../runnerstrategy/TaskTypeRunnerStrategy.java     |   128 +
 .../runnerstrategy/WorkerRunnerStrategy.java       |    43 +
 .../k8s/overlord/taskadapter/K8sTaskAdapter.java   |    69 +-
 .../taskadapter/MultiContainerTaskAdapter.java     |     6 +-
 .../taskadapter/PodTemplateTaskAdapter.java        |    87 +-
 .../taskadapter/SingleContainerTaskAdapter.java    |     6 +-
 .../k8s/overlord/taskadapter/TaskAdapter.java      |     7 +
 .../KubernetesAndWorkerTaskRunnerConfigTest.java   |    51 +
 .../KubernetesAndWorkerTaskRunnerFactoryTest.java  |    99 +
 .../KubernetesAndWorkerTaskRunnerTest.java         |   374 +
 .../k8s/overlord/KubernetesPeonLifecycleTest.java  |    90 +-
 .../k8s/overlord/KubernetesTaskRunnerTest.java     |   254 +-
 .../druid/k8s/overlord/KubernetesWorkItemTest.java |     4 +-
 .../druid/k8s/overlord/common/K8sTestUtils.java    |     8 +
 .../overlord/common/KubernetesPeonClientTest.java  |    17 +-
 .../KubernetesRunnerStrategyTest.java              |    43 +
 .../runnerstrategy/TaskTypeRunnerStrategyTest.java |    64 +
 .../runnerstrategy/WorkerRunnerStrategyTest.java   |    43 +
 .../DruidPeonClientIntegrationTest.java            |     8 +-
 .../overlord/taskadapter/K8sTaskAdapterTest.java   |   214 +-
 .../taskadapter/MultiContainerTaskAdapterTest.java |    31 +-
 .../taskadapter/PodTemplateTaskAdapterTest.java    |   222 +-
 .../SingleContainerTaskAdapterTest.java            |     9 +-
 .../src/test/resources/expectedNoopJob.yaml        |     6 +-
 .../src/test/resources/expectedNoopJobLongIds.yaml |     6 +-
 .../test/resources/expectedNoopJobNoTaskJson.yaml  |    47 +
 .../test/resources/expectedNoopJobTlsEnabled.yaml  |     6 +-
 .../kubernetesAndWorkerTaskRunnerConfig.json       |     4 +
 .../materialized-view-maintenance/pom.xml          |    13 +-
 .../MaterializedViewSupervisor.java                |    17 +-
 .../MaterializedViewSupervisorSpecTest.java        |    16 +-
 .../MaterializedViewSupervisorTest.java            |    39 +-
 .../materialized-view-selection/pom.xml            |    14 +-
 .../DataSourceOptimizerMonitor.java                |    12 +-
 .../DataSourceOptimizerMonitorTest.java            |    68 +
 .../materializedview/DatasourceOptimizerTest.java  |    21 +-
 .../MaterializedViewQueryQueryToolChestTest.java   |    10 +-
 .../MaterializedViewQueryTest.java                 |     9 +
 extensions-contrib/momentsketch/pom.xml            |     2 +-
 .../aggregator/MomentSketchAggregatorFactory.java  |    13 -
 extensions-contrib/moving-average-query/pom.xml    |     2 +-
 .../movingaverage/AveragerFactoryWrapper.java      |     9 -
 .../movingaverage/MovingAverageQueryTest.java      |    48 +-
 extensions-contrib/opentelemetry-emitter/pom.xml   |     4 +-
 .../opentelemetry/OpenTelemetryEmitterTest.java    |    68 +-
 extensions-contrib/opentsdb-emitter/pom.xml        |    14 +-
 .../druid/emitter/opentsdb/EventConverterTest.java |    18 +-
 extensions-contrib/prometheus-emitter/pom.xml      |    14 +-
 .../apache/druid/emitter/prometheus/Metrics.java   |     9 +-
 .../emitter/prometheus/PrometheusEmitter.java      |    43 +-
 .../prometheus/PrometheusEmitterConfig.java        |    66 +-
 .../src/main/resources/defaultMetrics.json         |     1 +
 .../druid/emitter/prometheus/MetricsTest.java      |    49 +-
 .../prometheus/PrometheusEmitterConfigTest.java    |    51 +
 .../emitter/prometheus/PrometheusEmitterTest.java  |   246 +-
 extensions-contrib/redis-cache/pom.xml             |    53 +-
 .../druid/client/cache/AbstractRedisCache.java     |     4 +-
 .../druid/client/cache/RedisCacheFactory.java      |     3 +-
 .../druid/client/cache/RedisClusterCache.java      |     9 +-
 .../druid/client/cache/RedisCacheConfigTest.java   |    14 +-
 .../druid/client/cache/RedisClusterCacheTest.java  |    69 +-
 .../client/cache/RedisStandaloneCacheTest.java     |    35 +-
 .../sqlserver-metadata-storage/pom.xml             |    13 +-
 .../storage/sqlserver/SQLServerConnectorTest.java  |    16 +-
 extensions-contrib/statsd-emitter/pom.xml          |    14 +-
 .../main/resources/defaultMetricDimensions.json    |     6 +-
 .../emitter/statsd/DimensionConverterTest.java     |     3 +-
 .../druid/emitter/statsd/StatsDEmitterTest.java    |    35 +-
 extensions-contrib/tdigestsketch/pom.xml           |    13 +-
 .../TDigestSketchAggregatorFactory.java            |    12 -
 .../sql/TDigestGenerateSketchSqlAggregator.java    |    49 +-
 .../sql/TDigestSketchQuantileSqlAggregator.java    |    59 +-
 .../sql/TDigestSketchSqlAggregatorTest.java        |   103 +-
 extensions-contrib/thrift-extensions/pom.xml       |     9 +-
 extensions-contrib/time-min-max/pom.xml            |    14 +-
 .../aggregation/TimestampMaxAggregatorFactory.java |    10 -
 .../aggregation/TimestampMinAggregatorFactory.java |    11 -
 extensions-contrib/virtual-columns/pom.xml         |    13 +-
 .../MapTypeMapVirtualColumnDimensionSelector.java  |     8 +-
 ...tringTypeMapVirtualColumnDimensionSelector.java |    15 +-
 .../druid/segment/MapVirtualColumnGroupByTest.java |   214 +-
 extensions-core/avro-extensions/pom.xml            |     3 +-
 .../input/avro/InlineSchemaAvroBytesDecoder.java   |    12 +-
 .../input/avro/InlineSchemasAvroBytesDecoder.java  |    18 +-
 .../avro/SchemaRepoBasedAvroBytesDecoder.java      |    15 +-
 .../data/input/AvroStreamInputFormatTest.java      |    12 +-
 .../data/input/AvroStreamInputRowParserTest.java   |    41 +
 .../avro/InlineSchemaAvroBytesDecoderTest.java     |    49 +
 .../avro/InlineSchemasAvroBytesDecoderTest.java    |    74 +
 extensions-core/azure-extensions/pom.xml           |     7 +-
 .../apache/druid/data/input/azure/AzureEntity.java |     5 +
 .../druid/data/input/azure/AzureInputSource.java   |    47 +-
 .../input/azure/AzureInputSourceSerdeTest.java     |    26 +
 .../data/input/azure/AzureInputSourceTest.java     |    76 +-
 extensions-core/datasketches/pom.xml               |     2 +-
 .../hll/HllSketchAggregatorFactory.java            |    41 +-
 .../hll/HllSketchHolderObjectStrategy.java         |    68 +-
 .../hll/HllSketchMergeBufferAggregator.java        |    15 +-
 .../hll/HllSketchMergeBufferAggregatorHelper.java  |    94 +-
 .../hll/HllSketchMergeVectorAggregator.java        |    18 +-
 .../hll/HllSketchToEstimatePostAggregator.java     |     6 +-
 ...llSketchToEstimateWithBoundsPostAggregator.java |     6 +-
 .../hll/HllSketchToStringPostAggregator.java       |     6 +-
 .../hll/HllSketchUnionPostAggregator.java          |     7 +-
 .../datasketches/hll/sql/HllPostAggExprMacros.java |     2 +-
 .../hll/sql/HllSketchBaseSqlAggregator.java        |    38 +-
 .../kll/KllDoublesSketchAggregatorFactory.java     |    19 +-
 .../KllDoublesSketchToHistogramPostAggregator.java |    21 +-
 .../kll/KllFloatsSketchAggregatorFactory.java      |    19 +-
 .../KllFloatsSketchToHistogramPostAggregator.java  |    21 +-
 .../quantiles/DoublesSketchAggregatorFactory.java  |    20 +-
 .../DoublesSketchToHistogramPostAggregator.java    |    21 +-
 .../DoublesSketchApproxQuantileSqlAggregator.java  |    32 +-
 ...DoublesSketchListArgBaseOperatorConversion.java |     7 +-
 .../sql/DoublesSketchObjectSqlAggregator.java      |    25 +-
 .../theta/SketchMergeAggregatorFactory.java        |    17 -
 .../theta/sql/ThetaSketchBaseSqlAggregator.java    |    31 +-
 .../ArrayOfDoublesSketchAggregatorFactory.java     |    14 -
 .../sql/ArrayOfDoublesSketchSqlAggregator.java     |    31 +-
 .../hll/HllSketchAggregatorFactoryTest.java        |    67 +-
 .../datasketches/hll/HllSketchAggregatorTest.java  |    22 +-
 .../hll/sql/HllSketchSqlAggregatorTest.java        |    82 +-
 .../kll/KllDoublesSketchAggregatorTest.java        |   130 +-
 .../KllDoublesSketchComplexMetricSerdeTest.java    |     6 +-
 ...DoublesSketchToHistogramPostAggregatorTest.java |   152 +
 .../kll/KllFloatsSketchAggregatorTest.java         |   130 +-
 .../kll/KllFloatsSketchComplexMetricSerdeTest.java |     4 +-
 ...lFloatsSketchToHistogramPostAggregatorTest.java |   152 +
 .../DoublesSketchAggregatorFactoryTest.java        |    10 +-
 .../quantiles/DoublesSketchAggregatorTest.java     |   130 +-
 ...DoublesSketchToHistogramPostAggregatorTest.java |   152 +
 .../sql/DoublesSketchSqlAggregatorTest.java        |    56 +-
 .../theta/sql/ThetaSketchSqlAggregatorTest.java    |     8 +-
 .../sql/ArrayOfDoublesSketchSqlAggregatorTest.java |    58 +-
 extensions-core/druid-aws-rds-extensions/pom.xml   |     2 +-
 extensions-core/druid-basic-security/pom.xml       |     2 +-
 .../authentication/BasicHTTPAuthenticator.java     |    20 +-
 .../authentication/BasicHTTPAuthenticatorTest.java |   109 +-
 extensions-core/druid-bloom-filter/pom.xml         |     2 +-
 .../bloom/BloomFilterAggregatorFactory.java        |     6 -
 .../bloom/BloomFilterMergeAggregatorFactory.java   |     8 -
 .../query/aggregation/bloom/BloomFilterSerde.java  |     4 +-
 .../bloom/sql/BloomFilterSqlAggregator.java        |    44 +-
 .../apache/druid/query/filter/BloomDimFilter.java  |     8 +
 .../bloom/BloomFilterGroupByQueryTest.java         |    11 -
 .../bloom/sql/BloomFilterSqlAggregatorTest.java    |    10 +-
 .../druid/query/filter/BloomDimFilterTest.java     |    32 +-
 extensions-core/druid-catalog/pom.xml              |     2 +-
 extensions-core/druid-kerberos/pom.xml             |     2 +-
 extensions-core/druid-pac4j/pom.xml                |    11 +-
 .../apache/druid/security/pac4j/JwtAuthFilter.java |     2 +-
 .../apache/druid/security/pac4j/Pac4jFilter.java   |    17 +-
 .../druid/security/pac4j/Pac4jSessionStore.java    |    21 +-
 .../druid/security/pac4j/JwtAuthenticatorTest.java |    96 +
 .../security/pac4j/Pac4jSessionStoreTest.java      |    78 +-
 extensions-core/druid-ranger-security/pom.xml      |    51 +-
 .../ranger/authorizer/RangerAuthorizer.java        |     2 +-
 .../ranger/authorizer/RangerAdminClientImpl.java   |     8 +-
 extensions-core/ec2-extensions/pom.xml             |     2 +-
 extensions-core/google-extensions/pom.xml          |    29 +-
 .../input/google/GoogleCloudStorageEntity.java     |     5 +
 .../google/GoogleCloudStorageInputSource.java      |    50 +-
 .../druid/storage/google/GoogleByteSource.java     |     4 +-
 .../storage/google/GoogleDataSegmentPuller.java    |     2 +-
 .../apache/druid/storage/google/GoogleStorage.java |   208 +-
 .../storage/google/GoogleStorageDruidModule.java   |    18 +-
 .../google/GoogleStorageObjectMetadata.java        |    96 +
 .../storage/google/GoogleStorageObjectPage.java    |    51 +
 .../druid/storage/google/GoogleTaskLogs.java       |     2 +-
 .../google/GoogleTimestampVersionedDataFinder.java |    24 +-
 .../apache/druid/storage/google/GoogleUtils.java   |    21 +-
 .../storage/google/ObjectStorageIterator.java      |    66 +-
 .../storage/google/output/GoogleInputRange.java    |    91 +
 .../storage/google/output/GoogleOutputConfig.java  |   147 +
 .../google/output/GoogleStorageConnector.java      |   216 +
 .../output/GoogleStorageConnectorModule.java       |    44 +
 .../output/GoogleStorageConnectorProvider.java     |    64 +
 .../org.apache.druid.initialization.DruidModule    |     3 +-
 .../google/GoogleCloudStorageInputSourceTest.java  |   189 +-
 .../druid/storage/google/GoogleByteSourceTest.java |     4 +-
 .../google/GoogleDataSegmentKillerTest.java        |    50 +-
 .../google/GoogleDataSegmentPullerTest.java        |     4 +-
 .../google/GoogleStorageDruidModuleTest.java       |    43 +-
 .../druid/storage/google/GoogleStorageTest.java    |   262 +-
 .../druid/storage/google/GoogleTaskLogsTest.java   |   106 +-
 .../druid/storage/google/GoogleTestUtils.java      |    71 +-
 .../GoogleTimestampVersionedDataFinderTest.java    |    34 +-
 .../storage/google/ObjectStorageIteratorTest.java  |   105 +-
 .../google/output/GoogleInputRangeTest.java        |    34 +
 .../google/output/GoogleOutputConfigTest.java      |    49 +
 .../output/GoogleStorageConnectorProviderTest.java |   152 +
 .../google/output/GoogleStorageConnectorTest.java  |   210 +
 extensions-core/hdfs-storage/pom.xml               |   244 +-
 .../druid/inputsource/hdfs/HdfsInputEntity.java    |    20 +-
 .../druid/inputsource/hdfs/HdfsInputSource.java    |    82 +-
 .../inputsource/hdfs/HdfsInputSourceFactory.java   |     3 +-
 .../druid/storage/hdfs/HdfsDataSegmentPusher.java  |    23 +-
 .../inputsource/hdfs/HdfsInputSourceTest.java      |    74 +-
 .../storage/hdfs/HdfsDataSegmentPusherTest.java    |    40 +
 extensions-core/histogram/pom.xml                  |     2 +-
 .../ApproximateHistogramAggregatorFactory.java     |    16 -
 .../FixedBucketsHistogramAggregatorFactory.java    |    16 -
 ...FixedBucketsHistogramQuantileSqlAggregator.java |   127 +-
 .../histogram/sql/QuantileSqlAggregator.java       |    65 +-
 .../ApproximateHistogramAggregatorTest.java        |    11 +-
 .../ApproximateHistogramGroupByQueryTest.java      |    45 -
 .../FixedBucketsHistogramGroupByQueryTest.java     |    45 -
 ...dBucketsHistogramQuantileSqlAggregatorTest.java |    84 +-
 .../histogram/sql/QuantileSqlAggregatorTest.java   |    29 +-
 extensions-core/kafka-extraction-namespace/pom.xml |     2 +-
 .../query/lookup/KafkaLookupExtractorFactory.java  |    12 +
 .../lookup/KafkaLookupExtractorFactoryTest.java    |     2 +
 extensions-core/kafka-indexing-service/pom.xml     |     2 +-
 .../data/input/kafkainput/KafkaInputFormat.java    |    21 +-
 .../data/input/kafkainput/KafkaInputReader.java    |     8 +-
 .../druid/indexing/kafka/KafkaConsumerMonitor.java |     2 +-
 .../druid/indexing/kafka/KafkaRecordSupplier.java  |     2 +-
 .../indexing/kafka/supervisor/KafkaSupervisor.java |     8 +-
 .../kafka/supervisor/KafkaSupervisorIOConfig.java  |    45 +-
 .../kafka/supervisor/KafkaSupervisorSpec.java      |     4 +-
 .../input/kafkainput/KafkaInputFormatTest.java     |    50 +-
 .../kafka/KafkaDataSourceMetadataTest.java         |    56 +
 .../druid/indexing/kafka/KafkaIndexTaskTest.java   |     7 +-
 .../indexing/kafka/KafkaRecordSupplierTest.java    |   125 +-
 .../druid/indexing/kafka/KafkaSamplerSpecTest.java |    65 +-
 .../supervisor/KafkaSupervisorIOConfigTest.java    |    35 +-
 .../kafka/supervisor/KafkaSupervisorSpecTest.java  |    86 +-
 .../kafka/supervisor/KafkaSupervisorTest.java      |   122 +-
 extensions-core/kinesis-indexing-service/pom.xml   |     2 +-
 .../indexing/kinesis/KinesisIndexTaskRunner.java   |    49 +-
 .../kinesis/supervisor/KinesisSupervisorSpec.java  |     2 +-
 .../kinesis/KinesisDataSourceMetadataTest.java     |    55 +
 .../indexing/kinesis/KinesisIndexTaskTest.java     |     5 +-
 .../kinesis/supervisor/KinesisSupervisorTest.java  |    86 +-
 extensions-core/kubernetes-extensions/pom.xml      |    41 +-
 .../druid/k8s/discovery/DefaultK8sApiClient.java   |     6 +-
 extensions-core/lookups-cached-global/pom.xml      |     8 +-
 .../lookup/NamespaceLookupExtractorFactory.java    |    17 +
 .../lookup/namespace/ExtractionNamespace.java      |    13 +
 .../lookup/namespace/JdbcExtractionNamespace.java  |    27 +
 .../lookup/namespace/cache/CacheScheduler.java     |    12 +-
 .../OffHeapNamespaceExtractionCacheManager.java    |     4 +-
 .../OnHeapNamespaceExtractionCacheManager.java     |     4 +-
 .../NamespaceLookupExtractorFactoryTest.java       |    36 +-
 .../JdbcExtractionNamespaceUrlCheckTest.java       |    20 +
 .../lookup/namespace/JdbcCacheGeneratorTest.java   |     2 +
 .../lookup/namespace/cache/CacheSchedulerTest.java |    20 +
 .../cache/JdbcExtractionNamespaceTest.java         |    49 +
 extensions-core/lookups-cached-single/pom.xml      |     2 +-
 .../druid/server/lookup/LoadingLookupFactory.java  |    11 +
 .../druid/server/lookup/PollingLookupFactory.java  |    11 +
 .../server/lookup/LoadingLookupFactoryTest.java    |     2 +
 .../server/lookup/PollingLookupFactoryTest.java    |     2 +
 extensions-core/multi-stage-query/pom.xml          |     8 +-
 .../apache/druid/msq/exec/ControllerContext.java   |     3 +
 .../org/apache/druid/msq/exec/ControllerImpl.java  |   433 +-
 .../msq/exec/ExceptionWrappingWorkerClient.java    |     4 +-
 .../java/org/apache/druid/msq/exec/Limits.java     |     5 +
 .../druid/msq/exec/LoadedSegmentDataProvider.java  |   268 +
 .../msq/exec/LoadedSegmentDataProviderFactory.java |    94 +
 .../druid/msq/exec/SegmentLoadStatusFetcher.java   |   492 +
 .../org/apache/druid/msq/exec/SegmentSource.java   |    64 +
 .../druid/msq/exec/TaskDataSegmentProvider.java    |    15 +-
 .../org/apache/druid/msq/exec/WorkerContext.java   |     1 +
 .../java/org/apache/druid/msq/exec/WorkerImpl.java |    73 +-
 .../druid/msq/exec/WorkerMemoryParameters.java     |    11 +-
 .../apache/druid/msq/exec/WorkerSketchFetcher.java |    10 +-
 .../msq/indexing/IndexerControllerContext.java     |     7 +
 .../druid/msq/indexing/IndexerFrameContext.java    |    17 +-
 .../druid/msq/indexing/IndexerWorkerContext.java   |    27 +-
 .../druid/msq/indexing/MSQControllerTask.java      |    29 +-
 .../druid/msq/indexing/MSQWorkerTaskLauncher.java  |   101 +-
 .../msq/indexing/client/IndexerWorkerClient.java   |     6 +-
 .../msq/indexing/error/InvalidNullByteFault.java   |     3 +-
 .../druid/msq/indexing/error/MSQErrorReport.java   |    37 +-
 .../SegmentGeneratorFrameProcessorFactory.java     |    42 +-
 .../druid/msq/indexing/report/MSQStatusReport.java |    29 +-
 .../druid/msq/input/ParseExceptionUtils.java       |     5 +-
 .../input/external/ExternalInputSliceReader.java   |     9 +-
 .../druid/msq/input/external/ExternalSegment.java  |    10 +
 .../msq/input/inline/InlineInputSliceReader.java   |     6 +-
 .../msq/input/lookup/LookupInputSliceReader.java   |     4 +-
 .../msq/input/table/DataSegmentWithLocation.java   |    98 +
 .../msq/input/table/RichSegmentDescriptor.java     |    55 +-
 .../msq/input/table/SegmentWithDescriptor.java     |    46 +-
 .../msq/input/table/SegmentsInputSliceReader.java  |    13 +-
 .../druid/msq/input/table/TableInputSpec.java      |    42 +-
 .../msq/input/table/TableInputSpecSlicer.java      |     8 +-
 .../org/apache/druid/msq/kernel/FrameContext.java  |     6 +-
 .../druid/msq/kernel/FrameProcessorFactory.java    |    27 +-
 .../druid/msq/kernel/ProcessorsAndChannels.java    |    18 +-
 .../apache/druid/msq/kernel/StageDefinition.java   |     4 +-
 .../kernel/controller/ControllerQueryKernel.java   |    18 +-
 .../msq/querykit/BaseFrameProcessorFactory.java    |    22 +-
 .../druid/msq/querykit/BaseLeafFrameProcessor.java |   142 +-
 .../querykit/BaseLeafFrameProcessorFactory.java    |   229 +-
 .../querykit/BaseLeafFrameProcessorManager.java    |   206 +
 .../druid/msq/querykit/BroadcastJoinHelper.java    |   182 -
 .../BroadcastJoinSegmentMapFnProcessor.java        |   265 +
 .../msq/querykit/ChainedProcessorManager.java      |   114 +
 .../druid/msq/querykit/DataSegmentProvider.java    |     5 +-
 .../apache/druid/msq/querykit/DataSourcePlan.java  |   264 +-
 .../druid/msq/querykit/InputNumberDataSource.java  |    15 +-
 .../druid/msq/querykit/ShuffleSpecFactories.java   |    14 +
 .../msq/querykit/SimpleSegmentMapFnProcessor.java  |    75 +
 .../querykit/common/OffsetLimitFrameProcessor.java |     9 +-
 .../common/OffsetLimitFrameProcessorFactory.java   |    15 +-
 .../common/SortMergeJoinFrameProcessor.java        |    15 +-
 .../common/SortMergeJoinFrameProcessorFactory.java |    10 +-
 .../groupby/GroupByPostShuffleFrameProcessor.java  |    15 +-
 .../GroupByPostShuffleFrameProcessorFactory.java   |    13 +-
 .../groupby/GroupByPreShuffleFrameProcessor.java   |    82 +-
 .../GroupByPreShuffleFrameProcessorFactory.java    |    16 +-
 .../msq/querykit/groupby/GroupByQueryKit.java      |    10 +
 .../results/QueryResultFrameProcessorFactory.java  |    10 +-
 .../results/QueryResultsFrameProcessor.java        |     9 +-
 .../scan/ExternalColumnSelectorFactory.java        |    26 +-
 .../msq/querykit/scan/ScanQueryFrameProcessor.java |   125 +-
 .../scan/ScanQueryFrameProcessorFactory.java       |    21 +-
 .../druid/msq/querykit/scan/ScanQueryKit.java      |     1 +
 .../shuffle/input/WorkerInputChannelFactory.java   |     4 +-
 .../apache/druid/msq/sql/MSQTaskQueryMaker.java    |     5 +-
 .../org/apache/druid/msq/sql/MSQTaskSqlEngine.java |     5 +-
 .../druid/msq/sql/entity/PageInformation.java      |    63 +-
 .../msq/sql/resources/SqlStatementResource.java    |   143 +-
 .../druid/msq/sql/resources/SqlTaskResource.java   |    15 +-
 .../ClusterByStatisticsCollectorImpl.java          |     1 +
 .../statistics/QuantilesSketchKeyCollector.java    |     3 +-
 .../QuantilesSketchKeyCollectorFactory.java        |    60 +-
 .../msq/statistics/TooManyBucketsException.java    |    38 -
 .../org/apache/druid/msq/util/ArrayIngestMode.java |    45 +
 .../druid/msq/util/DimensionSchemaUtils.java       |    94 +-
 .../org/apache/druid/msq/util/MSQFutureUtils.java  |     4 +-
 .../druid/msq/util/MultiStageQueryContext.java     |   119 +-
 .../msq/util/PassthroughAggregatorFactory.java     |     6 -
 .../druid/msq/util/SqlStatementResourceHelper.java |    77 +-
 .../msq/exec/LoadedSegmentDataProviderTest.java    |   247 +
 .../org/apache/druid/msq/exec/MSQArraysTest.java   |   971 +
 .../apache/druid/msq/exec/MSQDataSketchesTest.java |   144 +
 .../org/apache/druid/msq/exec/MSQFaultsTest.java   |   226 +-
 .../org/apache/druid/msq/exec/MSQInsertTest.java   |   260 +-
 .../druid/msq/exec/MSQLoadedSegmentTests.java      |   374 +
 .../druid/msq/exec/MSQParseExceptionsTest.java     |    43 +-
 .../org/apache/druid/msq/exec/MSQReplaceTest.java  |   257 +-
 .../org/apache/druid/msq/exec/MSQSelectTest.java   |   502 +-
 .../msq/exec/SegmentLoadStatusFetcherTest.java     |   188 +
 .../msq/exec/TaskDataSegmentProviderTest.java      |     4 +-
 .../msq/indexing/IndexerWorkerContextTest.java     |     1 +
 .../msq/indexing/error/MSQErrorReportTest.java     |     2 +-
 .../druid/msq/indexing/error/MSQWarningsTest.java  |     4 +-
 .../msq/indexing/report/MSQTaskReportTest.java     |    45 +-
 .../msq/input/external/ExternalInputSliceTest.java |     4 +-
 .../msq/input/external/ExternalInputSpecTest.java  |     4 +-
 .../msq/input/table/RichSegmentDescriptorTest.java |    22 +-
 .../msq/input/table/SegmentWithDescriptorTest.java |     7 +-
 .../msq/input/table/SegmentsInputSliceTest.java    |    16 +-
 .../msq/input/table/TableInputSpecSlicerTest.java  |   122 +-
 .../druid/msq/input/table/TableInputSpecTest.java  |    25 +-
 .../msq/querykit/BroadcastJoinHelperTest.java      |   277 -
 .../BroadcastJoinSegmentMapFnProcessorTest.java    |   273 +
 .../common/SortMergeJoinFrameProcessorTest.java    |     5 +-
 .../results/QueryResultsFrameProcessorTest.java    |     5 +-
 .../querykit/scan/ScanQueryFrameProcessorTest.java |    16 +-
 .../msq/sql/entity/ResultSetInformationTest.java   |     2 +-
 .../msq/sql/entity/SqlStatementResultTest.java     |     2 +-
 .../resources/SqlMSQStatementResourcePostTest.java |   150 +-
 .../sql/resources/SqlStatementResourceTest.java    |   196 +-
 .../druid/msq/statistics/ByteRowKeySerdeTest.java  |    83 +
 .../ClusterByStatisticsCollectorImplTest.java      |     1 +
 .../druid/msq/test/CalciteArraysQueryMSQTest.java  |   100 +
 .../druid/msq/test/CalciteMSQTestsHelper.java      |    85 +-
 .../msq/test/CalciteSelectJoinQueryMSQTest.java    |     6 +-
 .../druid/msq/test/CalciteSelectQueryMSQTest.java  |    26 +-
 .../druid/msq/test/CalciteUnionQueryMSQTest.java   |   184 +
 .../org/apache/druid/msq/test/MSQTestBase.java     |   170 +-
 .../druid/msq/test/MSQTestControllerContext.java   |    39 +-
 .../msq/test/MSQTestOverlordServiceClient.java     |    18 +-
 .../druid/msq/test/MSQTestTaskActionClient.java    |    27 +-
 .../druid/msq/test/MSQTestWorkerContext.java       |    12 +-
 .../druid/msq/util/DimensionSchemaUtilsTest.java   |   236 +
 .../druid/msq/util/MultiStageQueryContextTest.java |   159 +-
 .../msq/util/SqlStatementResourceHelperTest.java   |   327 +
 extensions-core/mysql-metadata-storage/pom.xml     |     2 +-
 .../metadata/storage/mysql/MySQLConnectorTest.java |     2 +-
 extensions-core/orc-extensions/pom.xml             |     2 +-
 .../apache/druid/data/input/orc/OrcReaderTest.java |    22 +-
 extensions-core/parquet-extensions/pom.xml         |     9 +-
 .../druid/data/input/parquet/ParquetToJson.java    |    62 +-
 .../parquet/simple/ParquetGroupConverter.java      |   144 +-
 .../parquet/simple/ParquetGroupFlattenerMaker.java |     2 +-
 .../parquet/NestedColumnParquetReaderTest.java     |    14 +-
 .../data/input/parquet/ParquetToJsonTest.java      |    58 +
 .../postgresql-metadata-storage/pom.xml            |     2 +-
 .../postgresql/PostgreSQLConnectorTest.java        |    20 +-
 extensions-core/protobuf-extensions/pom.xml        |    18 +-
 .../input/protobuf/ProtobufInputFormatTest.java    |    28 +-
 extensions-core/s3-extensions/pom.xml              |     2 +-
 .../org/apache/druid/data/input/s3/S3Entity.java   |    15 +-
 .../apache/druid/data/input/s3/S3InputSource.java  |    39 +-
 .../druid/data/input/s3/S3InputSourceFactory.java  |     2 +
 .../org/apache/druid/storage/s3/S3TaskLogs.java    |    15 +
 .../java/org/apache/druid/storage/s3/S3Utils.java  |     4 +
 .../catalog/model/table/S3InputSourceDefnTest.java |     1 +
 .../druid/data/input/s3/S3InputSourceTest.java     |    92 +-
 .../druid/storage/s3/S3DataSegmentPullerTest.java  |    61 +-
 .../storage/s3/S3DataSegmentPusherConfigTest.java  |    10 +-
 .../apache/druid/storage/s3/S3TaskLogsTest.java    |    76 +
 .../org/apache/druid/storage/s3/S3UtilsTest.java   |   111 +
 extensions-core/simple-client-sslcontext/pom.xml   |     2 +-
 extensions-core/stats/pom.xml                      |     2 +-
 .../variance/VarianceAggregatorCollector.java      |     5 +-
 .../variance/VarianceAggregatorFactory.java        |     6 -
 .../variance/sql/BaseVarianceSqlAggregator.java    |    41 +-
 .../variance/VarianceAggregatorCollectorTest.java  |     8 +
 .../variance/sql/VarianceSqlAggregatorTest.java    |    49 +-
 extensions-core/testing-tools/pom.xml              |     2 +-
 indexing-hadoop/pom.xml                            |    15 +-
 .../org/apache/druid/indexer/InputRowSerde.java    |     2 +-
 .../updater/MetadataStorageUpdaterJobSpec.java     |     1 +
 .../indexer/DeterminePartitionsJobSamplerTest.java |     4 +-
 indexing-service/pom.xml                           |     3 +-
 .../druid/guice/IndexingServiceTaskLogsModule.java |     2 +
 .../common/IngestionStatsAndErrorsTaskReport.java  |     6 +-
 .../druid/indexing/common/KillTaskReport.java      |   133 +
 .../apache/druid/indexing/common/TaskReport.java   |     3 +-
 .../common/actions/LocalTaskActionClient.java      |     2 +-
 .../actions/RetrieveSegmentsToReplaceAction.java   |   202 +
 .../common/actions/SegmentAllocationQueue.java     |     4 +-
 .../common/actions/SegmentInsertAction.java        |     5 +-
 .../actions/SegmentMetadataUpdateAction.java       |     4 +-
 .../indexing/common/actions/SegmentNukeAction.java |     4 +-
 .../actions/SegmentTransactionalAppendAction.java  |   186 +
 .../actions/SegmentTransactionalInsertAction.java  |    75 +-
 .../actions/SegmentTransactionalReplaceAction.java |   181 +
 .../druid/indexing/common/actions/TaskAction.java  |     3 +
 .../druid/indexing/common/actions/TaskLocks.java   |    91 +-
 .../common/actions/UpdateStatusAction.java         |    30 +-
 .../druid/indexing/common/config/TaskConfig.java   |    27 +-
 .../common/stats/TaskRealtimeMetricsMonitor.java   |    38 +-
 .../common/task/AbstractBatchIndexTask.java        |    99 +-
 .../druid/indexing/common/task/AbstractTask.java   |    53 +-
 .../task/AppenderatorDriverRealtimeIndexTask.java  |    18 +-
 .../druid/indexing/common/task/CompactionTask.java |     2 +-
 .../druid/indexing/common/task/IndexTask.java      |    38 +-
 .../druid/indexing/common/task/IndexTaskUtils.java |    60 +-
 .../common/task/KillUnusedSegmentsTask.java        |   145 +-
 .../druid/indexing/common/task/NoopTask.java       |   102 +-
 .../apache/druid/indexing/common/task/Task.java    |    26 +
 .../druid/indexing/common/task/TaskLockHelper.java |    21 +-
 .../apache/druid/indexing/common/task/Tasks.java   |     7 +-
 .../common/task/batch/TooManyBucketsException.java |    38 +
 .../task/batch/parallel/AbstractBatchSubtask.java  |    16 +-
 .../batch/parallel/ParallelIndexPhaseRunner.java   |     4 +-
 .../parallel/ParallelIndexSupervisorTask.java      |    25 +-
 .../parallel/PartialDimensionCardinalityTask.java  |    15 +-
 .../parallel/PartialDimensionDistributionTask.java |    15 +-
 .../parallel/PartialHashSegmentGenerateTask.java   |    12 +-
 .../parallel/PartialRangeSegmentGenerateTask.java  |    12 +-
 .../batch/parallel/PartialSegmentGenerateTask.java |     3 +-
 .../batch/parallel/PartialSegmentMergeTask.java    |    17 +-
 .../batch/parallel/PerfectRollupWorkerTask.java    |     5 +-
 .../SinglePhaseParallelIndexTaskRunner.java        |     8 +-
 .../task/batch/parallel/SinglePhaseSubTask.java    |    18 +-
 .../task/batch/parallel/TombstoneHelper.java       |   109 +-
 .../distribution/ArrayOfStringTuplesSerDe.java     |    81 +-
 .../distribution/ArrayOfStringsNullSafeSerde.java  |    12 +-
 .../batch/parallel/distribution/StringSketch.java  |     3 +-
 .../druid/indexing/input/DruidInputSource.java     |    21 +-
 .../druid/indexing/input/GeneratorInputSource.java |     6 +-
 .../overlord/LockRequestForNewSegment.java         |    20 +-
 .../overlord/QuotableWhiteSpaceSplitter.java       |     2 +-
 .../druid/indexing/overlord/RemoteTaskRunner.java  |    20 +-
 .../overlord/SingleTaskBackgroundRunner.java       |     5 +-
 .../druid/indexing/overlord/TaskLockbox.java       |   177 +-
 .../apache/druid/indexing/overlord/TaskQueue.java  |    27 +-
 .../apache/druid/indexing/overlord/TaskRunner.java |    24 +-
 .../indexing/overlord/TaskStorageQueryAdapter.java |    20 +-
 .../indexing/overlord/TimeChunkLockRequest.java    |     4 +-
 .../overlord/hrtr/HttpRemoteTaskRunner.java        |    17 +-
 .../indexing/overlord/http/OverlordResource.java   |    69 +-
 .../overlord/http/TotalWorkerCapacityResponse.java |    15 +-
 .../overlord/supervisor/SupervisorManager.java     |    92 +-
 .../overlord/supervisor/SupervisorResource.java    |    25 +-
 .../seekablestream/PendingSegmentVersions.java     |    56 +
 .../seekablestream/RecordSupplierInputSource.java  |     2 +
 .../seekablestream/SeekableStreamIndexTask.java    |     3 +-
 .../SeekableStreamIndexTaskClient.java             |    16 +
 .../SeekableStreamIndexTaskClientAsyncImpl.java    |    25 +-
 .../SeekableStreamIndexTaskRunner.java             |    85 +-
 .../indexing/seekablestream/SequenceMetadata.java  |    50 +-
 .../supervisor/SeekableStreamSupervisor.java       |   343 +-
 .../supervisor/SeekableStreamSupervisorSpec.java   |     2 +-
 .../druid/indexing/worker/WorkerTaskManager.java   |     4 +-
 .../worker/executor/ExecutorLifecycle.java         |     4 +-
 .../worker/http/TaskManagementResource.java        |    12 +-
 .../indexing/worker/shuffle/ShuffleMonitor.java    |     4 +-
 .../druid/indexing/common/TaskToolboxTest.java     |     1 +
 .../apache/druid/indexing/common/TestTasks.java    |     8 +-
 .../common/actions/RemoteTaskActionClientTest.java |     4 +-
 .../actions/RetrieveSegmentsActionsTest.java       |    24 +-
 .../common/actions/SegmentAllocateActionTest.java  |    83 +-
 .../common/actions/SegmentAllocationQueueTest.java |     2 +-
 .../common/actions/SegmentInsertActionTest.java    |     4 +-
 .../SegmentTransactionalInsertActionTest.java      |    60 -
 .../indexing/common/actions/TaskLocksTest.java     |   130 +-
 .../common/actions/UpdateStatusActionTest.java     |    26 +-
 .../indexing/common/config/TaskConfigBuilder.java  |    16 +-
 .../indexing/common/task/AbstractTaskTest.java     |    85 +-
 .../AppenderatorDriverRealtimeIndexTaskTest.java   |    15 +-
 .../common/task/CompactionTaskRunTest.java         |   337 +-
 .../druid/indexing/common/task/IndexTaskTest.java  |    67 +
 .../indexing/common/task/IngestionTestBase.java    |    30 +-
 .../common/task/KillUnusedSegmentsTaskTest.java    |    62 +-
 .../druid/indexing/common/task/NoopTaskTest.java   |     2 +-
 .../AbstractParallelIndexSupervisorTaskTest.java   |     5 +-
 ...ltiPhaseParallelIndexingWithNullColumnTest.java |     7 +-
 .../parallel/ParallelIndexPhaseRunnerTest.java     |     2 -
 .../ParallelIndexSupervisorTaskResourceTest.java   |     6 +-
 .../parallel/PerfectRollupWorkerTaskTest.java      |     8 +-
 .../task/batch/parallel/TaskMonitorTest.java       |     2 +-
 .../task/batch/parallel/TombstoneHelperTest.java   |   412 +-
 .../distribution/ArrayOfStringTuplesSerDeTest.java |    89 +
 .../ArrayOfStringsNullSafeSerdeTest.java           |     3 +-
 .../common/task/concurrent/ActionsTestTask.java    |   132 +
 .../common/task/concurrent/CommandQueueTask.java   |   217 +
 .../concurrent/ConcurrentReplaceAndAppendTest.java |  1007 +
 .../indexing/input/DruidSegmentReaderTest.java     |   116 +-
 .../indexing/input/GeneratorInputSourceTest.java   |    19 +-
 .../overlord/HeapMemoryTaskStorageTest.java        |     8 +-
 .../IndexerMetadataStorageAdapterTest.java         |     8 +-
 .../indexing/overlord/RemoteTaskRunnerTest.java    |     5 +
 .../overlord/SingleTaskBackgroundRunnerTest.java   |    32 +-
 .../druid/indexing/overlord/TaskLifecycleTest.java |   143 +-
 .../overlord/TaskLockBoxConcurrencyTest.java       |    13 +-
 .../druid/indexing/overlord/TaskLockboxTest.java   |   286 +-
 .../indexing/overlord/TaskQueueScaleTest.java      |    29 +-
 .../druid/indexing/overlord/TaskQueueTest.java     |    26 +
 .../druid/indexing/overlord/TestTaskRunner.java    |     3 +-
 .../druid/indexing/overlord/ZkWorkerTest.java      |     6 +-
 .../overlord/hrtr/HttpRemoteTaskRunnerTest.java    |    56 +-
 .../indexing/overlord/hrtr/WorkerHolderTest.java   |     8 +-
 .../overlord/http/OverlordResourceTest.java        |    46 +-
 .../druid/indexing/overlord/http/OverlordTest.java |    59 +-
 .../sampler/InputSourceSamplerDiscoveryTest.java   |   158 +-
 .../overlord/sampler/SamplerResponseTest.java      |     6 +-
 ...butionWithAffinityWorkerSelectStrategyTest.java |    13 +-
 ...onWithCategorySpecWorkerSelectStrategyTest.java |     2 +-
 .../EqualDistributionWorkerSelectStrategyTest.java |    45 +-
 ...pacityWithAffinityWorkerSelectStrategyTest.java |    13 +-
 ...tyWithCategorySpecWorkerSelectStrategyTest.java |     2 +-
 .../overlord/supervisor/SupervisorManagerTest.java |    97 +
 .../supervisor/SupervisorResourceTest.java         |    49 +
 .../SeekableStreamSupervisorSpecTest.java          |    67 +-
 .../seekablestream/SequenceMetadataTest.java       |    60 +-
 .../TestSeekableStreamDataSourceMetadata.java      |    48 +
 .../SeekableStreamSupervisorStateTest.java         |  1052 +-
 .../TestIndexerMetadataStorageCoordinator.java     |    60 +-
 .../indexing/worker/WorkerTaskManagerTest.java     |     6 +-
 integration-tests-ex/cases/pom.xml                 |    37 +-
 .../apache/druid/testsEx/config/Initializer.java   |     4 +-
 .../apache/druid/testsEx/utils/GcsTestUtil.java    |     7 +-
 .../indexer/wikipedia_merge_index_queries.json     |    38 +-
 .../indexer/wikipedia_merge_index_task.json        |    30 +
 ...edia_merge_reindex_druid_input_source_task.json |    30 +
 .../indexer/wikipedia_merge_reindex_task.json      |    30 +
 .../wikipedia_msq_select_query1.json               |     6 +-
 .../wikipedia_msq_select_query_ha.json             |    12 +-
 ...wikipedia_msq_select_query_sequential_test.json |     2 +-
 integration-tests-ex/docs/docker.md                |     3 +-
 integration-tests-ex/image/pom.xml                 |     2 +-
 integration-tests-ex/tools/pom.xml                 |     2 +-
 ...ocker-compose.centralized-datasource-schema.yml |   105 +
 integration-tests/docker/druid.sh                  |     2 +-
 .../docker/environment-configs/common              |     2 +-
 .../docker/environment-configs/common-ldap         |     2 +-
 .../docker/environment-configs/historical          |     4 +-
 .../docker/service-supervisords/druid.conf         |     2 +-
 .../centralized-datasource-schema-sample-data.sql  |    20 +
 .../test-data/high-availability-sample-data.sql    |    10 +-
 .../docker/test-data/ldap-security-sample-data.sql |     2 +-
 .../docker/test-data/query-error-sample-data.sql   |    10 +-
 .../docker/test-data/query-retry-sample-data.sql   |    10 +-
 .../docker/test-data/query-sample-data.sql         |    10 +-
 .../docker/test-data/security-sample-data.sql      |     2 +-
 integration-tests/pom.xml                          |     8 +-
 .../script/copy_resources_template.sh              |     3 +-
 .../script/docker_build_containers.sh              |    27 +-
 integration-tests/script/docker_compose_args.sh    |     6 +-
 .../testing/utils/AbstractTestQueryHelper.java     |     3 +-
 .../druid/testing/utils/MsqTestQueryHelper.java    |     8 +-
 .../java/org/apache/druid/tests/TestNGGroup.java   |     2 +
 .../coordinator/duty/ITAutoCompactionTest.java     |    14 +-
 .../tests/query/ITBroadcastJoinQueryTest.java      |     2 +-
 .../apache/druid/tests/query/ITJdbcQueryTest.java  |     2 +-
 .../apache/druid/tests/query/ITSqlCancelTest.java  |     2 +-
 .../druid/tests/query/ITSystemTableQueryTest.java  |     2 +-
 .../druid/tests/query/ITTwitterQueryTest.java      |     2 +-
 .../apache/druid/tests/query/ITUnionQueryTest.java |     2 +-
 .../druid/tests/query/ITWikipediaQueryTest.java    |     2 +-
 .../indexer/wikipedia_merge_index_queries.json     |    38 +-
 .../indexer/wikipedia_merge_index_task.json        |    30 +
 ...edia_merge_reindex_druid_input_source_task.json |    30 +
 .../indexer/wikipedia_merge_reindex_task.json      |    30 +
 .../queries/wikipedia_editstream_queries.json      |    20 +-
 it.sh                                              |    12 +-
 licenses.yaml                                      |  1559 +-
 ...e-frame.MIT => @babel-helper-string-parser.MIT} |     0
 licenses/bin/@types-prop-types.MIT                 |    42 +-
 licenses/bin/@types-react.MIT                      |     0
 licenses/bin/@types-scheduler.MIT                  |    42 +-
 licenses/bin/commander.MIT                         |    22 +
 licenses/bin/d3-dsv.BSD3                           |    27 +
 licenses/bin/iconv-lite.MIT                        |    21 +
 licenses/bin/icu4j.ICU                             |   854 +-
 licenses/bin/moment-timezone.MIT                   |    20 +
 licenses/bin/moment.MIT                            |    22 +
 licenses/bin/rw.BSD3                               |    26 +
 licenses/bin/safer-buffer.MIT                      |    21 +
 licenses/bin/uuid.MIT                              |    21 +
 owasp-dependency-check-suppressions.xml            |   929 +-
 pom.xml                                            |   233 +-
 processing/pom.xml                                 |    16 +-
 .../org/apache/druid/collections/BlockingPool.java |     9 +-
 .../druid/collections/DefaultBlockingPool.java     |    18 +
 .../druid/collections/DummyBlockingPool.java       |     6 +
 .../collections/bitmap/BatchIteratorAdapter.java   |    12 +-
 .../druid/collections/bitmap/ImmutableBitmap.java  |     2 +-
 .../apache/druid/common/config/ConfigManager.java  |    27 +-
 .../apache/druid/common/config/NullHandling.java   |    41 +-
 .../common/config/NullValueHandlingConfig.java     |    41 +-
 .../org/apache/druid/common/guava/FutureUtils.java |    10 +-
 .../java/org/apache/druid/data/input/Rows.java     |     9 +-
 .../data/input/impl/CloudObjectInputSource.java    |    30 +-
 .../druid/data/input/impl/DimensionSchema.java     |     6 +-
 .../apache/druid/data/input/impl/FileEntity.java   |     5 +
 .../druid/data/input/impl/HttpInputSource.java     |    64 +-
 .../druid/data/input/impl/InlineInputSource.java   |     5 +-
 .../input/impl/InputEntityIteratingReader.java     |    34 +-
 .../druid/data/input/impl/JsonInputFormat.java     |    12 +
 .../druid/data/input/impl/LocalInputSource.java    |    53 +-
 .../data/input/impl/LocalInputSourceFactory.java   |     4 +-
 .../data/input/impl/systemfield/SystemField.java   |    86 +
 .../systemfield/SystemFieldDecoratorFactory.java   |   116 +
 .../impl/systemfield/SystemFieldInputSource.java   |    63 +
 .../data/input/impl/systemfield/SystemFields.java  |    78 +
 .../java/org/apache/druid/error/ErrorResponse.java |     2 +-
 .../apache/druid/error/InternalServerError.java    |    62 +
 .../apache/druid/error/QueryExceptionCompat.java   |     2 +-
 .../druid/frame/field/ConstantFieldPointer.java    |    36 -
 .../druid/frame/field/DoubleArrayFieldReader.java  |    63 +
 .../druid/frame/field/DoubleFieldReader.java       |    74 +-
 .../druid/frame/field/DoubleFieldWriter.java       |    62 +-
 .../org/apache/druid/frame/field/FieldReaders.java |    27 +-
 .../org/apache/druid/frame/field/FieldWriters.java |    53 +-
 .../druid/frame/field/FloatArrayFieldReader.java   |    63 +
 .../apache/druid/frame/field/FloatFieldReader.java |    69 +-
 .../apache/druid/frame/field/FloatFieldWriter.java |    65 +-
 .../druid/frame/field/LongArrayFieldReader.java    |    63 +
 .../apache/druid/frame/field/LongFieldReader.java  |    76 +-
 .../apache/druid/frame/field/LongFieldWriter.java  |    62 +-
 .../druid/frame/field/NumericArrayFieldReader.java |    59 +
 .../frame/field/NumericArrayFieldSelector.java     |   205 +
 .../druid/frame/field/NumericArrayFieldWriter.java |   249 +
 .../druid/frame/field/NumericFieldReader.java      |   131 +
 .../druid/frame/field/NumericFieldWriter.java      |   139 +
 .../frame/field/NumericFieldWriterFactory.java     |    33 +
 .../druid/frame/field/ReadableFieldPointer.java    |     5 +
 .../druid/frame/field/RowMemoryFieldPointer.java   |    71 +
 .../druid/frame/field/SettableFieldPointer.java    |    50 +
 .../druid/frame/field/StringArrayFieldReader.java  |    34 +
 .../druid/frame/field/StringFieldReader.java       |    13 +-
 .../apache/druid/frame/field/TransformUtils.java   |    86 +
 .../frame/file/FrameFileHttpResponseHandler.java   |    46 +-
 .../druid/frame/file/FrameFilePartialFetch.java    |    11 +
 .../frame/processor/FrameProcessorExecutor.java    |    24 +-
 .../druid/frame/processor/FrameProcessors.java     |     4 +-
 .../processor/MultiColumnSelectorFactory.java      |     6 +-
 .../druid/frame/processor/RunAllFullyWidget.java   |   196 +-
 .../manager/AccumulatingProcessorManager.java      |    83 +
 .../processor/manager/ProcessorAndCallback.java    |    53 +
 .../frame/processor/manager/ProcessorManager.java  |    98 +
 .../frame/processor/manager/ProcessorManagers.java |    70 +
 .../manager/SequenceProcessorManager.java          |   110 +
 .../org/apache/druid/frame/read/FrameReader.java   |     7 +-
 .../frame/read/columnar/FrameColumnReaders.java    |    18 +-
 .../read/columnar/StringFrameColumnReader.java     |     6 +-
 .../UnsupportedColumnTypeFrameColumnReader.java    |    57 +
 .../druid/frame/segment/FrameFilteredOffset.java   |     6 +-
 .../frame/segment/row/ReadableFrameRowPointer.java |     6 +
 .../apache/druid/frame/write/FrameWriterUtils.java |    46 +-
 .../frame/write/columnar/FrameColumnWriters.java   |     7 +-
 .../write/columnar/StringFrameColumnWriter.java    |    46 +-
 .../org/apache/druid/guice/ConfigProvider.java     |     6 +-
 .../org/apache/druid/guice/ExpressionModule.java   |   109 +
 .../org/apache/druid/guice/NestedDataModule.java   |    90 +-
 .../org/apache/druid/indexer/TaskLocation.java     |    21 +
 .../java/org/apache/druid/indexer/TaskStatus.java  |    21 +-
 .../apache/druid/jackson/AggregatorsModule.java    |     7 +
 .../druid/jackson/StringComparatorModule.java      |     3 +-
 .../apache/druid/java/util/common/DateTimes.java   |    31 +
 .../druid/java/util/common/DefineClassUtils.java   |    14 +-
 .../apache/druid/java/util/common/FileUtils.java   |    21 +-
 .../org/apache/druid/java/util/common/Unit.java    |    53 +
 .../common/concurrent/ExecutorServiceConfig.java   |    57 -
 .../java/util/common/granularity/Granularity.java  |    12 +-
 .../common/granularity/IntervalsByGranularity.java |     2 +-
 .../util/common/granularity/PeriodGranularity.java |     8 +-
 .../druid/java/util/common/guava/Sequences.java    |     1 +
 .../util/common/parsers/CloseableIterator.java     |    42 +-
 .../util/emitter/service/SegmentMetadataEvent.java |    13 +
 .../java/util/emitter/service/ServiceEmitter.java  |     2 +-
 .../util/emitter/service/ServiceMetricEvent.java   |    74 +-
 .../http/client/pool/ChannelResourceFactory.java   |    87 +-
 .../util/metrics/AllocationMetricCollector.java    |     2 +-
 .../java/util/metrics/BasicMonitorScheduler.java   |     4 +-
 .../druid/java/util/metrics/CgroupCpuMonitor.java  |     4 +-
 .../java/util/metrics/CgroupCpuSetMonitor.java     |     8 +-
 .../java/util/metrics/CgroupMemoryMonitor.java     |     4 +-
 .../metrics/ClockDriftSafeMonitorScheduler.java    |     4 +-
 .../java/util/metrics/CpuAcctDeltaMonitor.java     |     8 +-
 .../util/metrics/DruidMonitorSchedulerConfig.java  |    45 +
 .../java/util/metrics/HttpPostEmitterMonitor.java  |    24 +-
 .../druid/java/util/metrics/JvmCpuMonitor.java     |     4 +-
 .../apache/druid/java/util/metrics/JvmMonitor.java |    36 +-
 .../druid/java/util/metrics/JvmThreadsMonitor.java |    10 +-
 .../druid/java/util/metrics/MonitorScheduler.java  |     6 +-
 .../java/util/metrics/MonitorSchedulerConfig.java  |    33 -
 .../druid/java/util/metrics/OshiSysMonitor.java    |    18 +-
 .../apache/druid/java/util/metrics/SysMonitor.java |    22 +-
 ...OperatorExpr.java => BinaryEvalOpExprBase.java} |     0
 .../druid/math/expr/BinaryLogicalOperatorExpr.java |     6 +
 .../druid/math/expr/BinaryMathOperatorExpr.java    |     6 +
 .../apache/druid/math/expr/BuiltInExprMacros.java  |    83 +-
 .../org/apache/druid/math/expr/ConstantExpr.java   |    20 +-
 .../java/org/apache/druid/math/expr/ExprEval.java  |    16 +-
 .../org/apache/druid/math/expr/ExprMacroTable.java |    36 +-
 .../math/expr/ExpressionProcessingConfig.java      |    28 +-
 .../druid/math/expr/ExpressionTypeConversion.java  |     3 +
 .../java/org/apache/druid/math/expr/Exprs.java     |    50 +-
 .../java/org/apache/druid/math/expr/Function.java  |   248 +-
 .../org/apache/druid/math/expr/FunctionalExpr.java |    17 +-
 .../apache/druid/math/expr/UnaryOperatorExpr.java  |     7 +
 .../druid/metadata/MetadataStorageConnector.java   |     2 +
 .../metadata/MetadataStorageTablesConfig.java      |    14 +-
 .../druid/query/ChainedExecutionQueryRunner.java   |     6 +-
 .../apache/druid/query/DefaultQueryMetrics.java    |     2 +-
 .../druid/query/DruidProcessingBufferConfig.java   |    78 +
 .../apache/druid/query/DruidProcessingConfig.java  |   232 +-
 .../druid/query/DruidProcessingIndexesConfig.java  |    67 +
 .../main/java/org/apache/druid/query/Druids.java   |     5 +
 .../druid/query/GroupByMergedQueryRunner.java      |   207 -
 .../druid/query/IterableRowsCursorHelper.java      |    34 +-
 .../org/apache/druid/query/JoinDataSource.java     |   221 +-
 .../query/MetricsEmittingQueryProcessingPool.java  |     3 +-
 .../druid/query/PrioritizedExecutorService.java    |     8 +
 .../query/QueryCapacityExceededException.java      |     2 +-
 .../java/org/apache/druid/query/QueryContext.java  |    14 +-
 .../java/org/apache/druid/query/QueryContexts.java |     2 +-
 .../apache/druid/query/QueryProcessingPool.java    |     2 +-
 .../org/apache/druid/query/UnionDataSource.java    |    73 +-
 .../org/apache/druid/query/UnionQueryRunner.java   |    10 +-
 .../AbstractSerializableLongObjectPairSerde.java   |    61 +
 ...tractSerializablePairLongObjectBufferStore.java |   139 +
 ...ractSerializablePairLongObjectColumnHeader.java |   125 +
 ...SerializablePairLongObjectColumnSerializer.java |   112 +
 ...zablePairLongObjectDeltaEncodedStagedSerde.java |   119 +
 ...erializablePairLongObjectSimpleStagedSerde.java |    98 +
 .../druid/query/aggregation/AggregatorFactory.java |    18 +-
 .../query/aggregation/CountAggregatorFactory.java  |     7 -
 .../aggregation/DoubleMaxAggregatorFactory.java    |     8 -
 .../aggregation/DoubleMinAggregatorFactory.java    |     8 -
 .../aggregation/DoubleSumAggregatorFactory.java    |     8 -
 .../ExpressionLambdaAggregatorFactory.java         |    24 -
 .../query/aggregation/FilteredAggregator.java      |     2 +-
 .../aggregation/FilteredAggregatorFactory.java     |    22 +-
 .../aggregation/FilteredBufferAggregator.java      |     2 +-
 .../aggregation/FilteredVectorAggregator.java      |     4 +-
 .../aggregation/FloatMaxAggregatorFactory.java     |     8 -
 .../aggregation/FloatMinAggregatorFactory.java     |     8 -
 .../aggregation/FloatSumAggregatorFactory.java     |     8 -
 .../aggregation/GroupingAggregatorFactory.java     |     6 -
 .../aggregation/HistogramAggregatorFactory.java    |     7 -
 .../aggregation/JavaScriptAggregatorFactory.java   |    20 -
 .../aggregation/LongMaxAggregatorFactory.java      |     8 -
 .../aggregation/LongMinAggregatorFactory.java      |     8 -
 .../aggregation/LongSumAggregatorFactory.java      |     8 -
 .../aggregation/SerializablePairLongDouble.java    |    35 +
 .../SerializablePairLongDoubleBufferStore.java     |    66 +
 .../SerializablePairLongDoubleColumnHeader.java    |    39 +
 ...SerializablePairLongDoubleColumnSerializer.java |    51 +
 .../SerializablePairLongDoubleComplexColumn.java   |   129 +
 ...rializablePairLongDoubleComplexMetricSerde.java |   109 +
 ...zablePairLongDoubleDeltaEncodedStagedSerde.java |    62 +
 ...erializablePairLongDoubleSimpleStagedSerde.java |    53 +
 .../aggregation/SerializablePairLongFloat.java     |    35 +
 .../SerializablePairLongFloatBufferStore.java      |    66 +
 .../SerializablePairLongFloatColumnHeader.java     |    39 +
 .../SerializablePairLongFloatColumnSerializer.java |    51 +
 .../SerializablePairLongFloatComplexColumn.java    |   129 +
 ...erializablePairLongFloatComplexMetricSerde.java |   110 +
 ...izablePairLongFloatDeltaEncodedStagedSerde.java |    62 +
 ...SerializablePairLongFloatSimpleStagedSerde.java |    53 +
 .../aggregation/SerializablePairLongLong.java      |    35 +
 .../SerializablePairLongLongBufferStore.java       |    65 +
 .../SerializablePairLongLongColumnHeader.java      |    39 +
 .../SerializablePairLongLongColumnSerializer.java  |    51 +
 .../SerializablePairLongLongComplexColumn.java     |   129 +
 ...SerializablePairLongLongComplexMetricSerde.java |   109 +
 ...lizablePairLongLongDeltaEncodedStagedSerde.java |    62 +
 .../SerializablePairLongLongSimpleStagedSerde.java |    53 +
 .../SerializablePairLongStringBufferStore.java     |   112 +-
 .../SerializablePairLongStringColumnHeader.java    |    82 +-
 ...SerializablePairLongStringColumnSerializer.java |    76 +-
 .../SerializablePairLongStringComplexColumn.java   |     2 +-
 ...zablePairLongStringDeltaEncodedStagedSerde.java |     9 +-
 ...erializablePairLongStringSimpleStagedSerde.java |     9 +-
 .../aggregation/SuppressedAggregatorFactory.java   |     6 -
 .../any/DoubleAnyAggregatorFactory.java            |     8 +-
 .../aggregation/any/FloatAnyAggregatorFactory.java |     8 +-
 .../aggregation/any/LongAnyAggregatorFactory.java  |     8 +-
 .../query/aggregation/any/NilVectorAggregator.java |   113 +
 .../any/NumericNilVectorAggregator.java            |   113 -
 .../query/aggregation/any/StringAnyAggregator.java |    34 +-
 .../any/StringAnyAggregatorFactory.java            |    32 +-
 .../aggregation/any/StringAnyBufferAggregator.java |    29 +-
 .../aggregation/any/StringAnyVectorAggregator.java |    33 +-
 .../cardinality/CardinalityAggregatorFactory.java  |    17 -
 .../aggregation/first/DoubleFirstAggregator.java   |    20 +-
 .../first/DoubleFirstAggregatorFactory.java        |   144 +-
 .../first/DoubleFirstBufferAggregator.java         |    23 +-
 .../first/DoubleFirstVectorAggregator.java         |    67 +
 .../query/aggregation/first/FirstLastUtils.java    |    69 +
 .../aggregation/first/FloatFirstAggregator.java    |    21 +-
 .../first/FloatFirstAggregatorFactory.java         |   138 +-
 .../first/FloatFirstBufferAggregator.java          |    23 +-
 .../first/FloatFirstVectorAggregator.java          |    66 +
 .../first/GenericFirstAggregateCombiner.java       |    66 +
 .../aggregation/first/LongFirstAggregator.java     |    19 +-
 .../first/LongFirstAggregatorFactory.java          |   138 +-
 .../first/LongFirstBufferAggregator.java           |    19 +-
 .../first/LongFirstVectorAggregator.java           |    64 +
 .../aggregation/first/NumericFirstAggregator.java  |    40 +-
 .../first/NumericFirstBufferAggregator.java        |    48 +-
 .../first/NumericFirstVectorAggregator.java        |   225 +
 ...SingleStringFirstDimensionVectorAggregator.java |   125 +
 .../first/StringFirstAggregateCombiner.java        |    59 -
 .../aggregation/first/StringFirstAggregator.java   |     6 +-
 .../first/StringFirstAggregatorFactory.java        |    90 +-
 .../first/StringFirstBufferAggregator.java         |     6 +-
 .../aggregation/first/StringFirstLastUtils.java    |    44 +-
 .../first/StringFirstVectorAggregator.java         |   184 +
 .../hyperloglog/HyperUniquesAggregatorFactory.java |    11 -
 .../aggregation/last/DoubleLastAggregator.java     |    20 +-
 .../last/DoubleLastAggregatorFactory.java          |   130 +-
 .../last/DoubleLastBufferAggregator.java           |    21 +-
 .../last/DoubleLastVectorAggregator.java           |    15 +-
 .../aggregation/last/FloatLastAggregator.java      |    21 +-
 .../last/FloatLastAggregatorFactory.java           |   128 +-
 .../last/FloatLastBufferAggregator.java            |    22 +-
 .../last/FloatLastVectorAggregator.java            |    17 +-
 .../last/GenericLastAggregateCombiner.java         |    66 +
 .../query/aggregation/last/LongLastAggregator.java |    19 +-
 .../last/LongLastAggregatorFactory.java            |   127 +-
 .../aggregation/last/LongLastBufferAggregator.java |    19 +-
 .../aggregation/last/LongLastVectorAggregator.java |    16 +-
 .../aggregation/last/NumericLastAggregator.java    |    46 +-
 .../last/NumericLastBufferAggregator.java          |    49 +-
 .../last/NumericLastVectorAggregator.java          |    94 +-
 .../SingleStringLastDimensionVectorAggregator.java |   124 +
 .../last/StringLastAggregateCombiner.java          |    60 -
 .../aggregation/last/StringLastAggregator.java     |     6 +-
 .../last/StringLastAggregatorFactory.java          |    54 +-
 .../last/StringLastBufferAggregator.java           |     6 +-
 .../last/StringLastVectorAggregator.java           |    29 +-
 .../mean/DoubleMeanAggregatorFactory.java          |     6 -
 .../aggregation/post/ExpressionPostAggregator.java |    75 +-
 .../ForwardingFilteredDimensionSelector.java       |    80 +-
 .../query/dimension/ListFilteredDimensionSpec.java |    12 +-
 .../PredicateFilteredDimensionSelector.java        |    21 +-
 .../query/expression/IPv6AddressExprUtils.java     |    81 +
 .../expression/IPv6AddressMatchExprMacro.java      |   137 +
 .../druid/query/expression/LookupExprMacro.java    |    27 +-
 .../query/expression/NestedDataExpressions.java    |   420 +-
 .../query/filter/ArrayContainsElementFilter.java   |   523 +
 .../apache/druid/query/filter/BooleanFilter.java   |    11 -
 .../apache/druid/query/filter/BoundDimFilter.java  |     3 +-
 .../org/apache/druid/query/filter/DimFilter.java   |     5 +-
 .../apache/druid/query/filter/DimFilterUtils.java  |    61 +-
 .../druid/query/filter/DruidPredicateFactory.java  |    17 +
 .../apache/druid/query/filter/EqualityFilter.java  |    89 +-
 .../java/org/apache/druid/query/filter/Filter.java |    40 +-
 .../org/apache/druid/query/filter/InDimFilter.java |    49 +-
 .../druid/query/filter/IsBooleanDimFilter.java     |   120 +
 .../druid/query/filter/IsFalseDimFilter.java       |    45 +
 .../apache/druid/query/filter/IsTrueDimFilter.java |    45 +
 .../apache/druid/query/filter/NotDimFilter.java    |     5 +
 .../org/apache/druid/query/filter/NullFilter.java  |    18 +-
 .../org/apache/druid/query/filter/RangeFilter.java |    11 +-
 .../query/filter/SelectorPredicateFactory.java     |     8 +
 .../StringPredicateDruidPredicateFactory.java      |    99 +
 .../apache/druid/query/filter/ValueMatcher.java    |    12 +-
 .../filter/vector/ArrayVectorValueMatcher.java     |     7 +-
 .../filter/vector/BooleanVectorValueMatcher.java   |    17 +-
 .../filter/vector/DoubleVectorValueMatcher.java    |    25 +-
 .../filter/vector/FloatVectorValueMatcher.java     |    25 +-
 .../filter/vector/LongVectorValueMatcher.java      |    24 +-
 .../vector/MultiValueStringVectorValueMatcher.java |    36 +-
 .../filter/vector/ObjectVectorValueMatcher.java    |    16 +-
 .../SingleValueStringVectorValueMatcher.java       |    59 +-
 .../vector/StringObjectVectorValueMatcher.java     |    13 +-
 .../query/filter/vector/VectorValueMatcher.java    |   284 +-
 .../filter/vector/VectorValueMatcherFactory.java   |    34 -
 .../apache/druid/query/groupby/GroupByQuery.java   |    12 +-
 .../druid/query/groupby/GroupByQueryConfig.java    |    67 +-
 .../druid/query/groupby/GroupByQueryEngine.java    |   460 -
 .../druid/query/groupby/GroupByQueryHelper.java    |   247 -
 .../query/groupby/GroupByQueryQueryToolChest.java  |   125 +-
 .../druid/query/groupby/GroupByQueryResources.java |   154 +
 .../query/groupby/GroupByQueryRunnerFactory.java   |    27 +-
 .../apache/druid/query/groupby/GroupingEngine.java |   806 +
 .../groupby/epinephelinae/GroupByBinaryFnV2.java   |     2 +-
 .../epinephelinae/GroupByMergingQueryRunnerV2.java |     2 +-
 .../epinephelinae/GroupByQueryEngineV2.java        |     7 +-
 .../groupby/epinephelinae/GroupByRowProcessor.java |     8 +-
 .../GrouperBufferComparatorUtils.java              |     7 +-
 .../groupby/epinephelinae/ParallelCombiner.java    |     8 +-
 .../epinephelinae/RowBasedGrouperHelper.java       |    12 +-
 .../epinephelinae/RowBasedKeySerdeHelper.java      |     2 +
 .../column/GroupByColumnSelectorStrategy.java      |     3 +
 .../query/groupby/having/DimFilterHavingSpec.java  |     2 +-
 .../query/groupby/orderby/DefaultLimitSpec.java    |     6 -
 .../druid/query/groupby/orderby/LimitSpec.java     |     2 -
 .../druid/query/groupby/orderby/NoopLimitSpec.java |     6 -
 .../groupby/resource/GroupByQueryResource.java     |    93 -
 .../query/groupby/strategy/GroupByStrategy.java    |   205 -
 .../groupby/strategy/GroupByStrategySelector.java  |    70 -
 .../query/groupby/strategy/GroupByStrategyV1.java  |   293 -
 .../query/groupby/strategy/GroupByStrategyV2.java  |   729 -
 .../druid/query/lookup/LookupExtractorFactory.java |    11 +
 .../SegmentMetadataQueryQueryToolChest.java        |    25 +-
 .../operator/NaivePartitioningOperatorFactory.java |    20 +
 .../druid/query/operator/NaiveSortOperator.java    |    11 +-
 .../query/operator/NaiveSortOperatorFactory.java   |    34 +-
 .../apache/druid/query/operator/OffsetLimit.java   |   143 +
 .../druid/query/operator/OperatorFactory.java      |     1 +
 .../apache/druid/query/operator/ScanOperator.java  |    10 +-
 .../druid/query/operator/ScanOperatorFactory.java  |    42 +-
 .../druid/query/operator/WindowOperatorQuery.java  |    33 +-
 .../WindowOperatorQueryQueryToolChest.java         |    10 +-
 .../operator/window/WindowOperatorFactory.java     |    23 +
 .../window/ranking/WindowRankProcessor.java        |    26 +
 .../window/ranking/WindowRankingProcessorBase.java |    24 +
 .../druid/query/ordering/StringComparator.java     |     2 +
 .../druid/query/ordering/StringComparators.java    |    56 +-
 .../druid/query/planning/DataSourceAnalysis.java   |    19 +
 .../rowsandcols/LazilyDecoratedRowsAndColumns.java |    80 +-
 .../column/accessor/DoubleColumnAccessorBase.java  |     6 +-
 .../column/accessor/FloatColumnAccessorBase.java   |     6 +-
 .../column/accessor/LongColumnAccessorBase.java    |     8 +-
 .../rowsandcols/concrete/FrameRowsAndColumns.java  |    10 +-
 .../DefaultColumnSelectorFactoryMaker.java         |    17 +-
 .../semantic/DefaultFramedOnHeapAggregatable.java  |     4 +-
 .../semantic/DefaultRowsAndColumnsDecorator.java   |    19 +-
 .../semantic/RowsAndColumnsDecorator.java          |     3 +-
 .../org/apache/druid/query/scan/ConcatCursor.java  |     6 +-
 .../org/apache/druid/query/scan/ScanQuery.java     |     7 +
 .../druid/query/scan/ScanQueryQueryToolChest.java  |    59 +-
 .../druid/query/scan/ScanResultValueIterator.java  |    62 +
 .../apache/druid/query/search/AutoStrategy.java    |   134 -
 .../query/search/ConciseBitmapDecisionHelper.java  |    38 -
 .../query/search/RoaringBitmapDecisionHelper.java  |    38 -
 .../query/search/SearchQueryDecisionHelper.java    |    35 -
 .../apache/druid/query/search/SearchStrategy.java  |    16 -
 .../druid/query/search/SearchStrategySelector.java |     5 +-
 .../druid/query/search/UseIndexesStrategy.java     |     2 +-
 .../query/spec/SpecificSegmentQueryRunner.java     |     2 +-
 .../timeseries/TimeseriesQueryQueryToolChest.java  |     8 +-
 .../druid/query/topn/TopNQueryQueryToolChest.java  |     8 +-
 .../druid/segment/AutoTypeColumnIndexer.java       |   141 +-
 .../apache/druid/segment/AutoTypeColumnMerger.java |    42 +-
 .../apache/druid/segment/AutoTypeColumnSchema.java |    58 +-
 .../segment/BaseSingleValueDimensionSelector.java  |    17 +-
 .../druid/segment/ConstantDimensionSelector.java   |    10 +-
 .../ConstantMultiValueDimensionSelector.java       |    16 +-
 .../druid/segment/DefaultColumnFormatConfig.java   |    87 +
 .../segment/DictionaryEncodedColumnIndexer.java    |     4 +-
 .../segment/DictionaryEncodedColumnMerger.java     |     4 +-
 .../apache/druid/segment/DimensionSelector.java    |    19 +-
 .../druid/segment/DimensionSelectorUtils.java      |    96 +-
 .../org/apache/druid/segment/FilteredOffset.java   |    17 +-
 .../java/org/apache/druid/segment/IndexIO.java     |     5 +
 .../org/apache/druid/segment/IndexMergerV9.java    |     1 +
 .../segment/NestedCommonFormatColumnHandler.java   |    21 +-
 .../druid/segment/NestedDataColumnHandlerV4.java   |   105 +
 .../druid/segment/NestedDataColumnIndexer.java     |   501 -
 .../druid/segment/NestedDataColumnIndexerV4.java   |   501 +
 .../druid/segment/NestedDataColumnMerger.java      |   216 -
 .../druid/segment/NestedDataColumnMergerV4.java    |   214 +
 .../druid/segment/NestedDataColumnSchema.java      |   129 +
 .../druid/segment/NestedDataDimensionHandler.java  |   105 -
 .../druid/segment/NestedDataDimensionSchema.java   |    56 -
 .../druid/segment/ObjectBasedColumnSelector.java   |    78 +
 .../apache/druid/segment/ObjectColumnSelector.java |    66 +-
 .../segment/RowBasedColumnSelectorFactory.java     |    23 +-
 .../org/apache/druid/segment/RowBasedCursor.java   |     6 +-
 .../java/org/apache/druid/segment/RowWalker.java   |     8 +-
 .../segment/SingleScanTimeDimensionSelector.java   |    17 +-
 .../druid/segment/StringDimensionHandler.java      |     5 +
 .../druid/segment/StringDimensionIndexer.java      |    60 +-
 .../druid/segment/UnnestDimensionCursor.java       |    29 +-
 .../apache/druid/segment/UnnestStorageAdapter.java |   255 +-
 .../org/apache/druid/segment/VirtualColumns.java   |    17 +
 .../segment/column/ColumnCapabilitiesImpl.java     |     7 +-
 .../apache/druid/segment/column/ColumnConfig.java  |    20 +-
 .../druid/segment/column/ColumnTypeFactory.java    |     4 +-
 .../segment/column/StringEncodingStrategies.java   |    37 +
 .../column/StringUtf8DictionaryEncodedColumn.java  |    60 +-
 .../druid/segment/column/TypeStrategies.java       |     3 +
 .../druid/segment/data/FixedIndexedWriter.java     |    12 +-
 .../segment/data/FrontCodedIndexedWriter.java      |     1 +
 .../druid/segment/data/GenericIndexedWriter.java   |    12 +-
 .../druid/segment/filter/AllFalseValueMatcher.java |    48 +
 .../druid/segment/filter/AllTrueValueMatcher.java  |    52 +
 .../segment/filter/AllUnknownValueMatcher.java     |    53 +
 .../org/apache/druid/segment/filter/AndFilter.java |    29 +-
 .../druid/segment/filter/BooleanValueMatcher.java  |    36 -
 .../apache/druid/segment/filter/BoundFilter.java   |    38 +-
 .../segment/filter/ColumnComparisonFilter.java     |    22 +-
 .../druid/segment/filter/ConstantMatcherType.java  |    81 +
 .../segment/filter/DimensionPredicateFilter.java   |    15 +-
 .../druid/segment/filter/ExpressionFilter.java     |    62 +-
 .../apache/druid/segment/filter/FalseFilter.java   |    20 +-
 .../druid/segment/filter/FalseValueMatcher.java    |    49 -
 .../org/apache/druid/segment/filter/Filters.java   |    60 +-
 .../druid/segment/filter/IsBooleanFilter.java      |   197 +
 .../druid/segment/filter/JavaScriptFilter.java     |     7 -
 .../apache/druid/segment/filter/LikeFilter.java    |    11 +-
 .../org/apache/druid/segment/filter/NotFilter.java |    44 +-
 .../org/apache/druid/segment/filter/OrFilter.java  |    29 +-
 .../filter/PredicateValueMatcherFactory.java       |    36 +-
 .../druid/segment/filter/SelectorFilter.java       |     7 -
 .../apache/druid/segment/filter/SpatialFilter.java |    32 +-
 .../filter/StringConstantValueMatcherFactory.java  |     1 +
 .../apache/druid/segment/filter/TrueFilter.java    |    18 +-
 .../druid/segment/filter/TrueValueMatcher.java     |    49 -
 .../apache/druid/segment/filter/ValueMatchers.java |   328 +-
 .../druid/segment/generator/DataGenerator.java     |    16 +
 .../incremental/AppendableIndexBuilder.java        |    21 -
 .../segment/incremental/IncrementalIndex.java      |   292 +-
 .../incremental/IncrementalIndexAdapter.java       |     7 +-
 .../segment/incremental/IncrementalIndexRow.java   |     2 +-
 .../IncrementalIndexStorageAdapter.java            |    19 +-
 .../incremental/OnheapIncrementalIndex.java        |   253 +-
 .../segment/index/AllFalseBitmapColumnIndex.java   |    24 +-
 .../segment/index/AllTrueBitmapColumnIndex.java    |     8 +-
 .../segment/index/AllUnknownBitmapColumnIndex.java |    58 +
 .../druid/segment/index/BitmapColumnIndex.java     |    20 +-
 .../index/IndexedStringDruidPredicateIndexes.java  |    11 +
 .../IndexedUtf8LexicographicalRangeIndexes.java    |    27 +-
 .../segment/index/IndexedUtf8ValueIndexes.java     |    49 +-
 .../segment/index/SimpleImmutableBitmapIndex.java  |    11 +-
 .../index/SimpleImmutableBitmapIterableIndex.java  |    26 +-
 .../org/apache/druid/segment/join/Equality.java    |    14 +-
 .../druid/segment/join/JoinConditionAnalysis.java  |    29 +-
 .../org/apache/druid/segment/join/Joinable.java    |    20 +-
 .../druid/segment/join/JoinableFactoryWrapper.java |     4 +-
 .../join/PossiblyNullDimensionSelector.java        |     6 +-
 .../apache/druid/segment/join/PostJoinCursor.java  |    35 +-
 .../segment/join/filter/JoinFilterAnalyzer.java    |     4 +-
 .../JoinFilterColumnCorrelationAnalysis.java       |     5 +-
 .../join/filter/JoinFilterCorrelations.java        |     5 +-
 .../druid/segment/join/lookup/LookupJoinable.java  |    41 +-
 .../segment/join/table/FrameBasedIndexedTable.java |     2 +-
 .../druid/segment/join/table/IndexedTable.java     |    11 +-
 .../join/table/IndexedTableDimensionSelector.java  |     6 +-
 .../join/table/IndexedTableJoinMatcher.java        |    52 +-
 .../segment/join/table/IndexedTableJoinable.java   |    31 +-
 .../apache/druid/segment/join/table/MapIndex.java  |    73 +-
 .../segment/join/table/RowBasedIndexBuilder.java   |    41 +-
 .../segment/join/table/UniqueLongArrayIndex.java   |    17 +-
 .../druid/segment/nested/DictionaryIdLookup.java   |   367 +-
 .../apache/druid/segment/nested/FieldTypeInfo.java |    94 +-
 .../GlobalDictionaryEncodedFieldColumnWriter.java  |    14 +-
 .../segment/nested/NestedCommonFormatColumn.java   |    16 +-
 .../nested/NestedCommonFormatColumnSerializer.java |    12 +-
 .../segment/nested/NestedDataColumnSerializer.java |    47 +-
 .../nested/NestedDataColumnSerializerV4.java       |    20 +-
 .../segment/nested/NestedDataColumnSupplier.java   |    73 +-
 .../segment/nested/NestedDataColumnSupplierV4.java |   130 +-
 .../druid/segment/nested/NestedDataColumnV4.java   |     4 +-
 .../segment/nested/NestedDataComplexTypeSerde.java |     8 +-
 .../nested/NestedFieldColumnIndexSupplier.java     |   196 +-
 .../nested/NestedFieldDictionaryEncodedColumn.java |    35 +-
 .../nested/ScalarDoubleColumnAndIndexSupplier.java |    82 +-
 .../nested/ScalarDoubleColumnSerializer.java       |    29 +-
 .../nested/ScalarDoubleFieldColumnWriter.java      |     2 +-
 .../nested/ScalarLongColumnAndIndexSupplier.java   |    82 +-
 .../segment/nested/ScalarLongColumnSerializer.java |    29 +-
 .../nested/ScalarLongFieldColumnWriter.java        |     2 +-
 .../ScalarNestedCommonFormatColumnSerializer.java  |     8 +-
 .../nested/ScalarStringColumnAndIndexSupplier.java |    43 +-
 .../nested/ScalarStringColumnSerializer.java       |    29 +-
 .../nested/ScalarStringFieldColumnWriter.java      |     3 +-
 .../druid/segment/nested/ValueDictionary.java      |     6 +-
 .../apache/druid/segment/nested/VariantColumn.java |    38 +-
 .../nested/VariantColumnAndIndexSupplier.java      |   116 +-
 .../segment/nested/VariantColumnSerializer.java    |    68 +-
 .../segment/nested/VariantFieldColumnWriter.java   |     3 +-
 .../settable/SettableDimensionValueSelector.java   |     4 +-
 .../serde/DictionaryEncodedColumnPartSerde.java    |    40 +-
 .../serde/NestedCommonFormatColumnPartSerde.java   |    32 +-
 .../segment/transform/ExpressionTransform.java     |     5 +-
 .../segment/transform/TransformedInputRow.java     |   156 +
 .../druid/segment/transform/Transformer.java       |   133 +-
 .../druid/segment/vector/FilteredVectorOffset.java |     5 +-
 .../ExpressionMultiValueDimensionSelector.java     |    21 +-
 .../druid/segment/virtual/ExpressionSelectors.java |     8 +-
 .../segment/virtual/ListFilteredVirtualColumn.java |   235 +-
 .../segment/virtual/NestedFieldVirtualColumn.java  |    13 +-
 ...erredEvaluationExpressionDimensionSelector.java |     6 +-
 .../org/apache/druid/tasklogs/NoopTaskLogs.java    |    12 +
 .../java/org/apache/druid/tasklogs/TaskLogs.java   |     3 +-
 .../apache/druid/tasklogs/TaskPayloadManager.java  |    57 +
 .../druid/timeline/SegmentStatusInCluster.java     |    43 +-
 .../timeline/partition/OverwriteShardSpec.java     |     2 +-
 .../timeline/partition/TombstoneShardSpec.java     |    10 +-
 .../org/apache/druid/audit/NoopAuditManager.java   |    71 +
 .../org/apache/druid/audit/TestAuditManager.java   |    71 -
 .../druid/collections/CombiningIteratorTest.java   |     1 +
 .../bitmap/BatchIteratorAdapterTest.java           |    42 +
 .../collections/spatial/ImmutableRTreeTest.java    |     1 +
 .../java/org/apache/druid/common/UnitTest.java     |    39 +
 .../druid/common/config/ConfigManagerTest.java     |     4 +-
 .../druid/common/config/NullHandlingTest.java      |    14 +
 .../apache/druid/common/utils/JodaUtilsTest.java   |     1 +
 .../druid/data/input/ResourceInputSource.java      |     7 +-
 .../input/impl/CloudObjectInputSourceTest.java     |    19 +-
 .../druid/data/input/impl/HttpInputSourceTest.java |    41 +
 .../input/impl/InputEntityIteratingReaderTest.java |   107 +-
 .../data/input/impl/LocalInputSourceTest.java      |    59 +-
 .../apache/druid/error/DruidExceptionMatcher.java  |     9 +
 .../org/apache/druid/error/ErrorResponseTest.java  |    28 +
 .../druid/error/InternalServerErrorTest.java       |    59 +
 .../intset/ImmutableConciseSetTest.java            |    20 +
 .../druid/frame/field/ComplexFieldReaderTest.java  |     4 +-
 .../druid/frame/field/ConstantFieldPointer.java    |    44 +
 .../frame/field/DoubleArrayFieldReaderTest.java    |   245 +
 .../druid/frame/field/DoubleFieldReaderTest.java   |    53 +-
 .../frame/field/FloatArrayFieldReaderTest.java     |   235 +
 .../druid/frame/field/FloatFieldReaderTest.java    |    53 +-
 .../druid/frame/field/IndexArrayFieldPointer.java  |    64 +
 .../frame/field/LongArrayFieldReaderTest.java      |   211 +
 .../druid/frame/field/LongFieldReaderTest.java     |    53 +-
 .../frame/field/StringArrayFieldWriterTest.java    |     2 +-
 .../druid/frame/field/StringFieldReaderTest.java   |    73 +-
 .../druid/frame/field/StringFieldWriterTest.java   |     2 +-
 .../druid/frame/field/TransformUtilsTest.java      |   187 +
 .../file/FrameFileHttpResponseHandlerTest.java     |    80 +
 .../frame/processor/RunAllFullyWidgetTest.java     |   450 +-
 .../manager/SequenceProcessorManagerTest.java      |   169 +
 .../apache/druid/frame/write/FrameWriterTest.java  |   204 +-
 .../druid/frame/write/FrameWriterTestData.java     |   105 +-
 .../apache/druid/frame/write/FrameWritersTest.java |    36 -
 .../druid/granularity/QueryGranularityTest.java    |    89 +-
 .../guice/MetadataStorageTablesConfigTest.java     |     1 +
 .../apache/druid/guice/NestedDataModuleTest.java   |   113 +
 .../org/apache/druid/indexer/TaskLocationTest.java |    43 +
 .../druid/java/util/common/DateTimesTest.java      |    30 +
 .../druid/java/util/common/FileUtilsTest.java      |    68 +-
 .../druid/java/util/common/StringUtilsTest.java    |    15 +
 .../util/common/parsers/CloseableIteratorTest.java |    41 +
 .../druid/java/util/emitter/core/EmitterTest.java  |    38 +-
 .../core/HttpPostEmitterLoggerStressTest.java      |     4 +-
 .../emitter/core/HttpPostEmitterStressTest.java    |     6 +-
 .../emitter/core/ParametrizedUriEmitterTest.java   |     4 +-
 .../emitter/service/SegmentMetadataEventTest.java  |    31 +
 .../emitter/service/ServiceMetricEventTest.java    |    31 +-
 .../java/util/http/client/JankyServersTest.java    |    72 +
 .../util/metrics/BasicMonitorSchedulerTest.java    |     4 +-
 .../ClockDriftSafeMonitorSchedulerTest.java        |    18 +-
 .../java/util/metrics/MonitorSchedulerTest.java    |     4 +-
 .../java/org/apache/druid/math/expr/EvalTest.java  |   239 +-
 .../java/org/apache/druid/math/expr/ExprTest.java  |     7 +-
 .../java/org/apache/druid/math/expr/ExprsTest.java |    50 +-
 .../org/apache/druid/math/expr/FunctionTest.java   |   108 +
 .../org/apache/druid/math/expr/OutputTypeTest.java |    16 +
 .../org/apache/druid/math/expr/ParserTest.java     |     7 +-
 .../druid/math/expr/VectorExprSanityTest.java      |    14 -
 .../metadata/TestMetadataStorageConnector.java     |     6 +
 .../metadata/TestMetadataStorageTablesConfig.java  |     1 +
 .../query/ChainedExecutionQueryRunnerTest.java     |     1 +
 .../org/apache/druid/query/DataSourceTest.java     |     2 +-
 .../org/apache/druid/query/DoubleStorageTest.java  |     3 +-
 .../druid/query/DruidProcessingConfigTest.java     |    98 +-
 .../FrameBasedInlineDataSourceSerializerTest.java  |     7 +-
 .../druid/query/IterableRowsCursorHelperTest.java  |    12 +-
 .../org/apache/druid/query/JoinDataSourceTest.java |    48 +
 .../MetricsEmittingQueryProcessingPoolTest.java    |    25 +-
 .../druid/query/MultiValuedDimensionTest.java      |    49 +-
 .../apache/druid/query/NestedDataTestUtils.java    |    30 +-
 .../org/apache/druid/query/QueryContextTest.java   |    17 +
 .../org/apache/druid/query/TestBufferPool.java     |     6 +
 .../apache/druid/query/UnionDataSourceTest.java    |     2 +-
 .../query/aggregation/AggregationTestHelper.java   |     8 -
 .../query/aggregation/AggregatorFactoryTest.java   |    17 +-
 .../query/aggregation/FilteredAggregatorTest.java  |     6 +-
 .../SerializablePairLongDoubleBufferStoreTest.java |   350 +
 ...izablePairLongDoubleComplexMetricSerdeTest.java |   238 +
 ...ePairLongDoubleDeltaEncodedStagedSerdeTest.java |    99 +
 .../SerializablePairLongFloatBufferStoreTest.java  |   350 +
 ...lizablePairLongFloatComplexMetricSerdeTest.java |   238 +
 ...lePairLongFloatDeltaEncodedStagedSerdeTest.java |    99 +
 .../SerializablePairLongLongBufferStoreTest.java   |   350 +
 ...alizablePairLongLongComplexMetricSerdeTest.java |   238 +
 ...blePairLongLongDeltaEncodedStagedSerdeTest.java |    99 +
 ...ializablePairLongLongSimpleStagedSerdeTest.java |    69 +
 .../SerializablePairLongStringBufferStoreTest.java |    26 +-
 .../aggregation/StringColumnAggregationTest.java   |     1 -
 .../aggregation/any/StringAnyAggregationTest.java  |     2 +-
 .../any/StringAnyAggregatorFactoryTest.java        |   136 +-
 .../any/StringAnyBufferAggregatorTest.java         |   124 +-
 .../any/StringAnyVectorAggregatorTest.java         |    45 +-
 .../cardinality/CardinalityAggregatorTest.java     |     6 +-
 .../constant/LongConstantBufferAggregatorTest.java |     6 +-
 .../constant/LongConstantVectorAggregatorTest.java |     6 +-
 .../first/DoubleFirstAggregationTest.java          |    53 +-
 .../first/DoubleFirstVectorAggregationTest.java    |   294 +
 .../first/FloatFirstAggregationTest.java           |    49 +-
 .../first/FloatFirstVectorAggregationTest.java     |   307 +
 .../first/LongFirstAggregationTest.java            |    47 +-
 .../first/LongFirstVectorAggregationTest.java      |   305 +
 .../first/StringFirstVectorAggregatorTest.java     |   362 +
 .../last/DoubleLastAggregationTest.java            |    52 +-
 .../last/DoubleLastVectorAggregatorTest.java       |   224 +-
 .../aggregation/last/FloatLastAggregationTest.java |    51 +-
 .../last/FloatLastVectorAggregatorTest.java        |   230 +-
 .../aggregation/last/LongLastAggregationTest.java  |    52 +-
 .../last/LongLastVectorAggregatorTest.java         |   232 +-
 .../last/StringLastVectorAggregatorTest.java       |   329 +-
 .../query/aggregation/mean/SimpleTestIndex.java    |     1 -
 .../post/ArithmeticPostAggregatorTest.java         |     8 +-
 .../post/ExpressionPostAggregatorTest.java         |   169 +-
 .../dimension/StringDimensionSelectorForTest.java  |     6 +-
 .../query/dimension/TestDimensionSelector.java     |     6 +-
 .../query/expression/IPv6AddressExprUtilsTest.java |   136 +
 .../expression/IPv6AddressMatchExprMacroTest.java  |   106 +
 .../query/expression/LookupExprMacroTest.java      |    95 +
 .../expression/NestedDataExpressionsTest.java      |    44 +
 .../druid/query/expression/TestExprMacroTable.java |    57 +-
 .../expression/VectorExpressionsSanityTest.java    |    15 -
 .../druid/query/filter/DimFilterUtilsTest.java     |    28 +-
 .../apache/druid/query/filter/InDimFilterTest.java |     8 +-
 .../druid/query/filter/IsBooleanDimFilterTest.java |    97 +
 .../query/filter/SelectorPredicateFactoryTest.java |     2 +-
 ...ctorValueMatcherColumnProcessorFactoryTest.java |    15 +-
 ...GroupByLimitPushDownInsufficientBufferTest.java |    65 +-
 .../GroupByLimitPushDownMultiNodeMergeTest.java    |    63 +-
 .../query/groupby/GroupByMultiSegmentTest.java     |    37 +-
 .../query/groupby/GroupByQueryConfigTest.java      |    17 +-
 .../query/groupby/GroupByQueryMergeBufferTest.java |    50 +-
 .../groupby/GroupByQueryQueryToolChestTest.java    |    63 +-
 .../groupby/GroupByQueryRunnerFactoryTest.java     |     1 -
 .../groupby/GroupByQueryRunnerFailureTest.java     |    40 +-
 .../query/groupby/GroupByQueryRunnerTest.java      |   784 +-
 .../groupby/GroupByTimeseriesQueryRunnerTest.java  |    30 +-
 .../query/groupby/NestedDataGroupByQueryTest.java  |     9 +-
 .../query/groupby/NestedGroupByArrayQueryTest.java |    30 +-
 .../query/groupby/NestedQueryPushDownTest.java     |    72 +-
 .../groupby/UnnestGroupByQueryRunnerTest.java      |   265 +-
 .../LookupExtractorFactoryContainerTest.java       |    11 +
 .../druid/query/lookup/LookupSegmentTest.java      |    11 +
 .../druid/query/metadata/SegmentAnalyzerTest.java  |     6 -
 .../SegmentMetadataQueryQueryToolChestTest.java    |    38 +
 .../NaivePartitioningOperatorFactoryTest.java      |    34 +
 .../operator/NaiveSortOperatorFactoryTest.java     |    34 +
 .../query/operator/NaiveSortOperatorTest.java      |    98 +
 .../druid/query/operator/OffsetLimitTest.java      |   109 +
 .../query/operator/ScanOperatorFactoryTest.java    |    20 +-
 .../query/operator/WindowOperatorFactoryTest.java  |    34 +
 .../query/operator/WindowOperatorQueryTest.java    |    29 +-
 .../query/ordering/StringComparatorsTest.java      |    55 +-
 .../query/planning/DataSourceAnalysisTest.java     |    33 +
 .../query/rowsandcols/RowsAndColumnsTestBase.java  |     5 +-
 .../rowsandcols/column/ColumnAccessorsTest.java    |   188 +
 .../concrete/FrameRowsAndColumnsTest.java          |    48 +
 .../semantic/CombinedSemanticInterfacesTest.java   |    30 +
 .../semantic/RowsAndColumnsDecoratorTest.java      |    13 +-
 .../semantic/TestRowsAndColumnsDecorator.java      |    11 +-
 ...tVirtualColumnEvaluationRowsAndColumnsTest.java |    93 +
 .../druid/query/scan/NestedDataScanQueryTest.java  |   142 +-
 .../search/SearchQueryRunnerWithCaseTest.java      |     3 +-
 .../timeseries/NestedDataTimeseriesQueryTest.java  |     2 -
 .../timeseries/TimeseriesQueryRunnerTest.java      |    77 +-
 .../topn/TopNMetricSpecOptimizationsTest.java      |     4 +-
 .../query/topn/TopNQueryQueryToolChestTest.java    |     7 +-
 .../druid/query/topn/TopNQueryRunnerTest.java      |     3 +
 .../druid/segment/AutoTypeColumnIndexerTest.java   |   107 +-
 .../ColumnSelectorColumnIndexSelectorTest.java     |     5 +-
 .../segment/ConstantDimensionSelectorTest.java     |    22 +-
 .../ConstantMultiValueDimensionSelectorTest.java   |    49 +-
 .../segment/DefaultColumnFormatsConfigTest.java    |    58 +
 .../druid/segment/DimensionHandlerUtilsTest.java   |    19 +
 .../org/apache/druid/segment/IndexBuilder.java     |     2 +-
 .../druid/segment/IndexMergerNullHandlingTest.java |     3 +-
 .../druid/segment/IndexMergerRollupTest.java       |    51 +-
 .../apache/druid/segment/IndexMergerTestBase.java  |     2 +-
 .../java/org/apache/druid/segment/ListCursor.java  |     4 +-
 .../druid/segment/NestedDataColumnIndexerTest.java |   612 -
 .../segment/NestedDataColumnIndexerV4Test.java     |   610 +
 .../druid/segment/NestedDataColumnSchemaTest.java  |   101 +
 .../SimpleDictionaryMergingIteratorTest.java       |     2 +-
 .../druid/segment/TestObjectColumnSelector.java    |     2 +-
 .../druid/segment/UnnestStorageAdapterTest.java    |   516 +-
 .../druid/segment/column/TypeStrategiesTest.java   |    10 +-
 .../druid/segment/data/FixedIndexedTest.java       |    29 +
 .../filter/ArrayContainsElementFilterTests.java    |   732 +
 .../druid/segment/filter/BaseFilterTest.java       |    84 +-
 .../druid/segment/filter/BoundFilterTest.java      |    11 +-
 .../filter/DimensionPredicateFilterTest.java       |     2 +-
 .../druid/segment/filter/EqualityFilterTests.java  |   923 +-
 .../ExpressionFilterNonStrictBooleansTest.java     |   143 +
 .../filter/ExpressionFilterStrictBooleansTest.java |    53 -
 .../druid/segment/filter/ExpressionFilterTest.java |   117 +-
 .../segment/filter/FilterCnfConversionTest.java    |     2 +-
 .../druid/segment/filter/FilterPartitionTest.java  |     8 +-
 .../apache/druid/segment/filter/InFilterTest.java  |   159 +-
 .../druid/segment/filter/LikeFilterTest.java       |   123 +-
 .../druid/segment/filter/NullFilterTest.java       |   237 -
 .../druid/segment/filter/NullFilterTests.java      |   359 +
 .../filter/PredicateValueMatcherFactoryTest.java   |   136 +-
 .../druid/segment/filter/RangeFilterTests.java     |  1112 +-
 .../druid/segment/filter/ValueMatchersTest.java    |    32 +-
 .../druid/segment/generator/DataGeneratorTest.java |   136 +-
 .../druid/segment/generator/SegmentGenerator.java  |    19 +-
 .../incremental/IncrementalIndexCreator.java       |     7 +-
 .../IncrementalIndexStorageAdapterTest.java        |   106 +-
 .../segment/incremental/IncrementalIndexTest.java  |    62 +-
 .../OnheapIncrementalIndexBenchmark.java           |    11 +-
 .../BaseHashJoinSegmentStorageAdapterTest.java     |    19 +
 .../join/HashJoinSegmentStorageAdapterTest.java    |    65 +-
 .../druid/segment/join/JoinFilterAnalyzerTest.java |     3 +-
 .../druid/segment/join/PostJoinCursorTest.java     |   264 +
 .../segment/join/lookup/LookupJoinableTest.java    |    54 +-
 .../table/BroadcastSegmentIndexedTableTest.java    |    12 +-
 .../join/table/FrameBasedIndexedTableTest.java     |    24 +-
 .../join/table/IndexedTableJoinMatcherTest.java    |    34 +-
 .../join/table/IndexedTableJoinableTest.java       |   110 +-
 .../join/table/RowBasedIndexBuilderTest.java       |   118 +-
 .../join/table/RowBasedIndexedTableTest.java       |     2 +-
 .../segment/nested/DictionaryIdLookupTest.java     |   177 +
 .../nested/NestedDataColumnSupplierTest.java       |    56 +-
 .../nested/NestedDataColumnSupplierV4Test.java     |    94 +-
 .../nested/NestedFieldColumnIndexSupplierTest.java |   385 +-
 .../segment/nested/NestedFieldTypeInfoTest.java    |    77 +
 .../nested/ScalarDoubleColumnSupplierTest.java     |    40 +-
 .../nested/ScalarLongColumnSupplierTest.java       |    40 +-
 .../nested/ScalarStringColumnSupplierTest.java     |    54 +-
 .../segment/nested/VariantColumnSupplierTest.java  |    31 +-
 .../DictionaryEncodedStringIndexSupplierTest.java  |    28 +-
 .../druid/segment/transform/TransformerTest.java   |    84 +-
 .../segment/virtual/DummyStringVirtualColumn.java  |     4 +-
 .../virtual/ExpressionVirtualColumnTest.java       |    79 +-
 .../segment/virtual/FallbackVirtualColumnTest.java |     2 +-
 .../virtual/TestObjectBasedColumnSelector.java     |    94 +
 .../druid/segment/virtual/VirtualColumnsTest.java  |    30 +-
 .../apache/druid/tasklogs/NoopTaskLogsTest.java    |     7 +
 .../druid/tasklogs/TaskPayloadManagerTest.java     |    43 +
 .../druid/timeline/SegmentStatusInClusterTest.java |     8 +-
 .../timeline/partition/TombstoneShardSpecTest.java |     2 +-
 .../test/resources/nested-all-types-test-data.json |    14 +-
 .../src/test/resources/nested-array-test-data.json |    28 +-
 .../src/test/resources/test.runtime.properties     |     1 +
 server/pom.xml                                     |    24 +-
 .../org/apache/druid/catalog/model/Columns.java    |    12 +
 .../druid/client/BrokerInternalQueryConfig.java    |    41 -
 .../org/apache/druid/client/BrokerServerView.java  |    43 +-
 .../druid/client/CachingClusteredClient.java       |    71 +-
 .../apache/druid/client/CoordinatorServerView.java |    86 +-
 .../druid/client/DirectDruidClientFactory.java     |    70 +
 .../druid/client/HttpServerInventoryView.java      |     6 +-
 .../apache/druid/client/InternalQueryConfig.java   |    41 +
 .../apache/druid/client/JsonParserIterator.java    |    11 +-
 .../org/apache/druid/client/SegmentLoadInfo.java   |    23 +
 .../apache/druid/client/cache/CacheMonitor.java    |    24 +-
 .../apache/druid/client/cache/CaffeineCache.java   |    12 +-
 .../apache/druid/client/cache/MemcachedCache.java  |    80 +-
 .../druid/client/cache/MemcachedCacheConfig.java   |    24 +
 .../MemcachedCustomConnectionFactoryBuilder.java   |    43 +-
 .../client/coordinator/CoordinatorClient.java      |    18 +-
 .../client/coordinator/CoordinatorClientImpl.java  |    56 +-
 .../ClientKillUnusedSegmentsTaskQuery.java         |     9 +-
 .../apache/druid/client/indexing/QueryStatus.java  |    12 +-
 .../druid/client/selector/ServerSelector.java      |     1 -
 .../curator/DruidConnectionStateListener.java      |     4 +-
 .../org/apache/druid/discovery/BrokerClient.java   |   125 +
 .../org/apache/druid/discovery/ClientUtils.java    |    62 +
 .../apache/druid/discovery/DataServerClient.java   |   175 +
 .../druid/discovery/DataServerResponseHandler.java |   115 +
 .../apache/druid/discovery/DruidLeaderClient.java  |    36 +-
 .../apache/druid/guice/BrokerProcessingModule.java |    11 +-
 .../druid/guice/DruidProcessingConfigModule.java   |    35 -
 .../apache/druid/guice/DruidProcessingModule.java  |    24 +-
 .../org/apache/druid/guice/ExpressionModule.java   |   102 -
 .../LegacyBrokerParallelMergeConfigModule.java     |    42 +
 .../druid/guice/QueryRunnerFactoryModule.java      |     3 -
 .../apache/druid/guice/RouterProcessingModule.java |    13 +-
 .../org/apache/druid/guice/StorageNodeModule.java  |     5 +-
 .../CoordinatorIndexingServiceDuty.java            |    36 -
 .../CoordinatorMetadataStoreManagementDuty.java    |    36 -
 .../SQLMetadataStorageUpdaterJobHandler.java       |    11 +-
 .../indexing/overlord/DataSourceMetadata.java      |     4 +-
 .../IndexerMetadataStorageCoordinator.java         |   109 +-
 .../overlord/supervisor/NoopSupervisorSpec.java    |    12 +
 .../indexing/overlord/supervisor/Supervisor.java   |    19 +
 .../druid/initialization/CoreInjectorBuilder.java  |     2 -
 .../IndexerSQLMetadataStorageCoordinator.java      |  1500 +-
 .../apache/druid/metadata/LockFilterPolicy.java    |    88 +
 .../org/apache/druid/metadata/ReplaceTaskLock.java |    80 +
 .../druid/metadata/SQLMetadataConnector.java       |   246 +-
 .../druid/metadata/SQLMetadataRuleManager.java     |     5 +-
 .../metadata/SQLMetadataSegmentPublisher.java      |    14 +-
 .../metadata/SQLMetadataStorageActionHandler.java  |    49 +-
 .../druid/metadata/SegmentsMetadataManager.java    |    45 +-
 .../java/org/apache/druid/metadata/SortOrder.java  |    66 +
 .../druid/metadata/SqlSegmentsMetadataManager.java |   187 +-
 .../SqlSegmentsMetadataManagerProvider.java        |     3 +-
 .../druid/metadata/SqlSegmentsMetadataQuery.java   |   299 +-
 .../druid/metadata/input/SqlInputSource.java       |     7 +-
 .../metadata/storage/derby/DerbyConnector.java     |    58 +-
 .../druid/query/BrokerParallelMergeConfig.java     |   215 +
 .../query/LegacyBrokerParallelMergeConfig.java     |    74 +
 .../query/lookup/LookupListeningResource.java      |     6 +-
 .../query/lookup/LookupReferencesManager.java      |   127 +-
 .../query/lookup/MapLookupExtractorFactory.java    |    11 +
 .../apache/druid/rpc/FixedSetServiceLocator.java   |    85 +
 .../org/apache/druid/rpc/ServiceClientImpl.java    |    25 +-
 .../java/org/apache/druid/rpc/ServiceLocation.java |    44 +
 .../org/apache/druid/rpc/ServiceRetryPolicy.java   |     5 +
 .../org/apache/druid/rpc/StandardRetryPolicy.java  |    38 +-
 .../apache/druid/rpc/indexing/OverlordClient.java  |    15 +-
 .../druid/rpc/indexing/OverlordClientImpl.java     |     9 +-
 .../rpc/indexing/SpecificTaskRetryPolicy.java      |     6 +
 .../rpc/indexing/SpecificTaskServiceLocator.java   |     4 +-
 .../metadata/AbstractSegmentMetadataCache.java     |  1083 +
 .../segment/metadata/AvailableSegmentMetadata.java |   161 +
 .../metadata/CoordinatorSegmentMetadataCache.java  |   151 +
 .../segment/metadata/DataSourceInformation.java    |    88 +
 .../metadata/SegmentMetadataCacheConfig.java       |    88 +
 .../SegmentMetadataQuerySegmentWalker.java         |   259 +
 .../segment/realtime/DbSegmentPublisherConfig.java |    28 -
 .../apache/druid/segment/realtime/FireHydrant.java |     9 +-
 .../segment/realtime/RealtimeMetricsMonitor.java   |    34 +-
 .../realtime/appenderator/AppenderatorImpl.java    |     4 +-
 .../realtime/appenderator/AppenderatorPlumber.java |     7 +-
 .../appenderator/BaseAppenderatorDriver.java       |     5 +-
 .../realtime/appenderator/BatchAppenderator.java   |     3 +-
 .../appenderator/BatchAppenderatorDriver.java      |     9 +-
 .../appenderator/SinkQuerySegmentWalker.java       |   146 +-
 .../realtime/appenderator/StreamAppenderator.java  |    73 +-
 .../appenderator/StreamAppenderatorDriver.java     |    18 +-
 .../TransactionalSegmentPublisher.java             |     3 -
 .../realtime/firehose/ChatHandlerResource.java     |     4 +-
 .../druid/segment/realtime/plumber/Sink.java       |    82 +-
 .../realtime/plumber/SinkSegmentReference.java     |    78 +
 .../server/AsyncManagementForwardingServlet.java   |    16 +
 .../druid/server/ClientQuerySegmentWalker.java     |   116 +-
 .../server/ClientQuerySegmentWalkerUtils.java      |    28 +
 .../java/org/apache/druid/server/DruidNode.java    |     2 +-
 .../org/apache/druid/server/QueryLifecycle.java    |     2 +-
 .../org/apache/druid/server/QueryScheduler.java    |     2 +-
 .../druid/server/SubqueryGuardrailHelper.java      |   160 +
 .../server/SubqueryGuardrailHelperProvider.java    |    68 +
 .../apache/druid/server/audit/SQLAuditManager.java |     2 +-
 .../server/coordination/DruidServerMetadata.java   |     5 +-
 .../server/coordinator/CompactionStatistics.java   |    73 -
 .../coordinator/CoordinatorCompactionConfig.java   |    36 -
 .../coordinator/CoordinatorConfigManager.java      |   130 +
 .../coordinator/CoordinatorDynamicConfig.java      |   177 +-
 .../druid/server/coordinator/DruidCoordinator.java |   391 +-
 .../server/coordinator/DruidCoordinatorConfig.java |    32 +
 .../coordinator/DruidCoordinatorRuntimeParams.java |    40 +-
 .../coordinator/KillStalePendingSegments.java      |   106 -
 .../druid/server/coordinator/MetadataManager.java  |   107 +
 .../coordinator/SegmentCountsPerInterval.java      |    25 +-
 .../druid/server/coordinator/ServerHolder.java     |    24 +-
 .../coordinator/balancer/BalancerStrategy.java     |     5 +-
 .../balancer/BalancerStrategyFactory.java          |    47 +-
 .../balancer/CachingCostBalancerStrategy.java      |     5 +
 .../CachingCostBalancerStrategyFactory.java        |    10 +-
 .../coordinator/balancer/CostBalancerStrategy.java |    14 +-
 .../balancer/CostBalancerStrategyFactory.java      |     8 +-
 ...DisabledCachingCostBalancerStrategyFactory.java |    34 +
 .../DiskNormalizedCostBalancerStrategy.java        |    21 +-
 .../DiskNormalizedCostBalancerStrategyFactory.java |     8 +-
 .../balancer/RandomBalancerStrategy.java           |     2 +-
 .../balancer/RandomBalancerStrategyFactory.java    |     6 +-
 .../balancer/SegmentToMoveCalculator.java          |   307 +
 .../coordinator/balancer/TierSegmentBalancer.java  |   112 +-
 .../compact/CompactionSegmentIterator.java         |    49 +
 .../compact/CompactionSegmentSearchPolicy.java     |    43 +
 .../coordinator/compact/CompactionStatistics.java  |    57 +
 .../coordinator/compact/CompactionStatus.java      |   352 +
 .../compact/NewestSegmentFirstIterator.java        |   551 +
 .../compact/NewestSegmentFirstPolicy.java          |    53 +
 .../coordinator/compact/SegmentsToCompact.java     |   123 +
 .../server/coordinator/duty/BalanceSegments.java   |    74 +-
 .../duty/CollectSegmentAndServerStats.java         |    74 +-
 .../server/coordinator/duty/CompactSegments.java   |    61 +-
 .../duty/CompactionSegmentIterator.java            |    51 -
 .../duty/CompactionSegmentSearchPolicy.java        |    42 -
 .../server/coordinator/duty/KillAuditLog.java      |     8 +-
 .../coordinator/duty/KillCompactionConfig.java     |    66 +-
 .../coordinator/duty/KillDatasourceMetadata.java   |     3 +-
 .../druid/server/coordinator/duty/KillRules.java   |     3 +-
 .../coordinator/duty/KillStalePendingSegments.java |   135 +
 .../server/coordinator/duty/KillSupervisors.java   |     3 +-
 .../duty/KillSupervisorsCustomDuty.java            |     1 +
 .../coordinator/duty/KillUnusedSegments.java       |    48 +-
 .../duty/MarkEternityTombstonesAsUnused.java       |   178 +
 .../coordinator/duty/MetadataCleanupDuty.java      |    21 +-
 .../duty/NewestSegmentFirstIterator.java           |   829 -
 .../coordinator/duty/NewestSegmentFirstPolicy.java |    53 -
 .../duty/PrepareBalancerAndLoadQueues.java         |   198 +
 .../coordinator/duty/UnloadUnusedSegments.java     |     2 +-
 .../coordinator/loading/LoadQueueTaskMaster.java   |    80 +-
 .../coordinator/loading/ReplicationThrottler.java  |    61 +-
 .../loading/SegmentLoadQueueManager.java           |    12 -
 .../coordinator/loading/SegmentLoadingConfig.java  |    60 +-
 .../loading/StrategicSegmentAssigner.java          |    19 +-
 .../druid/server/coordinator/rules/LoadRule.java   |    37 +-
 .../coordinator/stats/CoordinatorRunStats.java     |     2 +
 .../druid/server/coordinator/stats/Stats.java      |     8 +-
 .../http/CoordinatorCompactionConfigsResource.java |   117 +-
 .../http/CoordinatorDynamicConfigsResource.java    |    13 +-
 .../druid/server/http/DataSourcesResource.java     |    34 +-
 .../druid/server/http/HostAndPortWithScheme.java   |     2 +-
 .../apache/druid/server/http/MetadataResource.java |   184 +-
 .../druid/server/http/SegmentListerResource.java   |     7 +-
 .../druid/server/initialization/ServerConfig.java  |    10 +-
 .../server/initialization/jetty/JettyBindings.java |    11 +-
 .../initialization/jetty/JettyServerModule.java    |    16 +-
 .../lookup/cache/LookupCoordinatorManager.java     |     3 +-
 .../metrics/DruidMonitorSchedulerConfig.java       |    54 -
 .../metrics/EventReceiverFirehoseMonitor.java      |     4 +-
 .../server/metrics/HistoricalMetricsMonitor.java   |    10 +-
 .../apache/druid/server/metrics/MetricsModule.java |     1 +
 .../server/metrics/QueryCountStatsMonitor.java     |    13 +-
 .../druid/server/metrics/SegmentStatsMonitor.java  |     4 +-
 .../druid/server/metrics/ServiceStatusMonitor.java |     2 +-
 .../server/metrics/SubqueryCountStatsMonitor.java  |    89 +
 .../server/metrics/SubqueryCountStatsProvider.java |   133 +
 .../server/metrics/TaskCountStatsMonitor.java      |     4 +-
 .../server/metrics/TaskSlotCountStatsMonitor.java  |     2 +-
 .../metrics/WorkerTaskCountStatsMonitor.java       |     2 +-
 .../druid/server/security/AuthorizationUtils.java  |    18 +
 .../catalog/model/table/ExternalTableTest.java     |     2 +
 .../model/table/HttpInputSourceDefnTest.java       |     8 +
 .../model/table/LocalInputSourceDefnTest.java      |     7 +-
 .../client/BrokerInternalQueryConfigTest.java      |   121 -
 .../apache/druid/client/BrokerServerViewTest.java  |     9 +-
 .../CachingClusteredClientFunctionalityTest.java   |    19 +-
 .../client/CachingClusteredClientPerfTest.java     |     6 +-
 .../druid/client/CachingClusteredClientTest.java   |   243 +-
 .../druid/client/CoordinatorServerViewTest.java    |   148 +-
 .../druid/client/InternalQueryConfigTest.java      |   121 +
 .../druid/client/JsonParserIteratorTest.java       |    54 +-
 .../druid/client/cache/MemcachedCacheTest.java     |    87 +-
 .../coordinator/CoordinatorClientImplTest.java     |   135 +-
 .../client/coordinator/NoopCoordinatorClient.java  |    17 +-
 .../druid/client/indexing/NoopOverlordClient.java  |     5 +-
 .../curator/DruidConnectionStateListenerTest.java  |    63 +-
 .../apache/druid/discovery/BrokerClientTest.java   |   154 +
 .../druid/discovery/DataServerClientTest.java      |   119 +
 .../druid/discovery/DruidLeaderClientTest.java     |     3 +-
 .../druid/guice/BrokerProcessingModuleTest.java    |    95 +-
 .../apache/druid/guice/QueryableModuleTest.java    |     2 +-
 .../druid/indexing/NoopSupervisorSpecTest.java     |    18 +
 .../IndexerSQLMetadataStorageCoordinatorTest.java  |  1171 +-
 .../apache/druid/metadata/ReplaceTaskLockTest.java |    36 +
 .../druid/metadata/SQLMetadataConnectorTest.java   |    44 +-
 .../SQLMetadataStorageActionHandlerTest.java       |    44 +-
 .../org/apache/druid/metadata/SortOrderTest.java   |    60 +
 .../SqlSegmentsMetadataManagerProviderTest.java    |    80 +
 .../metadata/SqlSegmentsMetadataManagerTest.java   |   131 +-
 .../apache/druid/metadata/TestDerbyConnector.java  |    26 +
 .../QueryRunnerBasedOnClusteredClientTestBase.java |     8 +-
 .../LookupEnabledTestExprMacroTable.java           |    11 +
 .../query/expression/LookupExprMacroTest.java      |     7 +-
 .../query/lookup/LookupReferencesManagerTest.java  |   137 +-
 .../lookup/RegisteredLookupExtractionFnTest.java   |    10 +
 .../druid/rpc/FixedSetServiceLocatorTest.java      |    63 +
 .../org/apache/druid/rpc/ServiceLocationTest.java  |    41 +
 .../druid/rpc/indexing/OverlordClientImplTest.java |    21 +-
 ...CoordinatorSegmentDataCacheConcurrencyTest.java |   529 +
 .../CoordinatorSegmentMetadataCacheCommon.java     |    79 +
 .../CoordinatorSegmentMetadataCacheConfigTest.java |    92 +
 .../CoordinatorSegmentMetadataCacheTest.java       |  1224 +
 .../metadata/SegmentMetadataCacheCommon.java       |   329 +
 .../SegmentMetadataQuerySegmentWalkerTest.java     |   441 +
 .../metadata/TestCoordinatorServerView.java        |   237 +
 .../metadata/TestSegmentMetadataQueryWalker.java   |   121 +
 .../druid/segment/realtime/FireHydrantTest.java    |    16 +
 .../realtime/RealtimeMetricsMonitorTest.java       |   107 +
 ...edSegmentsSinksBatchAppenderatorDriverTest.java |     6 +-
 ...dClosedSegmentsBatchAppenderatorDriverTest.java |     6 +-
 .../StreamAppenderatorDriverFailTest.java          |     4 +-
 .../appenderator/StreamAppenderatorDriverTest.java |     4 +-
 .../realtime/firehose/ChatHandlerResourceTest.java |    56 +
 .../druid/segment/realtime/plumber/SinkTest.java   |    79 +
 .../AsyncManagementForwardingServletTest.java      |    15 +
 .../druid/server/ClientQuerySegmentWalkerTest.java |    95 +-
 .../org/apache/druid/server/QueryResourceTest.java |    83 +
 .../apache/druid/server/QueryResultPusherTest.java |   161 +
 .../apache/druid/server/QuerySchedulerTest.java    |     6 -
 .../org/apache/druid/server/QueryStackTests.java   |    51 +-
 .../server/SpecificSegmentsQuerySegmentWalker.java |   193 +
 .../druid/server/SubqueryGuardrailHelperTest.java  |   160 +
 .../coordination/ChangeRequestHistoryTest.java     |     7 +-
 .../coordinator/BalanceSegmentsProfiler.java       |    11 +-
 .../coordinator/CuratorDruidCoordinatorTest.java   |    11 +-
 .../server/coordinator/DruidCoordinatorTest.java   |   137 +-
 .../druid/server/coordinator/ServerHolderTest.java |     2 -
 .../coordinator/TestDruidCoordinatorConfig.java    |    64 +-
 .../balancer/BalancerStrategyFactoryTest.java      |    66 +
 .../balancer/CostBalancerStrategyTest.java         |    17 +-
 .../balancer/SegmentToMoveCalculatorTest.java      |   236 +
 .../compact/NewestSegmentFirstIteratorTest.java    |   468 +
 .../compact/NewestSegmentFirstPolicyTest.java      |  1952 +
 .../coordinator/duty/BalanceSegmentsTest.java      |    80 +-
 .../duty/CollectSegmentAndServerStatsTest.java     |    26 +-
 .../coordinator/duty/CompactSegmentsTest.java      |    10 +-
 .../server/coordinator/duty/KillAuditLogTest.java  |     8 +-
 .../coordinator/duty/KillCompactionConfigTest.java |    33 +-
 .../duty/KillStalePendingSegmentsTest.java         |   264 +
 .../coordinator/duty/KillUnusedSegmentsTest.java   |   144 +-
 .../duty/MarkEternityTombstonesAsUnusedTest.java   |   501 +
 .../duty/MarkOvershadowedSegmentsAsUnusedTest.java |     4 +-
 .../duty/NewestSegmentFirstIteratorTest.java       |   468 -
 .../duty/NewestSegmentFirstPolicyTest.java         |  1869 -
 .../server/coordinator/duty/RunRulesTest.java      |    35 +-
 .../coordinator/duty/UnloadUnusedSegmentsTest.java |     4 +-
 .../loading/ReplicationThrottlerTest.java          |    70 +
 .../rules/BroadcastDistributionRuleTest.java       |     4 +-
 .../server/coordinator/rules/LoadRuleTest.java     |    15 +-
 .../coordinator/rules/PeriodLoadRuleTest.java      |     1 +
 .../simulate/CoordinatorSimulationBaseTest.java    |     2 +-
 .../simulate/CoordinatorSimulationBuilder.java     |    46 +-
 .../coordinator/simulate/SegmentBalancingTest.java |    37 +
 .../simulate/TestSegmentsMetadataManager.java      |    31 +-
 .../CoordinatorCompactionConfigsResourceTest.java  |    97 +-
 .../server/http/CoordinatorDynamicConfigTest.java  |   128 +-
 .../druid/server/http/DataSourcesResourceTest.java |     8 +-
 .../druid/server/http/MetadataResourceTest.java    |   352 +-
 .../druid/server/initialization/JettyQosTest.java  |    59 +
 .../jetty/JettyServerModuleTest.java               |    48 +-
 .../server/log/ServiceMetricEventSerdeTest.java    |     3 +-
 .../lookup/cache/LookupCoordinatorManagerTest.java |    43 +-
 .../metrics/HistoricalMetricsMonitorTest.java      |    69 +-
 .../server/metrics/QueryCountStatsMonitorTest.java |    57 +-
 .../server/metrics/SegmentStatsMonitorTest.java    |     4 +-
 .../server/security/AuthorizationUtilsTest.java    |     9 +
 services/pom.xml                                   |    12 +-
 .../main/java/org/apache/druid/cli/CliBroker.java  |    13 +-
 .../java/org/apache/druid/cli/CliCoordinator.java  |   168 +-
 .../main/java/org/apache/druid/cli/CliPeon.java    |    23 +-
 .../java/org/apache/druid/cli/CreateTables.java    |     1 +
 .../java/org/apache/druid/cli/DumpSegment.java     |    40 +-
 .../org/apache/druid/cli/ValidateSegments.java     |    40 +-
 .../druid/server/AsyncQueryForwardingServlet.java  |    35 +-
 .../java/org/apache/druid/cli/CliPeonTest.java     |    21 +-
 .../org/apache/druid/cli/CreateTablesTest.java     |    97 +
 .../java/org/apache/druid/cli/DumpSegmentTest.java |   112 +-
 .../org/apache/druid/cli/ValidateSegmentsTest.java |   117 +
 .../server/AsyncQueryForwardingServletTest.java    |   180 +-
 services/src/test/resources/nested-test-aggs.json  |     6 -
 .../src/test/resources/nested-test-parser.json     |    20 -
 sql/pom.xml                                        |     2 +-
 sql/src/main/codegen/config.fmpp                   |     4 +
 sql/src/main/codegen/includes/from.ftl             |     2 +-
 sql/src/main/codegen/includes/insert.ftl           |    59 +-
 sql/src/main/codegen/includes/replace.ftl          |     5 +-
 .../sql/type/CastedLiteralOperandTypeChecker.java  |    92 +
 .../sql/type/CastedLiteralOperandTypeCheckers.java |   159 +
 .../org/apache/druid/sql/SqlExecutionReporter.java |     6 +-
 .../apache/druid/sql/avatica/AvaticaMonitor.java   |     4 +-
 .../sql/calcite/aggregation/Aggregations.java      |    15 +-
 .../ApproxCountDistinctSqlAggregator.java          |    12 +-
 .../sql/calcite/aggregation/SqlAggregator.java     |    46 +-
 .../builtin/ArrayConcatSqlAggregator.java          |    20 +-
 .../aggregation/builtin/ArraySqlAggregator.java    |    25 +-
 .../aggregation/builtin/AvgSqlAggregator.java      |    27 +-
 .../aggregation/builtin/BitwiseSqlAggregator.java  |    12 +-
 .../BuiltinApproxCountDistinctSqlAggregator.java   |    23 +-
 .../aggregation/builtin/CountSqlAggregator.java    |    30 +-
 .../builtin/EarliestLatestAnySqlAggregator.java    |   190 +-
 .../builtin/EarliestLatestBySqlAggregator.java     |    45 +-
 .../aggregation/builtin/GroupingSqlAggregator.java |    23 +-
 .../aggregation/builtin/LiteralSqlAggregator.java  |    12 +-
 .../aggregation/builtin/SimpleSqlAggregator.java   |    12 +-
 .../aggregation/builtin/StringSqlAggregator.java   |    29 +-
 .../aggregation/builtin/SumSqlAggregator.java      |    11 +-
 .../expression/BasicOperandTypeChecker.java        |   229 -
 .../expression/DefaultOperandTypeChecker.java      |   260 +
 .../sql/calcite/expression/DruidExpression.java    |     5 +
 .../druid/sql/calcite/expression/Expressions.java  |    78 +-
 .../calcite/expression/OperatorConversions.java    |   218 +-
 .../expression/UnarySuffixOperatorConversion.java  |    64 -
 .../sql/calcite/expression/WindowSqlAggregate.java |     8 +-
 .../builtin/ArrayContainsOperatorConversion.java   |    51 +-
 .../builtin/ArrayOverlapOperatorConversion.java    |    80 +-
 .../ArrayToMultiValueStringOperatorConversion.java |     2 -
 .../ComplexDecodeBase64OperatorConversion.java     |    12 +-
 .../builtin/DecodeBase64UTFOperatorConversion.java |    52 +
 .../IPv6AddressMatchOperatorConversion.java        |    64 +
 .../builtin/NestedDataOperatorConversions.java     |    64 +-
 .../builtin/QueryLookupOperatorConversion.java     |    25 +-
 .../builtin/RoundOperatorConversion.java           |    36 +-
 .../druid/sql/calcite/external/ExtendOperator.java |     6 +-
 .../druid/sql/calcite/external/Externals.java      |     2 +
 .../sql/calcite/filtration/BottomUpTransform.java  |    18 +
 .../druid/sql/calcite/filtration/Bounds.java       |     2 +-
 .../druid/sql/calcite/filtration/Filtration.java   |     4 +-
 .../calcite/filtration/RemoveRedundantIsTrue.java  |   100 +
 .../druid/sql/calcite/planner/CalcitePlanner.java  |     3 +-
 .../sql/calcite/planner/CalcitePlannerModule.java  |     3 +-
 .../sql/calcite/planner/CalciteRulesManager.java   |    11 +-
 .../apache/druid/sql/calcite/planner/Calcites.java |     9 +-
 .../sql/calcite/planner/DruidOperatorTable.java    |    41 +-
 .../druid/sql/calcite/planner/DruidPlanner.java    |     7 +-
 .../sql/calcite/planner/DruidSqlValidator.java     |    53 +-
 .../druid/sql/calcite/planner/DruidTypeSystem.java |     8 +-
 .../druid/sql/calcite/planner/OffsetLimit.java     |    14 +
 .../sql/calcite/planner/PlannerCaptureHook.java    |    78 -
 .../druid/sql/calcite/planner/PlannerContext.java  |    14 +-
 .../druid/sql/calcite/planner/PlannerFactory.java  |     7 +-
 .../druid/sql/calcite/planner/PlannerHook.java     |     6 +
 .../druid/sql/calcite/planner/QueryHandler.java    |     2 +-
 .../planner/SegmentMetadataCacheConfig.java        |   100 -
 .../planner/convertlet/DruidConvertletTable.java   |     3 +
 .../TimeInIntervalConvertletFactory.java           |    12 +-
 .../sql/calcite/rel/DruidCorrelateUnnestRel.java   |     5 +-
 .../druid/sql/calcite/rel/DruidOuterQueryRel.java  |     9 +-
 .../apache/druid/sql/calcite/rel/DruidQuery.java   |   185 +-
 .../apache/druid/sql/calcite/rel/DruidRels.java    |     2 +-
 .../sql/calcite/rel/DruidUnionDataSourceRel.java   |     2 +-
 .../druid/sql/calcite/rel/InputAccessor.java       |   108 +
 .../apache/druid/sql/calcite/rel/Projection.java   |     1 +
 .../sql/calcite/rel/VirtualColumnRegistry.java     |    27 +
 .../apache/druid/sql/calcite/rel/Windowing.java    |    16 +-
 .../sql/calcite/rule/DruidCorrelateUnnestRule.java |     1 +
 .../druid/sql/calcite/rule/DruidJoinRule.java      |   433 +-
 .../sql/calcite/rule/DruidLogicalValuesRule.java   |     5 +
 .../apache/druid/sql/calcite/rule/DruidRules.java  |     8 +-
 .../druid/sql/calcite/rule/DruidSortUnionRule.java |     3 +-
 .../sql/calcite/rule/DruidUnionDataSourceRule.java |     7 +-
 .../druid/sql/calcite/rule/DruidUnionRule.java     |     5 +
 .../druid/sql/calcite/rule/GroupByRules.java       |    15 +-
 .../logical/DruidAggregateCaseToFilterRule.java    |   339 -
 .../druid/sql/calcite/run/EngineFeature.java       |    18 +-
 .../druid/sql/calcite/run/NativeSqlEngine.java     |     1 +
 .../calcite/schema/AvailableSegmentMetadata.java   |   162 -
 .../calcite/schema/BrokerSegmentMetadataCache.java |   257 +
 .../schema/BrokerSegmentMetadataCacheConfig.java   |   107 +
 .../calcite/schema/DruidCalciteSchemaModule.java   |     5 +-
 .../druid/sql/calcite/schema/DruidSchema.java      |    18 +-
 .../sql/calcite/schema/MetadataSegmentView.java    |    32 +-
 .../schema/PhysicalDatasourceMetadataFactory.java  |    78 +
 .../sql/calcite/schema/SegmentMetadataCache.java   |  1124 -
 .../druid/sql/calcite/schema/SystemSchema.java     |    63 +-
 .../druid/sql/calcite/table/DatasourceTable.java   |    37 +-
 .../druid/sql/calcite/table/RowSignatures.java     |     3 +
 .../druid/sql/calcite/view/ViewSqlEngine.java      |     2 +-
 .../druid/query/OperatorFactoryBuilders.java       |   102 +
 .../druid/query/WindowOperatorQueryBuilder.java    |    91 +
 .../org/apache/druid/sql/SqlStatementTest.java     |     2 +-
 .../druid/sql/avatica/DruidAvaticaHandlerTest.java |     2 +-
 .../druid/sql/avatica/DruidStatementTest.java      |     2 +-
 .../druid/sql/calcite/BaseCalciteQueryTest.java    |   409 +-
 .../druid/sql/calcite/CalciteArraysQueryTest.java  |  7645 ++--
 .../sql/calcite/CalciteCorrelatedQueryTest.java    |    13 +-
 .../druid/sql/calcite/CalciteInsertDmlTest.java    |     9 +
 .../druid/sql/calcite/CalciteJoinQueryTest.java    |   838 +-
 .../calcite/CalciteMultiValueStringQueryTest.java  |    49 +-
 .../sql/calcite/CalciteNestedDataQueryTest.java    |   695 +-
 .../sql/calcite/CalciteParameterQueryTest.java     |    43 +-
 .../apache/druid/sql/calcite/CalciteQueryTest.java |  2227 +-
 .../druid/sql/calcite/CalciteReplaceDmlTest.java   |     5 +-
 .../druid/sql/calcite/CalciteSelectQueryTest.java  |   218 +-
 .../druid/sql/calcite/CalciteSimpleQueryTest.java  |    52 +
 .../druid/sql/calcite/CalciteSubqueryTest.java     |   117 +-
 .../druid/sql/calcite/CalciteSysQueryTest.java     |   102 +
 .../druid/sql/calcite/CalciteUnionQueryTest.java   |   405 +
 .../druid/sql/calcite/CalciteWindowQueryTest.java  |   245 +-
 .../calcite/DecoupledPlanningCalciteQueryTest.java |   329 +-
 .../apache/druid/sql/calcite/DisableUnless.java    |    55 +
 .../druid/sql/calcite/DrillWindowQueryTest.java    |  7770 +++-
 .../druid/sql/calcite/IngestTableFunctionTest.java |    20 +-
 .../druid/sql/calcite/IngestionTestSqlEngine.java  |     2 +
 .../apache/druid/sql/calcite/NotYetSupported.java  |   165 +
 .../apache/druid/sql/calcite/QueryTestBuilder.java |    19 +-
 .../apache/druid/sql/calcite/QueryTestRunner.java  |    34 +-
 .../druid/sql/calcite/QueryVerification.java       |     9 +-
 .../druid/sql/calcite/SqlTestFrameworkConfig.java  |   125 +
 .../calcite/SqlVectorizedExpressionSanityTest.java |     5 +-
 .../calcite/expression/ExpressionTestHelper.java   |     2 +-
 .../expression/OperatorConversionsTest.java        |    33 +-
 .../calcite/planner/CalcitePlannerModuleTest.java  |     9 +-
 .../druid/sql/calcite/planner/CalcitesTest.java    |    16 +
 .../sql/calcite/planner/PlannerCaptureHook.java    |    93 +
 .../planner/SegmentMetadataCacheConfigTest.java    |    96 -
 .../druid/sql/calcite/rule/DruidJoinRuleTest.java  |    74 +-
 .../calcite/rule/DruidLogicalValuesRuleTest.java   |    44 +-
 .../schema/BrokerSegmentMetadataCacheCommon.java   |   100 +
 .../BrokerSegmentMetadataCacheConcurrencyTest.java |   503 +
 .../BrokerSegmentMetadataCacheConfigTest.java      |    94 +
 .../schema/BrokerSegmentMetadataCacheTest.java     |  1011 +
 .../schema/DruidCalciteSchemaModuleTest.java       |     3 +
 .../calcite/schema/DruidSchemaNoDataInitTest.java  |    23 +-
 .../PhysicalDataSourceMetadataFactoryTest.java     |   116 +
 .../schema/SegmentDataCacheConcurrencyTest.java    |   500 -
 .../calcite/schema/SegmentMetadataCacheCommon.java |   129 -
 .../calcite/schema/SegmentMetadataCacheTest.java   |  1515 -
 .../druid/sql/calcite/schema/SystemSchemaTest.java |    37 +-
 .../calcite/util/CalciteTestInjectorBuilder.java   |    16 +-
 .../druid/sql/calcite/util/CalciteTests.java       |    60 +-
 .../sql/calcite/util/QueryFrameworkUtils.java      |    59 +-
 .../util/SpecificSegmentsQuerySegmentWalker.java   |   196 -
 .../druid/sql/calcite/util/SqlTestFramework.java   |     5 +-
 .../druid/sql/calcite/util/TestDataBuilder.java    |     5 +-
 .../sql/calcite/util/TestServerInventoryView.java  |   219 -
 .../sql/calcite/util/TestTimelineServerView.java   |   219 +
 .../org/apache/druid/sql/guice/SqlModuleTest.java  |     3 +
 .../org/apache/druid/sql/http/SqlResourceTest.java |     6 +-
 .../calcite/tests/window/aggregateConstant.sqlTest |    26 +
 .../calcite/tests/window/lead_lag.sqlTest          |    50 +
 .../calcite/tests/window/no_grouping.sqlTest       |    29 +
 .../calcite/tests/window/no_grouping2.sqlTest      |    26 +
 .../tests/window/offsetNotDiscarded.sqlTest        |    31 +
 .../calcite/tests/window/orderByDescNulls.sqlTest  |    45 +
 .../calcite/tests/window/simpleSum.sqlTest         |     2 +-
 .../calcite/tests/window/virtualColumns.sqlTest    |    33 +
 .../wikipediaAggregationsMultipleOrdering.sqlTest  |    50 +-
 ...kipediaAggregationsMultipleOrderingDesc.sqlTest |  1004 +-
 .../window/wikipediaCumulativeOrdered.sqlTest      |  1976 +-
 .../window/wikipediaFramedAggregations.sqlTest     |    50 +-
 .../tests/window/wikipediaScanWindow.sqlTest       |   496 +-
 .../tests/window/wikipediaSimplePartition.sqlTest  |  1976 +-
 .../wikipediaSimplePartitionInitialSort.sqlTest    |  1976 +-
 .../tests/window/windowed_long_null.sqlTest        |    42 +
 .../window/datasources/allTypsUniq.parquet.json    |    44 +-
 .../window/datasources/fewRowsAllData.parquet.json |   156 +-
 .../window/datasources/forViewCrn.parquet.json     |    60 +-
 .../drill/window/datasources/smlTbl.parquet.json   |   112 +-
 .../window/datasources/t_alltype.parquet.json      |   284 +-
 .../drill/window/queries/aggregates/aggOWnFn_3.q   |     2 +-
 .../drill/window/queries/aggregates/aggOWnFn_4.q   |     2 +-
 .../window/queries/aggregates/wPrtnOrdrBy_1.q      |     2 +-
 .../window/queries/aggregates/wPrtnOrdrBy_10.q     |     2 +-
 .../window/queries/aggregates/wPrtnOrdrBy_4.q      |     2 +-
 .../window/queries/aggregates/wPrtnOrdrBy_6.q      |     2 +-
 .../window/queries/aggregates/wPrtnOrdrBy_8.q      |     2 +-
 .../drill/window/queries/aggregates/winFnQry_76.q  |     2 +-
 .../drill/window/queries/aggregates/winFnQry_77.q  |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_1.q  |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_10.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_11.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_12.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_13.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_14.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_15.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_16.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_17.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_18.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_19.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_2.q  |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_20.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_21.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_22.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_23.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_24.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_25.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_26.q |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_3.q  |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_4.q  |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_5.q  |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_6.q  |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_7.q  |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_8.q  |     2 +-
 .../drill/window/queries/aggregates/wo_OrdrBy_9.q  |     2 +-
 .../drill/window/queries/first_val/firstValFn_18.q |     2 +-
 .../drill/window/queries/first_val/firstValFn_19.q |     2 +-
 .../drill/window/queries/first_val/firstValFn_21.q |     2 +-
 .../drill/window/queries/first_val/firstValFn_22.q |     2 +-
 .../drill/window/queries/first_val/firstValFn_24.q |     2 +-
 .../drill/window/queries/first_val/firstValFn_25.q |     2 +-
 .../drill/window/queries/first_val/firstValFn_32.q |     2 +-
 .../frameclause/subQueries/frmInSubQry_26.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_27.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_28.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_41.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_42.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_43.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_44.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_45.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_46.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_47.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_48.q        |     2 +-
 .../frameclause/subQueries/frmInSubQry_49.q        |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_100.q     |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_102.q     |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_103.q     |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_109.q     |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_111.q     |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_112.q     |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_17.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_41.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_42.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_45.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_62.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_63.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_64.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_65.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_70.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_71.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_77.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_96.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_97.q      |     2 +-
 .../drill/window/queries/lag_func/lag_Fn_99.q      |     2 +-
 .../drill/window/queries/last_val/lastValFn_18.q   |     2 +-
 .../drill/window/queries/last_val/lastValFn_19.q   |     2 +-
 .../drill/window/queries/last_val/lastValFn_21.q   |     2 +-
 .../drill/window/queries/last_val/lastValFn_22.q   |     2 +-
 .../drill/window/queries/last_val/lastValFn_24.q   |     2 +-
 .../drill/window/queries/last_val/lastValFn_25.q   |     2 +-
 .../drill/window/queries/last_val/lastValFn_33.q   |     2 +-
 .../drill/window/queries/last_val/lastValFn_37.q   |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_104.q   |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_106.q   |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_107.q   |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_17.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_27.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_36.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_45.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_63.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_64.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_65.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_70.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_71.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_8.q     |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_9.q     |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_91.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_92.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_94.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_95.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_97.q    |     2 +-
 .../drill/window/queries/lead_func/lead_Fn_98.q    |     2 +-
 .../drill/window/queries/nestedAggs/cte_win_01.q   |     2 +-
 .../drill/window/queries/nestedAggs/cte_win_02.q   |     2 +-
 .../drill/window/queries/nestedAggs/cte_win_03.q   |     2 +-
 .../drill/window/queries/nestedAggs/cte_win_04.q   |     2 +-
 .../drill/window/queries/nestedAggs/multiWin_5.e   |     8 +-
 .../drill/window/queries/ntile_func/ntileFn_57.q   |     2 +-
 .../drill/window/queries/ntile_func/ntileFn_58.q   |     2 +-
 web-console/e2e-tests/auto-compaction.spec.ts      |     2 +-
 .../e2e-tests/component/load-data/data-loader.ts   |     8 +
 .../e2e-tests/component/workbench/overview.ts      |     2 +-
 web-console/e2e-tests/multi-stage-query.spec.ts    |     3 +-
 web-console/e2e-tests/reindexing.spec.ts           |     2 +-
 web-console/e2e-tests/tutorial-batch.spec.ts       |     4 +-
 web-console/e2e-tests/util/debug.ts                |    11 +-
 web-console/e2e-tests/util/playwright.ts           |    23 +-
 web-console/package-lock.json                      | 36977 +++++++------------
 web-console/package.json                           |    42 +-
 web-console/pom.xml                                |     4 +-
 web-console/src/components/auto-form/auto-form.tsx |    11 +-
 .../fancy-numeric-input/fancy-numeric-input.tsx    |    18 +-
 .../components/formatted-input/formatted-input.tsx |     2 +
 .../query-error-pane/query-error-pane.tsx          |     6 +-
 .../src/components/rule-editor/rule-editor.tsx     |     6 +-
 .../src/components/table-cell/table-cell.scss      |     1 +
 web-console/src/console-application.scss           |     2 +-
 .../compaction-config-dialog.spec.tsx.snap         |    44 +
 web-console/src/dialogs/index.ts                   |     1 +
 .../kill-datasource-dialog.tsx                     |     2 +-
 .../__snapshots__/lookup-edit-dialog.spec.tsx.snap |    27 +
 .../supervisor-reset-offsets-dialog.scss           |    32 +
 .../supervisor-reset-offsets-dialog.tsx            |   136 +
 .../druid-models/async-query/async-query.mock.ts   |    16 +-
 .../compaction-config/compaction-config.tsx        |     9 +
 .../coordinator-dynamic-config.mock.ts             |     4 +-
 .../coordinator-dynamic-config.tsx                 |    76 +-
 .../src/druid-models/execution/execution.spec.ts   |     3 +
 .../src/druid-models/execution/execution.ts        |    51 +
 web-console/src/druid-models/index.ts              |     1 -
 .../ingest-query-pattern.spec.ts                   |    16 +-
 .../druid-models/ingestion-spec/ingestion-spec.tsx |   106 +-
 .../src/druid-models/input-format/input-format.tsx |    28 +-
 .../src/druid-models/input-source/input-source.tsx |     3 +
 .../src/druid-models/lookup-spec/lookup-spec.tsx   |    33 +
 .../druid-models/query-context/query-context.tsx   |    16 +
 web-console/src/druid-models/stages/stages.ts      |     3 +-
 .../workbench-query/workbench-query-part.ts        |   261 -
 .../workbench-query/workbench-query.spec.ts        |   156 +-
 .../workbench-query/workbench-query.ts             |   431 +-
 web-console/src/helpers/capabilities.ts            |     6 +-
 web-console/src/helpers/capacity.ts                |    13 +-
 .../src/helpers/execution/sql-task-execution.ts    |    33 +-
 web-console/src/hooks/index.ts                     |     1 +
 web-console/src/hooks/use-resize-observer.ts       |    80 +
 web-console/src/links.ts                           |     4 +-
 .../src/singletons/ace-editor-state-cache.ts       |     6 +-
 .../src/singletons/execution-state-cache.ts        |     6 -
 .../src/singletons/workbench-running-promises.ts   |     8 +-
 web-console/src/utils/download.ts                  |    24 +-
 web-console/src/utils/druid-query.spec.ts          |    39 +-
 web-console/src/utils/druid-query.ts               |    38 +-
 web-console/src/utils/general.spec.ts              |    17 +-
 web-console/src/utils/general.tsx                  |    26 +-
 web-console/src/utils/index.tsx                    |     1 -
 web-console/src/utils/load-rule.ts                 |    16 +-
 .../src/utils/local-storage-backed-visibility.tsx  |     4 +-
 web-console/src/utils/query-cursor.ts              |    60 -
 web-console/src/utils/sample-query.spec.tsx        |     8 +-
 web-console/src/utils/sql.spec.ts                  |   355 +
 web-console/src/utils/sql.ts                       |    86 +-
 web-console/src/utils/types.ts                     |     3 +
 .../views/datasources-view/datasources-view.tsx    |     4 +-
 .../droppable-container/droppable-container.scss   |     1 +
 .../src/views/explore-view/explore-view.tsx        |   264 +-
 .../explore-view/filter-pane/pattern-helpers.ts    |    17 +-
 .../highlight-bubble/highlight-bubble.scss         |    47 +
 .../highlight-bubble/highlight-bubble.tsx          |    80 +
 .../highlight-store/highlight-store.ts             |   105 +
 .../modules/bar-chart-echarts-module.ts            |    61 +-
 .../modules/multi-axis-chart-echarts-module.ts     |   135 +-
 .../modules/pie-chart-echarts-module.ts            |   107 +-
 .../explore-view/modules/table-react-module.tsx    |    54 +-
 .../modules/time-chart-echarts-module.ts           |   220 +-
 .../views/explore-view/modules/utils/utils.spec.ts |    58 +
 .../src/views/explore-view/modules/utils/utils.ts  |    46 +
 web-console/src/views/explore-view/utils.ts        |    75 -
 .../src/views/explore-view/utils/date-format.ts    |    27 +
 .../explore-view/utils/get-auto-granularity.ts     |    82 +
 web-console/src/views/explore-view/utils/index.ts  |    22 +
 web-console/src/views/explore-view/utils/misc.ts   |    75 +
 .../explore-view/utils/snap-to-granularity.ts      |    57 +
 .../src/views/load-data-view/load-data-view.tsx    |    37 +-
 .../column-editor/column-editor.tsx                |     1 -
 .../expression-editor-dialog.tsx                   |     1 -
 .../schema-step/schema-step.tsx                    |     6 +-
 .../views/supervisors-view/supervisors-view.tsx    |    25 +-
 web-console/src/views/tasks-view/tasks-view.tsx    |    76 +-
 .../string-menu-items/string-menu-items.tsx        |    12 +-
 .../src/views/workbench-view/demo-queries.ts       |     2 +-
 .../execution-details-pane.spec.tsx.snap           |     5 +
 .../execution-details-pane.tsx                     |    32 +-
 .../execution-progress-bar-pane.spec.tsx.snap      |     3 +
 .../execution-progress-bar-pane.tsx                |     4 +
 .../execution-stages-pane.tsx                      |     2 +-
 .../execution-summary-panel.tsx                    |     9 +
 .../flexible-query-input.spec.tsx.snap             |     2 +-
 .../flexible-query-input/flexible-query-input.scss |    44 +
 .../flexible-query-input.spec.tsx                  |     6 +-
 .../flexible-query-input/flexible-query-input.tsx  |   167 +-
 .../workbench-view/helper-query/helper-query.scss  |   100 -
 .../workbench-view/helper-query/helper-query.tsx   |   473 -
 .../ingest-success-pane.spec.tsx.snap              |     1 +
 .../ingest-success-pane/ingest-success-pane.tsx    |     6 +-
 .../input-source-step/input-source-step.tsx        |    37 +-
 .../query-parameters-dialog.spec.tsx.snap          |   457 +
 .../query-parameters-dialog.scss                   |    28 +
 .../query-parameters-dialog.spec.tsx               |    42 +
 .../query-parameters-dialog.tsx                    |   152 +
 .../views/workbench-view/query-tab/query-tab.scss  |    41 +-
 .../views/workbench-view/query-tab/query-tab.tsx   |   123 +-
 .../views/workbench-view/run-panel/run-panel.tsx   |    38 +-
 .../src/views/workbench-view/workbench-view.tsx    |    11 +-
 web-console/unified-console.html                   |     2 +-
 web-console/webpack.config.js                      |    27 +-
 website/.gitignore                                 |     3 -
 website/.spelling                                  |    65 +-
 website/README.md                                  |     2 +-
 website/core/Footer.js                             |    82 -
 website/docusaurus.config.js                       |   162 +
 website/package-lock.json                          | 28707 +++++---------
 website/package.json                               |    17 +-
 website/pages/en/index.js                          |    29 -
 website/pom.xml                                    |   127 -
 website/redirects.js                               |   324 +
 website/redirects.json                             |   219 -
 website/script/build-to-docs                       |    58 -
 website/script/do-redirects.js                     |    99 -
 website/script/fix-docsearch.js                    |    45 -
 website/script/fix-path.js                         |    83 -
 website/script/link-lint.js                        |    91 -
 website/scss/custom.scss                           |   112 -
 website/sidebars.json                              |   170 +-
 website/siteConfig.js                              |   128 -
 website/src/css/customTheme.css                    |    29 +
 website/src/pages/community/cla.md                 |    25 +
 website/src/pages/community/index.mdx              |    27 +
 website/src/pages/community/join-slack.md          |    24 +
 website/src/pages/downloads.md                     |    23 +
 website/src/pages/druid-powered.md                 |    24 +
 website/src/pages/faq.md                           |    24 +
 website/src/pages/index.mdx                        |    24 +
 website/src/pages/libraries.md                     |    26 +
 website/src/pages/licensing.md                     |    26 +
 website/src/pages/technology.md                    |    25 +
 website/src/pages/use-cases.md                     |    25 +
 website/static/css/custom.css                      |    12 -
 website/static/js/code-block-buttons.js            |     2 +-
 2358 files changed, 151914 insertions(+), 93749 deletions(-)
 rename .github/{workflows => config}/codeql-config.yml (100%)
 delete mode 100644 codestyle/guava16-forbidden-apis.txt
 create mode 100644 doap_Druid.rdf
 create mode 100644 docs/assets/druid-architecture.svg
 create mode 100644 docs/data-management/manual-compaction.md
 delete mode 100644 docs/design/processes.md
 create mode 100644 docs/design/storage.md
 delete mode 100644 docs/operations/getting-started.md
 create mode 100644 docs/querying/arrays.md
 create mode 100644 docs/querying/query-processing.md
 create mode 100644 docs/querying/sql-window-functions.md
 create mode 100644 docs/querying/tips-good-queries.md
 create mode 100644 docs/release-info/release-notes.md
 create mode 100644 docs/release-info/upgrade-notes.md
 delete mode 100644 docs/tutorials/tutorial-jupyter-docker.md
 create mode 100644 examples/quickstart/jupyter-notebooks/notebooks/02-ingestion/02-working-with-nested-columns.ipynb
 create mode 100644 examples/quickstart/jupyter-notebooks/notebooks/03-query/02-approxRanking.ipynb
 create mode 100644 examples/quickstart/jupyter-notebooks/notebooks/03-query/04-UnionOperations.ipynb
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/KubernetesAndWorkerTaskRunner.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/KubernetesAndWorkerTaskRunnerConfig.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/KubernetesAndWorkerTaskRunnerFactory.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/runnerstrategy/KubernetesRunnerStrategy.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/runnerstrategy/RunnerStrategy.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/runnerstrategy/TaskTypeRunnerStrategy.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/main/java/org/apache/druid/k8s/overlord/runnerstrategy/WorkerRunnerStrategy.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/KubernetesAndWorkerTaskRunnerConfigTest.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/KubernetesAndWorkerTaskRunnerFactoryTest.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/KubernetesAndWorkerTaskRunnerTest.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/runnerstrategy/KubernetesRunnerStrategyTest.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/runnerstrategy/TaskTypeRunnerStrategyTest.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/test/java/org/apache/druid/k8s/overlord/runnerstrategy/WorkerRunnerStrategyTest.java
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/test/resources/expectedNoopJobNoTaskJson.yaml
 create mode 100644 extensions-contrib/kubernetes-overlord-extensions/src/test/resources/kubernetesAndWorkerTaskRunnerConfig.json
 create mode 100644 extensions-contrib/materialized-view-selection/src/test/java/org/apache/druid/query/materializedview/DataSourceOptimizerMonitorTest.java
 create mode 100644 extensions-contrib/prometheus-emitter/src/test/java/org/apache/druid/emitter/prometheus/PrometheusEmitterConfigTest.java
 create mode 100644 extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/GoogleStorageObjectMetadata.java
 create mode 100644 extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/GoogleStorageObjectPage.java
 create mode 100644 extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/output/GoogleInputRange.java
 create mode 100644 extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/output/GoogleOutputConfig.java
 create mode 100644 extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/output/GoogleStorageConnector.java
 create mode 100644 extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/output/GoogleStorageConnectorModule.java
 create mode 100644 extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/output/GoogleStorageConnectorProvider.java
 create mode 100644 extensions-core/google-extensions/src/test/java/org/apache/druid/storage/google/output/GoogleInputRangeTest.java
 create mode 100644 extensions-core/google-extensions/src/test/java/org/apache/druid/storage/google/output/GoogleOutputConfigTest.java
 create mode 100644 extensions-core/google-extensions/src/test/java/org/apache/druid/storage/google/output/GoogleStorageConnectorProviderTest.java
 create mode 100644 extensions-core/google-extensions/src/test/java/org/apache/druid/storage/google/output/GoogleStorageConnectorTest.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/exec/LoadedSegmentDataProvider.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/exec/LoadedSegmentDataProviderFactory.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/exec/SegmentLoadStatusFetcher.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/exec/SegmentSource.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/input/table/DataSegmentWithLocation.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/BaseLeafFrameProcessorManager.java
 delete mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/BroadcastJoinHelper.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/BroadcastJoinSegmentMapFnProcessor.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/ChainedProcessorManager.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/SimpleSegmentMapFnProcessor.java
 delete mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/statistics/TooManyBucketsException.java
 create mode 100644 extensions-core/multi-stage-query/src/main/java/org/apache/druid/msq/util/ArrayIngestMode.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/exec/LoadedSegmentDataProviderTest.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQArraysTest.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQDataSketchesTest.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQLoadedSegmentTests.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/exec/SegmentLoadStatusFetcherTest.java
 delete mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/querykit/BroadcastJoinHelperTest.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/querykit/BroadcastJoinSegmentMapFnProcessorTest.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/statistics/ByteRowKeySerdeTest.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/CalciteArraysQueryMSQTest.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/CalciteUnionQueryMSQTest.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/util/DimensionSchemaUtilsTest.java
 create mode 100644 extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/util/SqlStatementResourceHelperTest.java
 create mode 100644 extensions-core/s3-extensions/src/test/java/org/apache/druid/storage/s3/S3UtilsTest.java
 create mode 100644 indexing-service/src/main/java/org/apache/druid/indexing/common/KillTaskReport.java
 create mode 100644 indexing-service/src/main/java/org/apache/druid/indexing/common/actions/RetrieveSegmentsToReplaceAction.java
 create mode 100644 indexing-service/src/main/java/org/apache/druid/indexing/common/actions/SegmentTransactionalAppendAction.java
 create mode 100644 indexing-service/src/main/java/org/apache/druid/indexing/common/actions/SegmentTransactionalReplaceAction.java
 create mode 100644 indexing-service/src/main/java/org/apache/druid/indexing/common/task/batch/TooManyBucketsException.java
 create mode 100644 indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/PendingSegmentVersions.java
 create mode 100644 indexing-service/src/test/java/org/apache/druid/indexing/common/task/batch/parallel/distribution/ArrayOfStringTuplesSerDeTest.java
 create mode 100644 indexing-service/src/test/java/org/apache/druid/indexing/common/task/concurrent/ActionsTestTask.java
 create mode 100644 indexing-service/src/test/java/org/apache/druid/indexing/common/task/concurrent/CommandQueueTask.java
 create mode 100644 indexing-service/src/test/java/org/apache/druid/indexing/common/task/concurrent/ConcurrentReplaceAndAppendTest.java
 create mode 100644 indexing-service/src/test/java/org/apache/druid/indexing/seekablestream/TestSeekableStreamDataSourceMetadata.java
 create mode 100644 integration-tests/docker/docker-compose.centralized-datasource-schema.yml
 create mode 100644 integration-tests/docker/test-data/centralized-datasource-schema-sample-data.sql
 copy licenses/bin/{@babel-code-frame.MIT => @babel-helper-string-parser.MIT} (100%)
 mode change 100755 => 100644 licenses/bin/@types-react.MIT
 create mode 100644 licenses/bin/commander.MIT
 create mode 100644 licenses/bin/d3-dsv.BSD3
 create mode 100644 licenses/bin/iconv-lite.MIT
 create mode 100644 licenses/bin/moment-timezone.MIT
 create mode 100644 licenses/bin/moment.MIT
 create mode 100644 licenses/bin/rw.BSD3
 create mode 100644 licenses/bin/safer-buffer.MIT
 create mode 100644 licenses/bin/uuid.MIT
 create mode 100644 processing/src/main/java/org/apache/druid/data/input/impl/systemfield/SystemField.java
 create mode 100644 processing/src/main/java/org/apache/druid/data/input/impl/systemfield/SystemFieldDecoratorFactory.java
 create mode 100644 processing/src/main/java/org/apache/druid/data/input/impl/systemfield/SystemFieldInputSource.java
 create mode 100644 processing/src/main/java/org/apache/druid/data/input/impl/systemfield/SystemFields.java
 create mode 100644 processing/src/main/java/org/apache/druid/error/InternalServerError.java
 delete mode 100644 processing/src/main/java/org/apache/druid/frame/field/ConstantFieldPointer.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/DoubleArrayFieldReader.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/FloatArrayFieldReader.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/LongArrayFieldReader.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/NumericArrayFieldReader.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/NumericArrayFieldSelector.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/NumericArrayFieldWriter.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/NumericFieldReader.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/NumericFieldWriter.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/NumericFieldWriterFactory.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/SettableFieldPointer.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/StringArrayFieldReader.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/field/TransformUtils.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/processor/manager/AccumulatingProcessorManager.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/processor/manager/ProcessorAndCallback.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/processor/manager/ProcessorManager.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/processor/manager/ProcessorManagers.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/processor/manager/SequenceProcessorManager.java
 create mode 100644 processing/src/main/java/org/apache/druid/frame/read/columnar/UnsupportedColumnTypeFrameColumnReader.java
 create mode 100644 processing/src/main/java/org/apache/druid/guice/ExpressionModule.java
 create mode 100644 processing/src/main/java/org/apache/druid/java/util/common/Unit.java
 delete mode 100644 processing/src/main/java/org/apache/druid/java/util/common/concurrent/ExecutorServiceConfig.java
 create mode 100644 processing/src/main/java/org/apache/druid/java/util/metrics/DruidMonitorSchedulerConfig.java
 delete mode 100644 processing/src/main/java/org/apache/druid/java/util/metrics/MonitorSchedulerConfig.java
 rename processing/src/main/java/org/apache/druid/math/expr/{BinaryOperatorExpr.java => BinaryEvalOpExprBase.java} (100%)
 create mode 100644 processing/src/main/java/org/apache/druid/query/DruidProcessingBufferConfig.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/DruidProcessingIndexesConfig.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/GroupByMergedQueryRunner.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/AbstractSerializableLongObjectPairSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/AbstractSerializablePairLongObjectBufferStore.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/AbstractSerializablePairLongObjectColumnHeader.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/AbstractSerializablePairLongObjectColumnSerializer.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/AbstractSerializablePairLongObjectDeltaEncodedStagedSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/AbstractSerializablePairLongObjectSimpleStagedSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongDouble.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleBufferStore.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleColumnHeader.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleColumnSerializer.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleComplexColumn.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleComplexMetricSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleDeltaEncodedStagedSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleSimpleStagedSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongFloat.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongFloatBufferStore.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongFloatColumnHeader.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongFloatColumnSerializer.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongFloatComplexColumn.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongFloatComplexMetricSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongFloatDeltaEncodedStagedSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongFloatSimpleStagedSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongLong.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongLongBufferStore.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongLongColumnHeader.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongLongColumnSerializer.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongLongComplexColumn.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongLongComplexMetricSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongLongDeltaEncodedStagedSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/SerializablePairLongLongSimpleStagedSerde.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/any/NilVectorAggregator.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/any/NumericNilVectorAggregator.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/first/DoubleFirstVectorAggregator.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/first/FirstLastUtils.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/first/FloatFirstVectorAggregator.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/first/GenericFirstAggregateCombiner.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/first/LongFirstVectorAggregator.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/first/NumericFirstVectorAggregator.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/first/SingleStringFirstDimensionVectorAggregator.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/first/StringFirstAggregateCombiner.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/first/StringFirstVectorAggregator.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/last/GenericLastAggregateCombiner.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/last/SingleStringLastDimensionVectorAggregator.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/aggregation/last/StringLastAggregateCombiner.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/expression/IPv6AddressExprUtils.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/expression/IPv6AddressMatchExprMacro.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/filter/ArrayContainsElementFilter.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/filter/IsBooleanDimFilter.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/filter/IsFalseDimFilter.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/filter/IsTrueDimFilter.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/filter/StringPredicateDruidPredicateFactory.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/groupby/GroupByQueryEngine.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/groupby/GroupByQueryHelper.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/groupby/GroupByQueryResources.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/groupby/GroupingEngine.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/groupby/resource/GroupByQueryResource.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/groupby/strategy/GroupByStrategy.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/groupby/strategy/GroupByStrategySelector.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/groupby/strategy/GroupByStrategyV1.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/groupby/strategy/GroupByStrategyV2.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/operator/OffsetLimit.java
 create mode 100644 processing/src/main/java/org/apache/druid/query/scan/ScanResultValueIterator.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/search/AutoStrategy.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/search/ConciseBitmapDecisionHelper.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/search/RoaringBitmapDecisionHelper.java
 delete mode 100644 processing/src/main/java/org/apache/druid/query/search/SearchQueryDecisionHelper.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/DefaultColumnFormatConfig.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/NestedDataColumnHandlerV4.java
 delete mode 100644 processing/src/main/java/org/apache/druid/segment/NestedDataColumnIndexer.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/NestedDataColumnIndexerV4.java
 delete mode 100644 processing/src/main/java/org/apache/druid/segment/NestedDataColumnMerger.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/NestedDataColumnMergerV4.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/NestedDataColumnSchema.java
 delete mode 100644 processing/src/main/java/org/apache/druid/segment/NestedDataDimensionHandler.java
 delete mode 100644 processing/src/main/java/org/apache/druid/segment/NestedDataDimensionSchema.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/ObjectBasedColumnSelector.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/filter/AllFalseValueMatcher.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/filter/AllTrueValueMatcher.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/filter/AllUnknownValueMatcher.java
 delete mode 100644 processing/src/main/java/org/apache/druid/segment/filter/BooleanValueMatcher.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/filter/ConstantMatcherType.java
 delete mode 100644 processing/src/main/java/org/apache/druid/segment/filter/FalseValueMatcher.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/filter/IsBooleanFilter.java
 delete mode 100644 processing/src/main/java/org/apache/druid/segment/filter/TrueValueMatcher.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/index/AllUnknownBitmapColumnIndex.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/transform/TransformedInputRow.java
 create mode 100644 processing/src/main/java/org/apache/druid/tasklogs/TaskPayloadManager.java
 create mode 100644 processing/src/test/java/org/apache/druid/audit/NoopAuditManager.java
 delete mode 100644 processing/src/test/java/org/apache/druid/audit/TestAuditManager.java
 create mode 100644 processing/src/test/java/org/apache/druid/collections/bitmap/BatchIteratorAdapterTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/common/UnitTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/error/InternalServerErrorTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/frame/field/ConstantFieldPointer.java
 create mode 100644 processing/src/test/java/org/apache/druid/frame/field/DoubleArrayFieldReaderTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/frame/field/FloatArrayFieldReaderTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/frame/field/IndexArrayFieldPointer.java
 create mode 100644 processing/src/test/java/org/apache/druid/frame/field/LongArrayFieldReaderTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/frame/field/TransformUtilsTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/frame/processor/manager/SequenceProcessorManagerTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/guice/NestedDataModuleTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleBufferStoreTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleComplexMetricSerdeTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongDoubleDeltaEncodedStagedSerdeTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongFloatBufferStoreTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongFloatComplexMetricSerdeTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongFloatDeltaEncodedStagedSerdeTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongLongBufferStoreTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongLongComplexMetricSerdeTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongLongDeltaEncodedStagedSerdeTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/SerializablePairLongLongSimpleStagedSerdeTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/first/DoubleFirstVectorAggregationTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/first/FloatFirstVectorAggregationTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/first/LongFirstVectorAggregationTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/aggregation/first/StringFirstVectorAggregatorTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/expression/IPv6AddressExprUtilsTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/expression/IPv6AddressMatchExprMacroTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/expression/LookupExprMacroTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/filter/IsBooleanDimFilterTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/operator/NaivePartitioningOperatorFactoryTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/operator/NaiveSortOperatorFactoryTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/operator/NaiveSortOperatorTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/operator/OffsetLimitTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/operator/WindowOperatorFactoryTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/rowsandcols/column/ColumnAccessorsTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/rowsandcols/concrete/FrameRowsAndColumnsTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/query/rowsandcols/semantic/TestVirtualColumnEvaluationRowsAndColumnsTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/DefaultColumnFormatsConfigTest.java
 delete mode 100644 processing/src/test/java/org/apache/druid/segment/NestedDataColumnIndexerTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/NestedDataColumnIndexerV4Test.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/NestedDataColumnSchemaTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/filter/ArrayContainsElementFilterTests.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/filter/ExpressionFilterNonStrictBooleansTest.java
 delete mode 100644 processing/src/test/java/org/apache/druid/segment/filter/ExpressionFilterStrictBooleansTest.java
 delete mode 100644 processing/src/test/java/org/apache/druid/segment/filter/NullFilterTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/filter/NullFilterTests.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/join/PostJoinCursorTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/nested/DictionaryIdLookupTest.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/virtual/TestObjectBasedColumnSelector.java
 create mode 100644 processing/src/test/java/org/apache/druid/tasklogs/TaskPayloadManagerTest.java
 delete mode 100644 server/src/main/java/org/apache/druid/client/BrokerInternalQueryConfig.java
 create mode 100644 server/src/main/java/org/apache/druid/client/DirectDruidClientFactory.java
 create mode 100644 server/src/main/java/org/apache/druid/client/InternalQueryConfig.java
 create mode 100644 server/src/main/java/org/apache/druid/discovery/BrokerClient.java
 create mode 100644 server/src/main/java/org/apache/druid/discovery/ClientUtils.java
 create mode 100644 server/src/main/java/org/apache/druid/discovery/DataServerClient.java
 create mode 100644 server/src/main/java/org/apache/druid/discovery/DataServerResponseHandler.java
 delete mode 100644 server/src/main/java/org/apache/druid/guice/DruidProcessingConfigModule.java
 delete mode 100644 server/src/main/java/org/apache/druid/guice/ExpressionModule.java
 create mode 100644 server/src/main/java/org/apache/druid/guice/LegacyBrokerParallelMergeConfigModule.java
 delete mode 100644 server/src/main/java/org/apache/druid/guice/annotations/CoordinatorIndexingServiceDuty.java
 delete mode 100644 server/src/main/java/org/apache/druid/guice/annotations/CoordinatorMetadataStoreManagementDuty.java
 create mode 100644 server/src/main/java/org/apache/druid/metadata/LockFilterPolicy.java
 create mode 100644 server/src/main/java/org/apache/druid/metadata/ReplaceTaskLock.java
 create mode 100644 server/src/main/java/org/apache/druid/metadata/SortOrder.java
 create mode 100644 server/src/main/java/org/apache/druid/query/BrokerParallelMergeConfig.java
 create mode 100644 server/src/main/java/org/apache/druid/query/LegacyBrokerParallelMergeConfig.java
 create mode 100644 server/src/main/java/org/apache/druid/rpc/FixedSetServiceLocator.java
 create mode 100644 server/src/main/java/org/apache/druid/segment/metadata/AbstractSegmentMetadataCache.java
 create mode 100644 server/src/main/java/org/apache/druid/segment/metadata/AvailableSegmentMetadata.java
 create mode 100644 server/src/main/java/org/apache/druid/segment/metadata/CoordinatorSegmentMetadataCache.java
 create mode 100644 server/src/main/java/org/apache/druid/segment/metadata/DataSourceInformation.java
 create mode 100644 server/src/main/java/org/apache/druid/segment/metadata/SegmentMetadataCacheConfig.java
 create mode 100644 server/src/main/java/org/apache/druid/segment/metadata/SegmentMetadataQuerySegmentWalker.java
 delete mode 100644 server/src/main/java/org/apache/druid/segment/realtime/DbSegmentPublisherConfig.java
 create mode 100644 server/src/main/java/org/apache/druid/segment/realtime/plumber/SinkSegmentReference.java
 create mode 100644 server/src/main/java/org/apache/druid/server/SubqueryGuardrailHelper.java
 create mode 100644 server/src/main/java/org/apache/druid/server/SubqueryGuardrailHelperProvider.java
 delete mode 100644 server/src/main/java/org/apache/druid/server/coordinator/CompactionStatistics.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/CoordinatorConfigManager.java
 delete mode 100644 server/src/main/java/org/apache/druid/server/coordinator/KillStalePendingSegments.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/MetadataManager.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/balancer/DisabledCachingCostBalancerStrategyFactory.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/balancer/SegmentToMoveCalculator.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/compact/CompactionSegmentIterator.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/compact/CompactionSegmentSearchPolicy.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/compact/CompactionStatistics.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/compact/CompactionStatus.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/compact/NewestSegmentFirstIterator.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/compact/NewestSegmentFirstPolicy.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/compact/SegmentsToCompact.java
 delete mode 100644 server/src/main/java/org/apache/druid/server/coordinator/duty/CompactionSegmentIterator.java
 delete mode 100644 server/src/main/java/org/apache/druid/server/coordinator/duty/CompactionSegmentSearchPolicy.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/duty/KillStalePendingSegments.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/duty/MarkEternityTombstonesAsUnused.java
 delete mode 100644 server/src/main/java/org/apache/druid/server/coordinator/duty/NewestSegmentFirstIterator.java
 delete mode 100644 server/src/main/java/org/apache/druid/server/coordinator/duty/NewestSegmentFirstPolicy.java
 create mode 100644 server/src/main/java/org/apache/druid/server/coordinator/duty/PrepareBalancerAndLoadQueues.java
 delete mode 100644 server/src/main/java/org/apache/druid/server/metrics/DruidMonitorSchedulerConfig.java
 create mode 100644 server/src/main/java/org/apache/druid/server/metrics/SubqueryCountStatsMonitor.java
 create mode 100644 server/src/main/java/org/apache/druid/server/metrics/SubqueryCountStatsProvider.java
 delete mode 100644 server/src/test/java/org/apache/druid/client/BrokerInternalQueryConfigTest.java
 create mode 100644 server/src/test/java/org/apache/druid/client/InternalQueryConfigTest.java
 create mode 100644 server/src/test/java/org/apache/druid/discovery/BrokerClientTest.java
 create mode 100644 server/src/test/java/org/apache/druid/discovery/DataServerClientTest.java
 create mode 100644 server/src/test/java/org/apache/druid/metadata/ReplaceTaskLockTest.java
 create mode 100644 server/src/test/java/org/apache/druid/metadata/SortOrderTest.java
 create mode 100644 server/src/test/java/org/apache/druid/metadata/SqlSegmentsMetadataManagerProviderTest.java
 create mode 100644 server/src/test/java/org/apache/druid/rpc/FixedSetServiceLocatorTest.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/metadata/CoordinatorSegmentDataCacheConcurrencyTest.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/metadata/CoordinatorSegmentMetadataCacheCommon.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/metadata/CoordinatorSegmentMetadataCacheConfigTest.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/metadata/CoordinatorSegmentMetadataCacheTest.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/metadata/SegmentMetadataCacheCommon.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/metadata/SegmentMetadataQuerySegmentWalkerTest.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/metadata/TestCoordinatorServerView.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/metadata/TestSegmentMetadataQueryWalker.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/realtime/RealtimeMetricsMonitorTest.java
 create mode 100644 server/src/test/java/org/apache/druid/segment/realtime/firehose/ChatHandlerResourceTest.java
 create mode 100644 server/src/test/java/org/apache/druid/server/QueryResultPusherTest.java
 create mode 100644 server/src/test/java/org/apache/druid/server/SpecificSegmentsQuerySegmentWalker.java
 create mode 100644 server/src/test/java/org/apache/druid/server/SubqueryGuardrailHelperTest.java
 create mode 100644 server/src/test/java/org/apache/druid/server/coordinator/balancer/BalancerStrategyFactoryTest.java
 create mode 100644 server/src/test/java/org/apache/druid/server/coordinator/balancer/SegmentToMoveCalculatorTest.java
 create mode 100644 server/src/test/java/org/apache/druid/server/coordinator/compact/NewestSegmentFirstIteratorTest.java
 create mode 100644 server/src/test/java/org/apache/druid/server/coordinator/compact/NewestSegmentFirstPolicyTest.java
 create mode 100644 server/src/test/java/org/apache/druid/server/coordinator/duty/KillStalePendingSegmentsTest.java
 create mode 100644 server/src/test/java/org/apache/druid/server/coordinator/duty/MarkEternityTombstonesAsUnusedTest.java
 delete mode 100644 server/src/test/java/org/apache/druid/server/coordinator/duty/NewestSegmentFirstIteratorTest.java
 delete mode 100644 server/src/test/java/org/apache/druid/server/coordinator/duty/NewestSegmentFirstPolicyTest.java
 create mode 100644 server/src/test/java/org/apache/druid/server/coordinator/loading/ReplicationThrottlerTest.java
 create mode 100644 services/src/test/java/org/apache/druid/cli/CreateTablesTest.java
 create mode 100644 services/src/test/java/org/apache/druid/cli/ValidateSegmentsTest.java
 delete mode 100644 services/src/test/resources/nested-test-aggs.json
 delete mode 100644 services/src/test/resources/nested-test-parser.json
 create mode 100644 sql/src/main/java/org/apache/calcite/sql/type/CastedLiteralOperandTypeChecker.java
 create mode 100644 sql/src/main/java/org/apache/calcite/sql/type/CastedLiteralOperandTypeCheckers.java
 delete mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/expression/BasicOperandTypeChecker.java
 create mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/expression/DefaultOperandTypeChecker.java
 delete mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/expression/UnarySuffixOperatorConversion.java
 create mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/expression/builtin/DecodeBase64UTFOperatorConversion.java
 create mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/expression/builtin/IPv6AddressMatchOperatorConversion.java
 create mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/filtration/RemoveRedundantIsTrue.java
 delete mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/planner/PlannerCaptureHook.java
 delete mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/planner/SegmentMetadataCacheConfig.java
 create mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/rel/InputAccessor.java
 delete mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/rule/logical/DruidAggregateCaseToFilterRule.java
 delete mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/schema/AvailableSegmentMetadata.java
 create mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/schema/BrokerSegmentMetadataCache.java
 create mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/schema/BrokerSegmentMetadataCacheConfig.java
 create mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/schema/PhysicalDatasourceMetadataFactory.java
 delete mode 100644 sql/src/main/java/org/apache/druid/sql/calcite/schema/SegmentMetadataCache.java
 create mode 100644 sql/src/test/java/org/apache/druid/query/OperatorFactoryBuilders.java
 create mode 100644 sql/src/test/java/org/apache/druid/query/WindowOperatorQueryBuilder.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/CalciteSysQueryTest.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/CalciteUnionQueryTest.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/DisableUnless.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/NotYetSupported.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/SqlTestFrameworkConfig.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/planner/PlannerCaptureHook.java
 delete mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/planner/SegmentMetadataCacheConfigTest.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/schema/BrokerSegmentMetadataCacheCommon.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/schema/BrokerSegmentMetadataCacheConcurrencyTest.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/schema/BrokerSegmentMetadataCacheConfigTest.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/schema/BrokerSegmentMetadataCacheTest.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/schema/PhysicalDataSourceMetadataFactoryTest.java
 delete mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/schema/SegmentDataCacheConcurrencyTest.java
 delete mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/schema/SegmentMetadataCacheCommon.java
 delete mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/schema/SegmentMetadataCacheTest.java
 delete mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/util/SpecificSegmentsQuerySegmentWalker.java
 delete mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/util/TestServerInventoryView.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/util/TestTimelineServerView.java
 create mode 100644 sql/src/test/resources/calcite/tests/window/aggregateConstant.sqlTest
 create mode 100644 sql/src/test/resources/calcite/tests/window/lead_lag.sqlTest
 create mode 100644 sql/src/test/resources/calcite/tests/window/no_grouping.sqlTest
 create mode 100644 sql/src/test/resources/calcite/tests/window/no_grouping2.sqlTest
 create mode 100644 sql/src/test/resources/calcite/tests/window/offsetNotDiscarded.sqlTest
 create mode 100644 sql/src/test/resources/calcite/tests/window/orderByDescNulls.sqlTest
 create mode 100644 sql/src/test/resources/calcite/tests/window/virtualColumns.sqlTest
 create mode 100644 sql/src/test/resources/calcite/tests/window/windowed_long_null.sqlTest
 create mode 100644 web-console/src/dialogs/supervisor-reset-offsets-dialog/supervisor-reset-offsets-dialog.scss
 create mode 100644 web-console/src/dialogs/supervisor-reset-offsets-dialog/supervisor-reset-offsets-dialog.tsx
 delete mode 100644 web-console/src/druid-models/workbench-query/workbench-query-part.ts
 create mode 100644 web-console/src/hooks/use-resize-observer.ts
 delete mode 100644 web-console/src/utils/query-cursor.ts
 create mode 100644 web-console/src/utils/sql.spec.ts
 create mode 100644 web-console/src/views/explore-view/highlight-bubble/highlight-bubble.scss
 create mode 100644 web-console/src/views/explore-view/highlight-bubble/highlight-bubble.tsx
 create mode 100644 web-console/src/views/explore-view/highlight-store/highlight-store.ts
 create mode 100644 web-console/src/views/explore-view/modules/utils/utils.spec.ts
 create mode 100644 web-console/src/views/explore-view/modules/utils/utils.ts
 delete mode 100644 web-console/src/views/explore-view/utils.ts
 create mode 100644 web-console/src/views/explore-view/utils/date-format.ts
 create mode 100644 web-console/src/views/explore-view/utils/get-auto-granularity.ts
 create mode 100644 web-console/src/views/explore-view/utils/index.ts
 create mode 100644 web-console/src/views/explore-view/utils/misc.ts
 create mode 100644 web-console/src/views/explore-view/utils/snap-to-granularity.ts
 delete mode 100644 web-console/src/views/workbench-view/helper-query/helper-query.scss
 delete mode 100644 web-console/src/views/workbench-view/helper-query/helper-query.tsx
 create mode 100644 web-console/src/views/workbench-view/query-parameters-dialog/__snapshots__/query-parameters-dialog.spec.tsx.snap
 create mode 100644 web-console/src/views/workbench-view/query-parameters-dialog/query-parameters-dialog.scss
 create mode 100644 web-console/src/views/workbench-view/query-parameters-dialog/query-parameters-dialog.spec.tsx
 create mode 100644 web-console/src/views/workbench-view/query-parameters-dialog/query-parameters-dialog.tsx
 delete mode 100644 website/.gitignore
 delete mode 100644 website/core/Footer.js
 create mode 100644 website/docusaurus.config.js
 delete mode 100644 website/pages/en/index.js
 delete mode 100644 website/pom.xml
 create mode 100644 website/redirects.js
 delete mode 100644 website/redirects.json
 delete mode 100755 website/script/build-to-docs
 delete mode 100644 website/script/do-redirects.js
 delete mode 100644 website/script/fix-docsearch.js
 delete mode 100644 website/script/fix-path.js
 delete mode 100644 website/script/link-lint.js
 delete mode 100644 website/scss/custom.scss
 delete mode 100644 website/siteConfig.js
 create mode 100644 website/src/css/customTheme.css
 create mode 100644 website/src/pages/community/cla.md
 create mode 100644 website/src/pages/community/index.mdx
 create mode 100644 website/src/pages/community/join-slack.md
 create mode 100644 website/src/pages/downloads.md
 create mode 100644 website/src/pages/druid-powered.md
 create mode 100644 website/src/pages/faq.md
 create mode 100644 website/src/pages/index.mdx
 create mode 100644 website/src/pages/libraries.md
 create mode 100644 website/src/pages/licensing.md
 create mode 100644 website/src/pages/technology.md
 create mode 100644 website/src/pages/use-cases.md


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@druid.apache.org
For additional commands, e-mail: commits-help@druid.apache.org