Commit Graph

18263 Commits

Author SHA1 Message Date
1e39636fbf [fix](nereids) fix wrong result precision for add/sub (#25751) 2023-10-26 08:28:34 -05:00
9faa6e083b [fix](udf) avoid exception when fail to find udf in replay logic (#25965)
When replaying drop function edit log, the function may not be found, causing runtime exception and
FE will fail to start.
The function SHOULD be exist, but the reason is still unknown.
I change the logic to NOT throw exception if function is not found.
This is a workaround to make sure FE can start, and add some log for later debug.
2023-10-26 08:19:13 -05:00
a2a157fcde [ci](pipeline) add required of "P0 Regression PipelineX (Doris Regression)" (#25967) 2023-10-26 19:17:12 +08:00
678dc366e0 [fix](export) fix timeout property not work for export job (#25913)
Co-authored-by: caiconghui1 <caiconghui1@jd.com>
2023-10-26 18:51:57 +08:00
2679fa4ea7 [improvement](tablet clone) furthur repair replicas should be check even if they are versions catchup (#25551) 2023-10-26 18:14:40 +08:00
c3527672a5 [refactor & pipelineX][pick fix] Pick fix of predicate pushdown to pipelineX (#25953)
Co-authored-by: JackDrogon <jack.xsuperman@gmail.com>
2023-10-26 18:04:43 +08:00
c1d64a7128 [Feature](datatype) Add IPv4/v6 data type for doris (#24965) 2023-10-26 17:33:28 +08:00
9705ec760c [fix](regression-test) use correct dataset for unique_with_mow_p2 (#25653) 2023-10-26 16:54:27 +08:00
642c701819 [doc](partial update) add flink-connector docs (#25843) 2023-10-26 16:53:06 +08:00
de06a2f8b7 [minor](test) remove useless date case (#25941)
remove case
```sql
select datediff('10000-10-31', '2010-10-15')
```

because Nereids throw exception when cast '10000-10-31' to date,
but legacy planner return null on it
2023-10-26 03:16:11 -05:00
1ba8a9bae4 [feature-wip](executor)Fe send topic info to be (#25798) 2023-10-26 15:52:48 +08:00
2229d82acd [fix](Nereids) should not put bound expr into unbound group by list (#25938)
we put bound expr into unbound group by list by mistake.
This will lead to bind twice on some exprssion.
Since binding is not idempotent, below exception will be thrown for sql

```sql
select k5 / k5 as nu, sum(k1) from test group by nu order by nu nulls first
```

```
Caused by: org.apache.doris.nereids.exceptions.AnalysisException: Input slot(s) not in child's output: k5#5 in plan: LogicalProject[176] ( distinct=false, projects=[(cast(k5#5 as DECIMALV3(16, 10)) / k5#5) AS `nu`#14, sum(k1)#15], excepts=[] ), child output is: [nu#16, sum(k1)#15]
plan tree:
LogicalProject[176] ( distinct=false, projects=[(cast(k5#5 as DECIMALV3(16, 10)) / k5#5) AS `nu`#14, sum(k1)#15], excepts=[] )
+--LogicalAggregate[168] ( groupByExpr=[nu#16], outputExpr=[nu#16, sum(k1#1) AS `sum(k1)`#15], hasRepeat=false )
   +--LogicalProject[156] ( distinct=false, projects=[k1#1, (cast(k5#5 as DECIMALV3(16, 10)) / k5#5) AS `nu`#16], excepts=[] )
      +--LogicalOlapScan ( qualified=default_cluster:regression_test_nereids_syntax_p0.test, indexName=test, selectedIndexId=503229, preAgg=OFF, Aggregate function sum(k1) contains key column k1. )
    at org.apache.doris.nereids.rules.analysis.CheckAfterRewrite.checkAllSlotReferenceFromChildren(CheckAfterRewrite.java:108) ~[classes/:?]
```
2023-10-26 02:31:20 -05:00
bc606859c7 [enhancement](regression-test) add test for test_avg (#25892) 2023-10-26 14:33:49 +08:00
d6c64d305f [chore](log) Add log to trace query execution #25739 2023-10-26 14:09:25 +08:00
6ce1087c23 [enhancement](stats) Limit analyze info count (#25576)
Each analyze job info and task info would not exceed 20000 after this PR. User could adjust this by FE conf param: analyze_record_limit
2023-10-26 13:46:28 +08:00
d896debbe7 [fix](stats) Escape string when insert stats (#25815)
Co-authored-by: AKIHA <cyborgz1999@example.com>
2023-10-26 13:39:41 +08:00
af3e6f604a [fix](nereids) prune partition bug in pattern ColA <> ColB #25769
in predicate rewrite phase, we eliminate some conjuncts which contains un-interested columns.
for example: T (a, b) partition by (a)
interest cols: a
uninsterest cols: b
for parition prune,
filter "a=1 and a>b" is equivalent to "a=1",
filter "a=1 or a>b" is equivalent to "TRUE"
2023-10-26 12:06:37 +08:00
e7a3cb079b [Enhance](regression)docker hive s3 file address is determined based on the configuration (#25905)
docker hive s3 file address is determined based on the configuration custom_settings.env
2023-10-26 11:58:33 +08:00
9aa9894b11 [fix](Nereids) create table default value error msg is diff with lagacy planner (#25897)
old error msg:
default value precision: 2023-10-25 14:45:30.292 can not be greater than type precision: DATETIME(1)

new error msg:
default value precision: CURRENT_TIMESTAMP(3) can not be greater than type precision: DATETIME(1)
2023-10-25 22:36:14 -05:00
855956e503 [opt](Nereids) let column dist info check msg same with legacy planner (#25925) 2023-10-25 22:35:24 -05:00
005a36322e [opt](index compaction) optimize checks before index compaction (#25486) 2023-10-25 22:21:46 -05:00
6e1a4dbda2 [Fix](predicate pushdown) Common expression not acting on any slot should not be pushed down (#25901) 2023-10-26 11:20:12 +08:00
d7d284b4f8 [fix](Nereids) fix '' and "" in string literal (#25752)
'' represents ' in sql standard
"" represents " in sql standard
2023-10-26 11:18:21 +08:00
f322ad277d [fix](nereids) PushdownAliasThroughJoin may lost required columns from parent node (#25835) 2023-10-25 22:03:41 -05:00
31d2a9a4f5 [Enhancement](function) support fractions for convert_tz(datetimev2) (#25915)
mysql> select convert_tz('2019-08-01 01:01:02.123' , '+00:00', '+07:00');
+----------------------------------------------------------------------------------+
| convert_tz(cast('2019-08-01 01:01:02.123' as DATETIMEV2(3)), '+00:00', '+07:00') |
+----------------------------------------------------------------------------------+
| 2019-08-01 08:01:02.123                                                          |
+----------------------------------------------------------------------------------+
1 row in set (0.18 sec)
2023-10-26 10:46:47 +08:00
ad1313cce6 [refactor](pipelineX) refine _build_side_pipelines (#25871) 2023-10-26 10:32:23 +08:00
78165a3f6b [refine](pipelineX) use finish dependency in task (#25881) 2023-10-26 10:32:13 +08:00
6dd60c6ebb [Enhance](BE) Add -Wshadow-field compile option to avoid unexpected shadowing behavior (#25698)
* Fix `Tablet::_meta_lock` shadows member inherited from `BaseTablet`

* Add -Wshadow-field compile option to avoid unexpected shadowing behavior
2023-10-26 10:00:28 +08:00
da4de17d5c [improvement](function) improve date_trunc function performance when timeunit is const (#25824)
this PR #22602 have check function.
only support date_trunc(column, const), so the second must be const literal
and no need to check time unit every row.
2023-10-26 09:51:21 +08:00
77f727e0a1 [chore](compaction) Print roswet size when compaction finishes successfully (#25891) 2023-10-26 09:49:28 +08:00
a079ba763c [fix](tvf) fix 'frontends()' inconsistent with return 'show proc /fro… (#25885) 2023-10-26 09:47:58 +08:00
4434b3f32e [fix](move-memtable) use pthread mutex in LoadStreamMgr (#25882) 2023-10-26 09:19:59 +08:00
f3e6bcebd7 [github](action) re-add "Add Scope Labeler" and add new label "meta-change" (#25907)
---------

Co-authored-by: stephen <hello-stephen@qq.com>
2023-10-26 09:17:22 +08:00
77bea97d40 [test](sync)add sync after insert in test case (#25911) 2023-10-26 09:11:25 +08:00
0dcbc5ee18 [fix](backup) missing use_path_style properties for minio (#25803)
Follow #25496.
In #25496, I fixed the issue that the aws s3 properties are invalid when passing from FE to BE.
But it missed the `use_path_style` property, which is useful for minio access.
This PR fix it.
2023-10-26 01:19:28 +08:00
0fb57a6db8 [fix](meta) add sync new image timeout (#25768)
Add timeout config for sync
2023-10-25 23:46:18 +08:00
5c191e5b08 [fix](case) fix out file for test_struct_functions (#25910) 2023-10-25 23:29:18 +08:00
7f66be84d5 [fix](Outfile) Infer the column name if the column is expression in select into outfile (#25854)
This pr do two things:
1. Infer the column name if the column is expression in `select into outfile`. The rule for column name generation can be refered in pr: #24990 
2. fix bug that it will core dump if the `_schema` fails to build in the open phase in vorc_transformer.cpp


TODO:
1. Support infer the column name if the column is expression in `select into outfile` in new optimizer(Nereids).
2023-10-25 22:49:04 +08:00
e783ef716f [fix](multi-table) fix unknown source slot descriptor when load multi table (#25762) 2023-10-25 21:52:01 +08:00
04a70ecaf0 [fix](info_db) do not fetch external catalog's info in information_schema (#25844)
There is FE config `infodb_support_ext_catalog`, the default is false.
Which means that the tables in `information_schema` database will not return info of external catalog.
Because if there are too many external catalogs in Doris with lots of db/tbl (like running p0 regression tests),
querying infomation_schema db will take a long time and may causing rpc timeout.

And there is an unresolved issue that if thrift rpc timeout, the BE may be crashed in ASAN mode.
So to avoid this issue(not fix yet), this PR mainly changes:

if `infodb_support_ext_catalog` is false,
1. query info of external catalog in information_schema db is not allowed, such as

	show database like "external_catalog";
	show tables like "xxx"

2. select * from information_schema.tbl will not contains external catalogs' info

3. For external p0 regression test pipeline, set `infodb_support_ext_catalog` to true to run the tests related to external catalog
2023-10-25 21:34:36 +08:00
018abdb679 [fix](fe-ut) fix npe of fe ut (#25904) 2023-10-25 19:56:00 +08:00
d70af6b6be [Fix](regression)es catalog adds prefixes or suffixes to avoid mutual influence (#25826)
es catalog adds prefixes or suffixes to avoid mutual influence
2023-10-25 19:52:49 +08:00
3e21e4bdc2 [feature](CANCEL-ALTER-SYSTEM)decommission backend by ids (#25441)
Issue Number: close #23636
2023-10-25 19:49:38 +08:00
f31c1d858a [fix](merge-on-write) fix duplicate key in schema change (#25705)
It should be ensured that the obtained versions are continuous when calculate delete bitmap calculations in publish.
The remaining NOTREADY tablet in the schema change failure should be dropped.
When a rowset was deleted, the delete bitmap cannot be deleted until there are no read requests to use the rowset.
2023-10-25 05:59:48 -05:00
8a8ae44eee [Fix](regression)Fix statistics related regression test (#25888) 2023-10-25 05:59:13 -05:00
01d5901356 [fix](Nereids) cte should support nested name reuse (#25858)
for example:
```sql
with a as (with a as (select * from t) select * from a) select * from a;

with a as (select * from t1), b as (with a as (select * from a) select * from a) select * from b;
```
2023-10-25 18:52:14 +08:00
e8f479882d [pipelineX](local exchange) Add local exchange operator (#25846) 2023-10-25 18:45:02 +08:00
a919ef618d [fix](planner) Fix select table tablet not effective (#25378)
Fix select table tablet not effective, table distributed by random.
If tabletID specified in query does not exist in this partition, skip scan partition.
2023-10-25 18:02:27 +08:00
4bda1650e1 [docs & fix](stats) Fix tablesample init failed and some outdated contents in docs (#25603) 2023-10-25 04:38:00 -05:00
20fa1eff65 [enhancement](Nereids) Filter no data partition after partition prune (#25456) 2023-10-25 04:37:10 -05:00