Commit Graph

5685 Commits

Author SHA1 Message Date
8407490053 [feature-wip](nereids) Support some spark-sql built-in functions when set dialect=spark_sql (#28531) 2023-12-30 00:10:35 +08:00
445f72b395 [ut](stats) Added tests for HMS analysis tasks (#28583) 2023-12-30 00:09:50 +08:00
7f105facc4 [fix](pipelineX) fix unable to merge profiles in multi be (#29204) 2023-12-29 23:48:46 +08:00
2518ed64ea [enhancement](bulk-load) strict second level granularity for timeout between (0,1) (#29028) 2023-12-29 23:44:43 +08:00
989d20e0ac [opt](Nereids) remove decimalv2 signature from min, max, sum, nvl and case when (#29282) 2023-12-29 23:22:32 +08:00
03ece437f0 Fix topicPublisher thread may NPE when no topic exists (#29306) 2023-12-29 23:04:20 +08:00
59fdd5e42b [fix](compaction) time series compaction policy -> compact consecutive empty rowsets (#27299)
Sometimes we need to merge a large number of empty versions to reduce meta-information.
2023-12-29 22:20:41 +08:00
fcb90dc808 [opt](Nereids) use enable_nereids_dml to control ctas and create table (#29284) 2023-12-29 20:47:22 +08:00
4266432d11 [Fix](dialect) Fix trino dialect converter when sql does not end with delimiter. (#29106)
Co-authored-by: wangxiangyu <wangxiangyu@360shuke.com>
2023-12-29 18:02:57 +08:00
ada5cf4b2e [fix](chore) fix session var memtable on sink for bulk load (#29102) 2023-12-29 17:00:02 +08:00
1a2ec2fbd9 [fix](meta)Fix error code for unknown table #27751 (#27976)
This fix will improve the error code for unknown table
exception cases.
2023-12-29 16:28:04 +08:00
9925f7be8e [fix](nereids)FillUpMissingSlots rule didn't process standalone having clause correctly (#29143) 2023-12-29 16:12:05 +08:00
c3c34e10bb [feature](executor) Add some check when create workload group/workload schedule policy (#29236) 2023-12-29 15:41:16 +08:00
d6dcf962a9 [Enhancement](page cache) insert into setting to disable page cache (#28913) 2023-12-29 15:11:41 +08:00
660f12c717 [dependency](fe)Upgrade dependency library (#29049) 2023-12-29 14:50:46 +08:00
2308881e9f [improvement](statistics) Analyze partition columns when new partition loaded data for the first time. (#29154)
The first time load data to a partition, we need to analyze the partition columns even when the health rate is high. Because if not, the min max value of the column may not include the new partition values, which may cause bad plan.
2023-12-29 14:36:48 +08:00
36b45b570b [fix](mysql) fix mysql channel infinite blocking (#28808)
Call the Channels blocking method with timeout instead.

Using session variables net_write_timeout and net_read_timeout as the timeout parameter.
2023-12-29 13:57:22 +08:00
f34b46a366 [fix](glue) support amazonaws.com.cn endpoint (#29128) 2023-12-29 13:50:30 +08:00
9fc613de9c [fix](nereids) Fix query rewrite by mv fail when self join (#29227)
Fix query rewrite by mv fail when self join, after fix query like following can be rewrited

def materialized view = """
    select 
    a.o_orderkey,
    count(distinct a.o_orderstatus) num1,
    SUM(CASE WHEN a.o_orderstatus = 'o' AND a.o_shippriority = 1 AND a.o_orderdate = '2023-12-08' AND b.o_orderdate = '2023-12-09' THEN a.o_shippriority+b.o_custkey ELSE 0 END) num2,
    SUM(CASE WHEN a.o_orderstatus = 'o' AND a.o_shippriority = 1 AND a.o_orderdate >= '2023-12-01' AND a.o_orderdate <= '2023-12-09' THEN a.o_shippriority+b.o_custkey ELSE 0 END) num3,
    SUM(CASE WHEN a.o_orderstatus = 'o' AND a.o_shippriority in (1,2) AND a.o_orderdate >= '2023-12-08' AND b.o_orderdate <= '2023-12-09' THEN a.o_shippriority-b.o_custkey ELSE 0 END) num4,
    AVG(a.o_totalprice) num5,
    MAX(b.o_totalprice) num6,
    MIN(a.o_totalprice) num7
    from
    orders a
    left outer join orders b
    on a.o_orderkey = b.o_orderkey
    and a.o_custkey = b.o_custkey
    group by a.o_orderkey;
"""

def query = """
    select 
    a.o_orderkey,
    SUM(CASE WHEN a.o_orderstatus = 'o' AND a.o_shippriority = 1 AND a.o_orderdate = '2023-12-08' AND b.o_orderdate = '2023-12-09' THEN a.o_shippriority+b.o_custkey ELSE 0 END) num2,
    SUM(CASE WHEN a.o_orderstatus = 'o' AND a.o_shippriority = 1 AND a.o_orderdate >= '2023-12-01' AND a.o_orderdate <= '2023-12-09' THEN a.o_shippriority+b.o_custkey ELSE 0 END) num3,
    SUM(CASE WHEN a.o_orderstatus = 'o' AND a.o_shippriority in (1,2) AND a.o_orderdate >= '2023-12-08' AND b.o_orderdate <= '2023-12-09' THEN a.o_shippriority-b.o_custkey ELSE 0 END) num4,
    AVG(a.o_totalprice) num5,
    MAX(b.o_totalprice) num6,
    MIN(a.o_totalprice) num7
    from
    orders a
    left outer join orders b
    on a.o_orderkey = b.o_orderkey
    and a.o_custkey = b.o_custkey
    group by a.o_orderkey;
"""
2023-12-29 13:45:33 +08:00
2794427e7f [enhancement](Nereids): refactor eliminating inner join by foreign key (#28816) 2023-12-29 13:41:54 +08:00
48d41a8c8b [feature](Nereids): support comparing mv with inferred predicate (#29132) 2023-12-29 10:38:53 +08:00
d2dc12bed5 [fix](nereids)exists subquery should handle top level scarlar agg correctly (#29135) 2023-12-29 09:45:20 +08:00
c3679a2750 [opt](Nereids) derive physical properties of Project and Filter (#29171) 2023-12-29 07:08:12 +08:00
7d44c5a1f1 [FIX](map)fix element_at in old planner make fe exception and regress cases from ck #29241 2023-12-29 01:00:47 +08:00
ce13a1d951 [fix](nereids) make runtime filter order stable #29203 2023-12-29 01:00:27 +08:00
69c90b1640 [fix](group commit)fix group commit regresstion test (#29079) 2023-12-29 00:50:22 +08:00
99a1e066b5 [fix](group_commit) group_commit is not support on table with property light_schema_change=false (#29244) 2023-12-29 00:26:38 +08:00
9be0f04506 (improv)[group commit] refactor some group commit code (#29180) 2023-12-29 00:26:10 +08:00
feebe3e6fb [FIX](literal) fix expression literal error #29157 2023-12-28 23:08:01 +08:00
ffd178f5ff [feat](pipelinex) support parallel scan on pipeline x engine (#29070)
* [feat](pipelinex) support parallel scan on pipeline x engine

* make parallel scan be independent of shared scan
2023-12-28 21:29:07 +08:00
b093097bc3 [improvement](statistic)Improve auto analyze visibility. (#29046)
Show auto analyze can show the running jobs, not only the finished/failed jobs.
Show analyze task status could show auto tasks as well.
Remove some useless code.
Auto analyze execute catalog/db/table in the order of id, small id first.
2023-12-28 21:21:17 +08:00
03a6a2880a [fix](journal) Fix infinite block due to initial BDB journal failed (#29205)
Opening a BDBJournal will acquire the max journal id, but it doesn't
need to check whether the replica txn is matched with the master.
2023-12-28 15:57:51 +08:00
8becf053cb [fix](multi-catalog)unsupported hive input format should throw an exception and remove useless method (#29087)
introduce from: #28644
2023-12-28 15:43:28 +08:00
ba7b7c1f60 [Chore](Job)It is forbidden to change the status of internal JOB through PAUSE/RESUME (#29036) 2023-12-28 15:40:16 +08:00
5171a77f9e [fix](Nereids): merge Offset in Limit Translator (#29100) 2023-12-28 15:32:45 +08:00
14c902b504 [fix](regression test) fix test_alter_colocate_table (#29009) 2023-12-28 15:09:21 +08:00
31b3be456c add workload scheduler in be (#29116) 2023-12-28 15:04:22 +08:00
Pxl
c98489fc09 [Feature](materialized-view) support visitBitmapUnion mv rewrite (#29200)
* support visitBitmapUnion rewrite

* add case
2023-12-28 14:56:33 +08:00
29a7c0d677 [pipelineX](scan) ignore storage data distribution by default (#29192) 2023-12-28 14:54:09 +08:00
4f2d54d462 [fix](DatabaseTransactionMgr) Fix clean label bug which may cause inconsitent editlog operation (#29198) 2023-12-28 14:17:35 +08:00
f816d13c56 [feature](Nereids): eliminate groupby (#28615) 2023-12-28 14:00:41 +08:00
bc08535285 [fix](Nereids) throw readable exception when meet unsupport sup-query (#29147) 2023-12-28 13:26:09 +08:00
1284975b9b [Improve](Job) Create task adds concurrency control (#29144) 2023-12-28 10:24:39 +08:00
f4c5ce260b [fix](statistics)Fix rowCount==0 while analyzing bug (#28969)
Sample analyzing need to get row count by using table.getRowCount(). This method is not updated in real time, which may cause the sample task to scan whole table.
This pr is to fix this. Set the flag that indicate the analyze job is for an empty table and skip scan the table. Meanwhile, don't reset updatedRows in this case.

Set hugeTableAutoAnalyzeIntervalInMillis = 0 because all default huge table size has been set to 0.
2023-12-27 23:04:37 +08:00
0bff387577 [fix](tablet stat) fix tablet stat thread block #29151 2023-12-27 22:02:42 +08:00
d96278ab21 [bug](fix) show create table show comment error (#28346) 2023-12-27 21:17:20 +08:00
abbd2cedff [fix](Nereids) merge limit should use bottom phase (#29142) 2023-12-27 21:04:00 +08:00
9715db61d4 [FIX](complextype)fix count func with complex type (#28873) 2023-12-27 20:38:44 +08:00
4269041563 [enhancement](Nereids): catch exception when calling getConstraintMap for external map (#29112) 2023-12-27 16:45:03 +08:00
0607760efa [typo](resource) fix create odbc resource error msg (#29019) 2023-12-27 15:30:52 +08:00