Commit Graph

5501 Commits

Author SHA1 Message Date
dfaed52d32 [docker] Update compile Dockerfile in developer (#10339)
Co-authored-by: manyi <fop@freeoneplus.com>
2022-07-28 10:35:56 +08:00
d4b4c9a9bf [feature-wip](unique-key-merge-on-write) update counter, DSIP-018 (#11252) 2022-07-28 10:32:26 +08:00
0b1d06bfd6 [Vectorized] Support order by aggregate function (#11187)
Co-authored-by: lihaopeng <lihaopeng@baidu.com>
2022-07-28 09:12:58 +08:00
fccc5e3097 [improvement](log) Avoid too many 'not found query' warn log (#11048) 2022-07-28 09:12:25 +08:00
9013d5cc09 [enhancement](workflow) Optimize workflows (#11145)
1. Fine tune the trigger conditions for workflows.
2. Introduce concurrency group to cancel previous workflow trigged by the same pr.
2022-07-28 08:32:33 +08:00
28b56cf461 [community] Remove build-extension checks temporarily (#11267) 2022-07-28 08:31:03 +08:00
72d2feae99 [feature-wip] Support all date functions for datev2/datetimev2 (#11265)
* [feature-wip] (datetimev2) support convert_tz function

* [feature-wip] Support all date functions for datev2/datetimev2
2022-07-28 08:18:59 +08:00
87b1f4c071 [feature](multi-catalog) Support es datasource (#10565) 2022-07-27 23:16:17 +08:00
8128e5d4f0 [feature-wip](multi-catalog) support pruning buckets for hive bucket table (#11156)
1. Spark currently does not populate bucketed output which is compatible with Hive, so spark bucket table is not supported in current implementation.
2. Hive 3.0 introduced bucket version 2, but doris still uses hive 2.3.7 which lacks the hash function of version 2, so I refer to the implementation of Trino and copy the hash function from hive.
3. Current implementation doest not support the table with multiple bucketed columns, and only support `Equal` and `In` predicates.
2022-07-27 23:16:00 +08:00
Pxl
4e6a59df4c [Improvement][chore] add const to all operator== (#11251) 2022-07-27 21:46:47 +08:00
85d7b3089c [docker] ADD Arm Compile Dockerfile (#10600)
Add the Dockerfile file of the Docker compiled image under the ARM architecture
2022-07-27 19:55:42 +08:00
a2f39278e2 [feature](Nereids): add MultiJoin. (#11254)
Add MultiJoin.

In addtion, when (joinInputs.size() >= 3 && !conjuncts.isEmpty()), conjunct still can contains onPredicate.

Like:
```
A join B on A.id = B.id where A.sid = B.sid
```
2022-07-27 19:26:02 +08:00
b6bdb3bdbc [fix] (mem tracker) Fix MemTracker accuracy (#11190) 2022-07-27 18:59:24 +08:00
5913c7c52c [feature-wip](array-type) add function array_slice (#11054)
array_slice function returns a slice of the array.
2022-07-27 18:43:52 +08:00
42d76b54dc [fix](compile)fix compile failed after merge #11117 #10479 and #11162 (#11253)
fix the compile failed after merge #11117 #10479 and #11162
2022-07-27 17:25:06 +08:00
be2ac6aa59 [fix](auth) Forbid grant USAGE_PRIV to database.table (#11234) 2022-07-27 16:51:15 +08:00
4ea2c04676 Optimize regexp and like using hyperscan (#11116)
* use hyperscan instead of re2 for regexp and like function
2022-07-27 16:43:58 +08:00
d4fb27125a [feature-wip](unique-key-merge-on-write) row id conversion for compaction (#11149) 2022-07-27 16:32:13 +08:00
01e108cb7b [feature-wip](unique-key-merge-on-write) update delete bitmap while publish version (#11195)
1.make version publish work in version order
2.update delete bitmap while publish version, load current version rowset
primary key and search in pre rowsets
3.speed up publish version task by parallel tablet publish task

Co-authored-by: yixiutt <yixiu@selectdb.com>
2022-07-27 16:26:42 +08:00
Pxl
461a31b1f6 [enhancement][Storage] refactor create predicate (#11017) 2022-07-27 16:12:23 +08:00
daf2e27202 [feature] (Nereids) add rule to push down predicate through aggregate (#11162)
add rule to push predicates down to aggregation node

add PushDownPredicatesThroughAggregation.java
add ut for PushDownPredicatesThroughAggregation
For example:

```
  Logical plan tree:
                  any_node
                    |
                 filter (a>0 and b>0)
                    |
                 group by(a, c)
                    |
                  scan
```
transformed to:
```
                  project
                    |
               upper filter (b>0)
                    |
                 group by(a, c)
                    |
               bottom filter (a>0)
                    |
                  scan
```

Note:
'a>0' could be push down, because 'a' is in group by keys;
but 'b>0' could not push down, because 'b' is not in group by keys.
2022-07-27 15:16:15 +08:00
2db642d9d3 ignore antlr generated (#11211)
This PR proposes to ignore tracking the following file and dir auto-generated by ANTLR4:

fe/fe-core/src/main/antlr4/org/apache/doris/nereids/DorisLexer.tokens
fe/fe-core/src/main/antlr4/org/apache/doris/nereids/gen/
2022-07-27 15:07:56 +08:00
d9fab77100 [fix](planner)LateralViewRef#toSql throw NPE if it is not analyzed (#11221) 2022-07-27 14:44:27 +08:00
Pxl
a1599e3f6a [regression test]update test_conditional_function (#11244) 2022-07-27 14:39:40 +08:00
93b0e002d1 [feature-wip](unique-key-merge-on-write) add delete bitmap in read path, DSIP-018[2/3] (#11136) 2022-07-27 14:18:21 +08:00
eab8382b4a [feature-wip](unique-key-merge-on-write) add the implementation of primary key index update, DSIP-018 (#11057) 2022-07-27 14:17:56 +08:00
b74f36e009 [improvement]Use phmap for aggregation with integer keys (#11175) 2022-07-27 13:58:20 +08:00
9fc5ec48b4 [Improvement] remove UT for unused method (#11241)
* [Improvement] remove UT for unused method
2022-07-27 13:55:36 +08:00
0cdd70e9c9 [feature](nereids) support cast and extract date for TPC-H (#10999)
support cast and extract date for TPC-H, for example:

select cast(a as datetime) as d from test;
select extract(year from datetime_column) as y from test
2022-07-27 12:38:56 +08:00
6933f5e328 [fix] need materialize condition conlumn in if function (#11229) 2022-07-27 12:24:41 +08:00
4f3b4c7efc [Improvement] information_schema.columns support COLUMN KEY (#11228) 2022-07-27 12:22:17 +08:00
2ed46eee64 [bugfix] fix coredump caused by nullable const column compare to non-nullable const column (#11227) 2022-07-27 12:00:26 +08:00
05b840fcb9 [improvement] support show query stmt in show processlist (#11232) 2022-07-27 11:40:47 +08:00
e210db426c [opt] stop script opt (#11183) 2022-07-27 11:32:26 +08:00
d663497230 [refactor] (Nereids) Memo.copyIn() return a pair<newly, GroupExpression> (#10891)
When we copy a plan into memo, we will check if this plan is already in memo or it is a new plan.
In the new version of Memo.copyIn(), we encapsulate is_new and the plan's corresponding group-expression.

The is_new is used to avoid repeatedly apply rules against the same plan, and hence save optimize efforts.

Describe the overview of changes.

change Memo.copyIn() and related function interfaces
every time Memo.copyIn() is invoked, we check if the plan is already recorded by memo or not. if plan is not new, we do not put its group into stack for further optimization.
2022-07-27 10:33:25 +08:00
4d95bb4888 [regression-test]Add order-by to qt_groupby in correctness/table_valued_function (#11219) 2022-07-27 10:07:34 +08:00
eac5697b21 [Bug] Total capacity metrics was not updated after extending filesystem partition online (#11055) 2022-07-27 09:23:23 +08:00
352a3819bf [regression test]grade datatype cases to p0 to test p0 pipeline (#11208) 2022-07-27 08:21:23 +08:00
c6b0df5cbe [fix](ut) fix FE ut (#11215) 2022-07-27 08:18:31 +08:00
d67029c830 [feature-wip] (datetimev2) support cast between datetimev2 with different scales (#11198)
* [feature-wip] (datetimev2) support `cast` between datetimev2 with different scale
2022-07-26 22:36:13 +08:00
166b4a18ae [fix](image) fix bug that latestValidatedImageSeq may not be the second largest image id (#11201)
* [fix](image) fix bug that latestValidatedImageSeq may not be the second largest image id

When traversing the image files in the meta directory,
it cannot be guaranteed to be traversed in the order of imageid size

For example, if it traverses the image file with orders like: 3,5,4,1,
then latestImageSeq is 5, but latestValidatedImageSeq is 3, which is wrong.
2022-07-26 22:35:31 +08:00
8a6c9d870e [enhancement](nereids) Fix the wrong order of arguments of Assert.assertEquals (#11207) 2022-07-26 20:33:32 +08:00
2e210fb363 [bugfix]fix constant argument coredump (#11200) 2022-07-26 19:30:06 +08:00
fcdb543e17 [refactor] (Nereids) add equals for OrderKey (#11192)
LogicalSort.equals() method depends on OrderKey.equals(), which is not defined correctly.
This pr defines OrderKey.equals() to enable correctly comparing LogicalSort.
2022-07-26 18:55:27 +08:00
e99f617b21 [Refactor](Nereids) Move analysis logic to dedicated class NereidsAnalyzer. (#11171)
This PR proposes to move the analysis logic to the dedicated class NereidsAnalyzer, which has the following benefits:

Unify the analysis logic in production and test files.
Facilitate analyzing subquery plans within different scopes.
2022-07-26 18:32:07 +08:00
f5479fa80e [Sample] Add Flink Connector Sample Code (#11120)
Co-authored-by: wudi <>
2022-07-26 18:00:51 +08:00
03d466febe [UDAF](sample) impl rpc avg udaf (#11132) 2022-07-26 18:00:13 +08:00
a1ad978960 [Bug]Fix select command denied for user for specified table 2022-07-26 17:59:28 +08:00
2c34b6cf2b optimization the result check for test_json_load (#11160)
Co-authored-by: hucheng01 <hucheng01@baidu.com>
2022-07-26 17:58:30 +08:00
0f6ec629ab [Bug](fe-ut) Fix UT when test cases in package (#11177) 2022-07-26 17:57:42 +08:00