1140 Commits

Author SHA1 Message Date
Zoltan Haindrich
8a92ec6b2e Merge remote-tracking branch 'apache/master' into quidem-msq 2024-08-06 18:46:39 +00:00
Zoltan Haindrich
23c6f3bd96 use other authmapper 2024-08-06 16:33:16 +00:00
Zoltan Haindrich
7740832995 undo 2024-08-06 16:14:44 +00:00
Zoltan Haindrich
3e2b59f808 Revert "shared tries"
This reverts commit 34651e70e51c64ac581ba6f3a3186453d6f575cf.
2024-08-06 16:14:16 +00:00
Zoltan Haindrich
34651e70e5 shared tries 2024-08-06 16:14:12 +00:00
Zoltan Haindrich
69a39a42da Revert "connection supplies properties approach"
This reverts commit 2700557a55921145877b4dd51b301cc48815aa09.
2024-08-06 15:28:58 +00:00
Zoltan Haindrich
2700557a55 connection supplies properties approach 2024-08-06 15:28:56 +00:00
Zoltan Haindrich
42cc5d62a8 apidoc 2024-08-06 15:28:36 +00:00
Zoltan Haindrich
21016a28a2 remove ifs 2024-08-06 14:21:28 +00:00
Zoltan Haindrich
941c39aae5 it does work 2024-08-06 13:59:13 +00:00
Zoltan Haindrich
00ee182d75 add fixme/etc 2024-08-06 13:55:23 +00:00
Gian Merlino
de40d81b29
SQL: Add ProjectableFilterableTable to SegmentsTable. (#16841)
* SQL: Add ProjectableFilterableTable to SegmentsTable.

This allows us to skip serialization of expensive fields such as
shard_spec, dimensions, metrics, and last_compaction_state, if those
fields are not actually being queried.

* Restructure logic to avoid unnecessary toString() as well.
2024-08-06 06:40:21 -07:00
Zoltan Haindrich
29b2b559d9 Merge remote-tracking branch 'apache/master' into quidem-msq 2024-08-06 11:42:04 +00:00
Zoltan Haindrich
130252bb5e fix; move class 2024-08-06 09:20:13 +00:00
Sree Charan Manamala
ed6b547481
Handle default bounds correctly in WINDOW clause (#16833)
When a window is defined as WINDOW W AS <DEF> and using a syntax of (PARTITION BY col1 ORDER BY col2 ROWS x PRECEDING), we would need to default the other bound to CURRENT ROW

We already have implemented this earlier, but when defined as WINDOW W AS <DEF>, Calcite takes a different route to validate the window.
2024-08-06 09:58:44 +02:00
Zoltan Haindrich
22d8a4b872 add compositemodule 2024-08-06 07:37:24 +00:00
Zoltan Haindrich
93457c6b3e cleanup 2024-08-06 05:50:39 +00:00
Zoltan Haindrich
c8f9147810 minor fixes 2024-08-05 14:23:54 +00:00
Zoltan Haindrich
6d339d1706 rename class 2024-08-05 14:21:25 +00:00
Zoltan Haindrich
c40474285c updates 2024-08-05 13:49:08 +00:00
Zoltan Haindrich
f4af51ef7f extend/cleanup/etc 2024-08-05 13:41:53 +00:00
Zoltan Haindrich
26e3c44f4b
Quidem record (#16624)
* enables to launch a fake broker based on test resources (druidtest uri)
* could record queries into new testfiles during usage
* instead of re-purpose Calcite's Hook migrates to use DruidHook which we can add further keys
* added a quidem-ut module which could be the place for tests which could iteract with modules/etc
2024-08-05 14:58:32 +02:00
Zoltan Haindrich
090f937d58 Merge branch 'quidem-record' into quidem-msq 2024-08-05 09:03:53 +00:00
Zoltan Haindrich
e6add9ea84 Merge remote-tracking branch 'apache/master' into quidem-record 2024-08-05 07:04:02 +00:00
Sree Charan Manamala
c7eacd079e
fallback SQL IN filter to expression filter when VirtualColumnRegistry is null (#16836) 2024-08-05 11:27:51 +05:30
Abhishek Radhakrishnan
31b43753fb
Add druid.indexing.formats.stringMultiValueHandlingMode system config (#16822)
This patch introduces an optional cluster configuration, druid.indexing.formats.stringMultiValueHandlingMode, allowing operators to override the default mode SORTED_SET for string dimensions. The possible values for the config are SORTED_SET, SORTED_ARRAY, or ARRAY (SORTED_SET is the default). Case insensitive values are allowed.
While this cluster property allows users to manage the multi-value handling mode for string dimension types, it's recommended to migrate to using real array types instead of MVDs.
 
This fixes a long-standing issue where compaction will honor the configured cluster wide property instead of rewriting it as the default SORTED_ARRAY always, even if the data was originally ingested with ARRAY or SORTED_SET.
2024-08-03 10:23:44 -07:00
Zoltan Haindrich
5e81a026e9 Merge branch 'quidem-record' into quidem-msq 2024-07-31 15:27:59 +00:00
Zoltan Haindrich
a03fb49f4f remove exception 2024-07-30 16:34:06 +00:00
Zoltan Haindrich
5f6290eb54 use updated hook class 2024-07-30 16:11:57 +00:00
Zoltan Haindrich
de207c7295 move key 2024-07-30 16:04:11 +00:00
Zoltan Haindrich
b1ab252b31 Merge branch 'quidem-record' into quidem-msq 2024-07-30 16:03:33 +00:00
Zoltan Haindrich
eb2a047e4b Merge remote-tracking branch 'apache/master' into quidem-record 2024-07-30 14:24:37 +00:00
Zoltan Haindrich
b345dd9d03 updates/fix style/etc 2024-07-30 13:25:40 +00:00
Zoltan Haindrich
df42245685 add apidoc/etc 2024-07-30 13:14:51 +00:00
Zoltan Haindrich
9ac26e3a89 wire-in hookdispatcher thru connection/etc 2024-07-30 12:29:36 +00:00
Zoltan Haindrich
78b75d3e8e move more to non-static 2024-07-30 10:42:41 +00:00
Zoltan Haindrich
f6cc540368 use druidhookdispatcherr#1 2024-07-30 10:33:57 +00:00
Zoltan Haindrich
ce667eeb5e move stuff around / prepare to unglobalize 2024-07-30 10:23:35 +00:00
Zoltan Haindrich
c7cde31a89
HAVING clauses may not contain window functions (#16742)
Rejects having clauses if they contain windowed expressions.
Also added a check to produce a more descriptive error if an OVER expression
reaches the filter translation layer.

---------

Co-authored-by: Benedict Jin <asdf2014@apache.org>
2024-07-29 04:11:36 -04:00
Sree Charan Manamala
9b76d13ff8
Check for Aggregation inside a window clause when syntax used as - WINDOW W AS DEF (#16801) 2024-07-26 11:18:35 +02:00
Zoltan Haindrich
ed9ef1f635 checkstryle 2024-07-26 03:39:55 +00:00
Clint Wylie
14954c7eb9
serialize legacy as false for scan query for rolling downgrade/upgrade (#16793)
Fixes rolling downgrades/upgrades after #16659 by hard coding scan query "legacy":false since it is a required property during deserialization.
2024-07-25 14:51:58 +05:30
Zoltan Haindrich
8bb38a04a5 fix FIMXE 2024-07-25 03:33:33 +00:00
Zoltan Haindrich
7e3fab5bf9
Make WindowFrames more specific (#16741)
Changes the WindowFrame internals / representation a bit; introduces dedicated frametypes for rows and groups which corresponds to the implemented processing methods
2024-07-25 04:57:36 +02:00
Zoltan Haindrich
d010b488a7 cleanup 2024-07-24 17:23:15 +00:00
Zoltan Haindrich
7428da51de cleanup 2024-07-24 17:20:42 +00:00
Akshat Jain
a0437b6c93
MSQ window functions: Fix partition boundary issues for arrays (#16780)
* MSQ window functions: Fix partition boundary issues for arrays

* Address review comments

* Cache type strategies

* Trigger Build

* Convert typeStrategies from list to array
2024-07-24 18:47:04 +05:30
Zoltan Haindrich
a9dcb2da46 Merge branch 'quidem-record' into quidem-msq 2024-07-24 10:59:41 +00:00
Sree Charan Manamala
3f4d66c399
Check for Unsupported Aggregation with Distinct when useApproxCountDistinct is enabled (#16770)
* init

* add NativelySupportsDistinct

* refactor

* javadoc

* refactor

* fix tests

* fix drill tests

* comments

* Update sql/src/test/java/org/apache/druid/sql/calcite/DrillWindowQueryTest.java

---------

Co-authored-by: Benedict Jin <asdf2014@apache.org>
2024-07-24 11:13:22 +08:00
Laksh Singla
11bb40981e
Deduce type from the aggregators when materializing subquery results (#16703)
For aggregators like StringFirst/Last, whose intermediate type isn't the same as the final type, using them in GroupBy, TopN or Timeseries subqueries causes a fallback when maxSubqueryBytes is set. This is because we assume that the finalization is not known, due to which the row signature cannot determine whether to use the intermediate or the final type, and it puts it as null. This PR figures out the finalization from the query context and uses the intermediate or the final type appropriately.
2024-07-23 11:52:39 +05:30