Commit Graph

18429 Commits

Author SHA1 Message Date
65835cdd2b [doc](sql-dialect) update sql convertor tool to 1.0.1 (#32077) 2024-03-12 14:20:39 +08:00
da60a111d0 [refactor](nereids) rename PlanNode.distributeExprLists to childrenDistributeExprLists #32069 2024-03-12 14:20:39 +08:00
194f3432ab [Improvement](executor)Routine load support workload group #31671 2024-03-12 14:20:18 +08:00
b41b17ad0a [fix](spill) fix storage engine type cast error (#32071) 2024-03-12 14:20:18 +08:00
a937c54b2b [fix](docker)Fix the registration logic of Doris On Docker (#32026)
* Refactor upgrade documentation

* fix docker be entry point shell

---------

Co-authored-by: Yijia Su <suyijia@selectdb.com>
2024-03-12 14:20:18 +08:00
2ee12b8678 [improvement](docker)Optimize Dockerfile content for FE and BE (#32027)
* Refactor upgrade documentation

* Optimize Dockerfile content for FE and BE.

* Optimize Dockerfile content for FE and BE.

---------

Co-authored-by: Yijia Su <suyijia@selectdb.com>
2024-03-12 14:20:18 +08:00
aea9ddc3cb [Fix](Outfiel) fix be core when the open method of vfile_result_writer failed #32042 2024-03-12 14:20:18 +08:00
dc7d80860f [fix](case) fix export data consistency table key type (#32045) 2024-03-12 14:20:18 +08:00
926908ece2 [fix](hive) fix spelling mistakes for "separatorChar" #32061 2024-03-12 14:20:18 +08:00
4268634115 [fix](memory) Fix Allocator cancel pipelinex query #32048 2024-03-12 14:20:18 +08:00
ccd21a6ea4 [Improve](InPredict) enhance in predict with array type (#31828) 2024-03-12 14:19:14 +08:00
1509fbd538 [feature](docker)Doris On Docker All In One (#31735)
* Refactor upgrade documentation

* Doris On Docker All In One

---------

Co-authored-by: Yijia Su <suyijia@selectdb.com>
2024-03-12 14:19:14 +08:00
68a5319da3 [fix](pipelineX) _local_channel_dependency is null in non pipelineX (#32054) 2024-03-12 14:19:04 +08:00
a7a85dd330 [chore](config) support select experimental session variable (#31837)
support select experimental variables:

Before change:


Before change:
select @@experimental_enable_nereids_planner;
ERROR 1193 (HY000): errCode = 2, detailMessage = Unknown system variable 'experimental_enable_nereids_planner'

show variables like 'experimental_enable_nereids_planner';
+-------------------------------------+-------+---------------+---------+
| Variable_name                       | Value | Default_Value | Changed |
+-------------------------------------+-------+---------------+---------+
| experimental_enable_nereids_planner | false | true          | 1       |
+-------------------------------------+-------+---------------+---------+

After change:
> select @@experimental_enable_nereids_planner;
+---------------------------------------+
| @@experimental_enable_nereids_planner |
+---------------------------------------+
|                                     1 |
+---------------------------------------+
2024-03-12 14:18:26 +08:00
fe3988c686 [fix](compile) fix BE compile failure on Mac (#32044) 2024-03-12 14:17:55 +08:00
31ee448c87 [test](fix) Fix one missing line of output in out file (#32036) 2024-03-12 14:17:55 +08:00
c0f2d0188b [feature](pipelineX) add mem control in local exchange sink (#31982) 2024-03-12 14:17:48 +08:00
ab21d85e8c [nereids](topn-filter) support multi-topn filter (FE part) (#31485)
support multi-topn-filter
2024-03-12 14:17:48 +08:00
b0b7161ad0 [feature](rf) add filter info profile when rf run as expr (#31822) 2024-03-12 14:17:48 +08:00
2470634859 [RuntimeFilter] fix <=> runtime filter failed bug (#32003) 2024-03-12 14:13:13 +08:00
3358f76a7f [feature](spill) Implement spill to disk for hash join, aggregation and sort for pipelineX (#31910)
Co-authored-by: Jerry Hu <mrhhsg@gmail.com>
2024-03-12 14:12:09 +08:00
cf6b22c621 [fix](jdbc catalog) fix type conversion error in MySQL JDBC Driver 5.x (#31880) 2024-03-12 14:07:57 +08:00
1fee736ca4 [fix](jdbc catalog) Clean up the connection pool after failure to initialize the client (#31949) 2024-03-12 14:07:00 +08:00
27eed5399d [Fix](auto-inc) Fix partial update auto inc publish case failure #31987 2024-03-12 14:07:00 +08:00
15f859272f [docs](docs) Update 2.0.6 release note and 1.2.8 release note(#32090) 2024-03-12 13:15:21 +08:00
81a22ccb27 [docs](docs) Update 2.1 release note (#32056) 2024-03-11 17:35:51 +08:00
ae6003504c [pipelineX](partition sort) Add some nessacery metrics (#32020)
Add some necessary metrics
2024-03-09 19:55:48 +08:00
c5390d00bb [Improvement]Add schema table backend_active_tasks (#31945) 2024-03-09 19:55:48 +08:00
Pxl
38caa35a73 [Chore](third-party) update clucene version (#32014)
update clucene version
2024-03-09 19:55:48 +08:00
d2e7a68d11 [enhancement](util) print if using nereids planner when be coredump (#31981) 2024-03-09 19:55:47 +08:00
d5bf20c96e [improvement](mtmv) Improve the performance for query rewritting by materialized view (#31886)
- Limit the number of times for the query rewritting to the group
- Remove the unnecessary log and explain detail info in query
2024-03-09 19:55:47 +08:00
78feb7f519 [fix](forward) set error code for query state to handle exception of (#31975) 2024-03-09 19:55:47 +08:00
1d094a46ec [regression-test](pipeline) remove sys_log_verbose_modules in pipeline #32015 2024-03-09 19:55:47 +08:00
263135c193 [fix](case) fix export data consistency case (#32005) 2024-03-09 19:45:50 +08:00
4bdea7c324 [opt](fe) Reduce jvm heap memory consumed by profiles of BrokerLoadJob (#31985)
* it may cause FE OOM when there are a lot of broker load jobs
  if the profile is enabled
2024-03-09 19:45:50 +08:00
21e412393b [enhancement] add_method_for_schemachange (#31849) 2024-03-09 19:45:50 +08:00
aaa5542fb9 fix drop un-related table (#31990) 2024-03-09 19:45:50 +08:00
cc0e58faec [enhancement](regression-test) upgrade groovy to 4.x and enable run test by jdk17/21 (#31906)
upgrade groovy to 4.x and enable run test by jdk17 / 21
2024-03-09 19:45:46 +08:00
5f9eb5eb52 [feature](external catalog)Add partition grammar for external catalog to create table (#31585)
The `PARTITION BY` syntax used by external catalogs has been added. 
You can specify a column directly, or a partition function as a partition condition.
Like:
 `PARTITION BY LIST(col1, col2, func(param), func(param1, param2), func(param1, param2, param3))`

NOTICE:
This PR change the grammar of `AUTO PARTITION`
From 
```
AUTO PARTITION BY RANGE date_trunc(`TIME_STAMP`, 'month')
```
To
```
AUTO PARTITION BY RANGE (date_trunc(`TIME_STAMP`, 'month'))
```
2024-03-09 19:45:46 +08:00
62db7094ea Revert "Problem: When the old optimizer processes an INSERT INTO statement that contains two quotation marks, it results in only one quotation mark being written into the database. (#31890)" (#31986)
This reverts commit 8c309652e04698f311b6c9158105352e8416c69a.
2024-03-09 19:45:46 +08:00
621803c547 [FIX](InPredict) fix in params in to context for thread fragment query (#31935) 2024-03-09 19:45:46 +08:00
6ef4ab631d [Opt](func) reduce the useless mem alloc and const opt the concat code (#31983) 2024-03-09 19:45:46 +08:00
ce5973b672 Revert "[chore](ci) Update .asf.yaml (#31994)" (#31997)
This reverts commit 5113b4b624f4bc646672b86be54752fff854609d.
2024-03-09 19:45:46 +08:00
1b4680ee14 [chore](ci) Update .asf.yaml (#31994) 2024-03-09 19:45:46 +08:00
5909237ab1 [Fix](nereids) Add semantic check that the hash bucket column must be a key column when creating table for aggregate and unique models (#31951) 2024-03-09 19:45:46 +08:00
cae80cfa15 [doc](apache-superset) Fix zh-CN documentation of apache-superset (#31976) 2024-03-09 19:45:46 +08:00
609761567c [Fix](partial-update) Fix wrong column number passing to BE when partial and enable nereids (#31461)
* Problem:
Inconsistent behavior occurs when executing partial column update `UPDATE` statements and `INSERT` statements on merge-on-write tables with the Nereids optimizer enabled. The number of columns passed to BE differs; `UPDATE` operations incorrectly pass all columns, while `INSERT` operations correctly pass only the updated columns.

Reason:
The Nereids optimizer does not handle partial column update `UPDATE` statements properly. The processing logic for `UPDATE` statements rewrites them as equivalent `INSERT` statements, which are then processed according to the logic of `INSERT` statements. For example, assuming a MoW table structure with columns k1, k2, v1, v2, the correct rewrite should be:
* `UPDATE` table t1 set v1 = v1 + 1 where k1 = 1 and k2 = 2
 * =>
 * `INSERT` into table (v1) select v1 + 1 from table t1 where k1 = 1 and k2 = 2

However, the actual rewriting process does not consider the logic for partial column updates, leading to all columns being included in the `INSERT` statement, i.e., the result is:
* `INSERT` into table (k1, k2, v1, v2) select k1, k2, v1 + 1, v2 from table t1 where k1 = 1 and k2 = 2

This results in `UPDATE` operations incorrectly passing all columns to BE.

Solution:
Having analyzed the cause, the solution is straightforward: when rewriting partial column update `UPDATE` statements to `INSERT` statements, only retain the updated columns and all key columns (as partial column updates must include all key columns). Additionally, this PR includes error injection cases to verify the number of columns passed to BE is correct.

* 2

* 3

* 4

* 5
2024-03-09 19:45:42 +08:00
e8aa5ee7d5 [Improve](Variant) support bloom filter for variant subcolumns (#31347)
* [Improve](Variant) support bloom filter for variant subcolumns

* rebase
2024-03-09 19:45:03 +08:00
e8b4bf5be9 [enhancement](Nereids) Speedup PartitionPrunner (#31970)
This pr imporve the high QPS query by speed up PartitionPrunner

1. remove useless Date parse/format, use LocalDate instead
2. fast evaluate path for single value partition
3. change Collection.stream() to ImmutableXxx.builderWithExpectedSize(n) to skip useless method call and collection resize
4. change lots of if-else to switch
5. don't parse to string to compare dateLiteral, use int field compare instead
2024-03-09 19:45:03 +08:00
e3611f6a1d [improve](routine-load) increase routing load max_batch _size max limit (#31846) 2024-03-09 19:45:03 +08:00