Commit Graph

5551 Commits

Author SHA1 Message Date
5bf77c8f74 [Fix] (schema change) forbid adding time type column (#28751) 2023-12-21 10:27:50 +08:00
Pxl
e4a58b7407 [Feature](materialized-view) support match logicalAggregate(logicalProject(logicalFilter(logicalOlapScan())) without agg (#28747)
support match logicalAggregate(logicalProject(logicalFilter(logicalOlapScan())) without agg
2023-12-21 10:27:33 +08:00
8759bce426 [fix](stmt):fix CreateTableStmt toSql placed comment in wrong place (#27504)
Issue Number: close #27474
Co-authored-by: tongyang.han <tongyang.han@jiduauto.com>
2023-12-21 09:57:20 +08:00
a443a39e2c [enhance](blacklist) seperate blacklist conf from heartbeat (#28638)
There is a circuit breaker lasting for 2 minutes in grpc, then if a be is down and up again, send fragments to the be fails lasting for 2 minutes.
2023-12-21 00:17:45 +08:00
a8dcca98ec [FIX](explode)fix explode array decimal (#28744)
* fix explode with array<decimal> has specific precision at old planner
2023-12-20 20:19:56 +08:00
280a01b815 [pipelineX](improvement) Support global runtime filter (#28692) 2023-12-20 20:06:26 +08:00
ea646c6682 [fix](mtmv)fix thread local reference to checkpoint's Env, causing Env to be unable to be reclaimed, resulting in excessive memory usage by FE (#28723)
when replay addTaskResult log,will create one ConnectContext,and set Env.getCurrentEnv,then store this ctx in ConnectContext.threadLocalInfo,threadLocalInfo is static,so this ctx can not be recycling,Env of replay thread also can not be recycling
2023-12-20 19:46:58 +08:00
40afee0097 [fix](Nereids) delete partition failed (#28717)
1. parser's partitionSpec changed unexpectly by PR #26492
2. delete without using should support un-equals expression
2023-12-20 19:31:53 +08:00
9a5ec43f05 [fix](nereids) Fix data wrong using mv rewrite and ignore case when getting mv related partition table (#28699)
1. Fix data wrong using mv rewrite
2. Ignore case when getting mv related partition table
3. Enable infer expression column name without alias when create mv
2023-12-20 17:59:46 +08:00
2b2d3d0eb1 [fix](meta_scanner) fix meta_scanner process ColumnNullable (#28711) 2023-12-20 17:41:38 +08:00
08066a55f1 [Enhancement](auto-partition) change the behaviour when insert overwrite an auto partition table #28683
If we specific target partition(s) when inserting overwrite an auto partition table,
before:
could create new partition
now:
behalf just like non-auto partition table
2023-12-20 17:19:21 +08:00
552a5c1632 [fix](mtmv) fix insert overwrite getExecTimeout error (#28700)
should use InsertTimeout but QueryTimeout
2023-12-20 17:08:38 +08:00
9d5b9cc452 [fix](statistics)Fix drop stats fail silently bug. (#28635)
Drop stats use IN predicate to filter the column stats to delete. The default length of IN predicate is 1024, drop table stats with more than 1024 columns may fail.
This pr is to split the delete sql based on the IN predicate length.
2023-12-20 15:41:25 +08:00
bcc32b5b26 [feature](invert index) match_regexp feature added (#28257) 2023-12-20 14:30:35 +08:00
3e85797443 [fix](Nereids) should only do bind relation in view analyzer (#28637) 2023-12-20 10:47:51 +08:00
0ae87e705e [fix](planner) ctas update datev1 to datev2 should use equals (#28641) 2023-12-20 10:31:49 +08:00
23784787b1 [fix](planner)should bind expr using no slot to correct tuple (#28656) 2023-12-20 10:29:59 +08:00
4c0080e237 [feat](Nereids) support outer join and aggregate bitmap rewrite by mv (#28596)
- Support left outer join rewrite by materialized view
- Support bitmap_union roll up to imp count(distinct)
- Support partition materialized view rewrite
2023-12-20 10:23:30 +08:00
044d7830c9 [improvement](transaction) reduce publish txn log (#28277) 2023-12-20 09:31:21 +08:00
9aa878ea1f [Fix](Job)Fixed job scheduling missing certain time window schedules (#28659)
Since scheduling itself consumes a certain amount of time, the start time of the time window should not be the current time, but the end time of the last schedule.
2023-12-20 09:21:15 +08:00
fb3b0afb85 [opt](task-assignment) use consistent hash as default task assigner and cache the consistent hash ring (#28522)
1. Use consistent hash algo as the default assigner for file query scan node
    A consistent assignment can better utilize the page cache of BE node.

2. Cache the consistent hash ring
    Init a consistent hash ring is time-consuming because there a thousands of virtual node need to be added.
    So cache it for better performance
2023-12-19 22:29:35 +08:00
d2275e73df [Fix](transactional-hive) Fix hive transactional table return empty result. (#28518) 2023-12-19 19:38:48 +08:00
7da86c37ec [fix](hive) add support for quoteChar and seperatorChar for hive (#28613)
add support for quoteChar and seperatorChar .
2023-12-19 19:35:03 +08:00
9c9249e911 [feature](inverted index) add ignore_above property to prevent long s… (#28585)
When string is too long, clucene will throw an error. 
And the string is too long to analyze. So we ignore the string in index process when the string is longer than 256 bytes by default.
We add an poperty `ignore_above` for user to customize.
2023-12-19 18:54:36 +08:00
73a3d84c5e [chore](user) Add user property parallel_fragment_exec_instance_num (#28447) 2023-12-19 18:33:01 +08:00
15e31d74e3 [feature](expr) Support kill query by query_id (#28530)
Issue Number: open #28517
2023-12-19 18:18:40 +08:00
71b7dcfb8f [feature][executor]support workload schedule policy (#28443) 2023-12-19 18:00:02 +08:00
b99ac973d2 [fix](meta) update killed query state (#) (#25917) 2023-12-19 17:44:15 +08:00
a871409259 [feature](mtmv)after creating a materialized view, if other operations fail, roll back (#28621)
after create mtmv, if create job failed,need drop mtmv
2023-12-19 17:25:31 +08:00
372a2e20f9 [fix](Nereids) stats estimation of lessThan #28444 2023-12-19 15:45:03 +08:00
a104914880 [feature](mtmv)create mtmv support refresh_partition_num (#28566)
- create/alter mtmv support refresh_partition_num
- mtmv task according to refresh_partition_num executes refresh tasks in batches
- `tasks` tvf add column `CompletedPartitions` and `progress`
- fix mtmv can not `show temp partition` and `drop temp partition`
- fix task can not get error msg when insert overwrite error
- fix when the partition field is capitalized, the verification of creating a mtmv does not pass
2023-12-19 15:09:19 +08:00
87d36d0ffa [opt](Nereids)when both Nereids and old parsers report errors, prompt error messages for the Nereids (#28580) 2023-12-19 12:04:08 +08:00
d24a1645d9 [improvement](http) add show_table_data http api (#28380)
In some cases, users need to get the data size of single replica of a table, and evaluate certain actions based on this, such as estimating the precise backup size.

Signed-off-by: nextdreamblue <zxw520blue1@163.com>
2023-12-19 11:44:33 +08:00
ddba98159e [feature](Nereids) support datev1 and datetimev1 (#28581) 2023-12-19 11:31:28 +08:00
8da9bb659d [feature](Nereids): eliminate semi join (#28588)
Eliminate Semi/Anti Join which is FALSE or TRUE.
2023-12-19 11:30:44 +08:00
88f0bee722 [Performance](point query)Opimize partition prune for point query (#28150)
* [Performance](point query)Opimize partition prune for point query
2023-12-19 11:00:13 +08:00
7b7845e695 [fix](planner) choice wrong length of string type output of union (#28514) 2023-12-19 10:43:39 +08:00
Pxl
d6514618b2 [Improvement](decimal) reduce overhead on disable check decimal overflow (#28249)
reduce overhead on disable check decimal overflow
2023-12-19 10:12:30 +08:00
6503aaf7db [feature](planner) allow HLL and QUANTILE_STATE types on duplicate and unique table (#28546) 2023-12-19 09:54:24 +08:00
66fbb22ad7 [fix](group commit) Fix some wal problems on group commit (#28554) 2023-12-19 09:51:03 +08:00
ddcfba0368 [chore](Nereids): remove SemiJoinCommute in rewriter (#28563) 2023-12-18 20:47:17 +08:00
9cf9d568c7 [feature](Nereids): add is null in predicate and put or expansion rule in rewriter (#28348)
add is null in predicate
put or expansion rule in rewrite job
2023-12-18 20:00:32 +08:00
b50bc0d2c9 [fix](Nereids) explain should fallback too if Nereids is not enable (#28475) 2023-12-18 16:44:10 +08:00
6e855dd198 [feature](sql-dialect) support convert sql use sql convertor service (#27581)
Add a new FE Config `sql_convertor_service`.
If this config is set, and the session variable `sql_dialect` is set,
Doris will try to use a standalone sql converter service to convert user input sql to
specified sql dialect. eg:

```
mysql> set sql_dialect="presto";
Query OK, 0 rows affected (0.02 sec)

Database changed
mysql> select * from db1.tbl1 where "k1" = 1;  # will be converted to select * from db1.tbl1 where `k1` = 1;
+------+------+
| k1   | k2   |
+------+------+
|    1 |    2 |
+------+------+
1 row in set (0.08 sec)
```

The sql converter service should be a http service.
The request and response body can be found in `SQLDialectUtils.java`
2023-12-18 10:32:52 +08:00
b06f3edcab [fix](meta) fix meta replay issue when upgrading from v2.0 to master (#28532)
Introduced from #27861

The `dbName` saved in `CreateTableInfo` has `default_cluster` prefix, it should be removed.

Also modify the entry of `getDb` in internal catalog. This is a cover-up plan in case there may still 
db name exist with `default_cluster` prefix.
2023-12-17 22:16:42 +08:00
9b3d4bb5bc [fix](Export) Fix an export error when lower_case_table_names=1 (#28389) 2023-12-17 20:45:43 +08:00
0f3c544260 [feature](mtmv)mtmv support partition (#28144)
- create MTMV support partition and `AUTO` refresh method
- refresh mtmv support support specified partitions
- MTMV support incremental updates
- add property `EXCLUDED_TRIGGER_TABLES` for mv
- Maintain MTMVCache after successful task refresh for plan rewrite(MTMV.getOrGenerateCache)
- show partitions add "SyncWithBaseTables"
- drop job before drop MTMV
- task tvf add "MvId,MvDatabaseId,ErrorMsg,TaskContext,RefreshMode,RefreshPartitions"
- add `NotAllowFallback` for mtmv not fallback to old planner
- add `MTMVUtils.getMTMVCanRewritePartitions() `and `Env.getCurrentEnv().getMtmvService().getRelationManager().getAvailableMTMVs()` for plan rewrite
2023-12-17 18:28:03 +08:00
2f775260d7 [bugfix](jdbc catalog) refresh catalog close jdbcclient (#28300) 2023-12-16 23:38:24 +08:00
61ad3b8dc4 [fix](nereids)LogicalCTEConsumer's output lost column info in SlotReference (#28452) 2023-12-16 23:35:09 +08:00
8c05f7a784 [refactor](cluster)(step-4) remove cluster related to Database (#27861)
Issue Number: #19897

Remove `default_cluster` prefix related to database.
When upgrading, all prefix will be removed.
2023-12-16 18:28:53 +08:00