Commit Graph

8541 Commits

Author SHA1 Message Date
c0054ddb2b [chore](type-info) Remove unused method in TypeInfo #16433 2023-02-06 15:49:11 +08:00
b21fdace37 [bugfix](RemoteUDF) fix remote udf retrun rpc env init error (#16325) 2023-02-06 15:47:10 +08:00
737c73dcf0 [Improvement](topn) order by key topn query optimization (#15663) 2023-02-06 15:36:05 +08:00
719b8ca340 [enhance](Nereids): polish code (#16368) 2023-02-06 12:06:55 +08:00
7bd6e32f85 [build-support](code-style): Add more config in IntelliJ-code-format.xml (#16420) 2023-02-06 12:06:27 +08:00
a17fbe2b4c [fix](MTMV) Use current db to identify the MTMV tasks and jobs (#16419)
Show MTMV JOB/Task will list all the jobs and tasks among different databases in spite of the current database.

Now use current db to identify the mtmv tasks and jobs. Only the user who did not use a database can list all job and tasks among different databases.
2023-02-06 12:03:29 +08:00
dccd04a3ba [fix](fe)predicate is wrongly pushed through CUBE function (#15831) 2023-02-06 11:29:15 +08:00
f2fd47f238 [Improve](row-store) support row cache (#16263) 2023-02-06 11:16:39 +08:00
a390252893 [fix](keywork) add TIME to keyword (#16277) 2023-02-06 11:07:11 +08:00
d10d6ec906 Add a version label to the jdbc multi-catalog (#16423) 2023-02-06 09:49:12 +08:00
f940cf4cf6 [fix](multi-catalog) fix recursive get schema cache bug (#16415) 2023-02-06 09:23:07 +08:00
d2044c2dc5 [typo](docs) fix docs,chinese characters error (#16387) 2023-02-05 15:47:09 +08:00
b1b2697cc7 [fix](iceberg) fix iceberg catalog (#16372)
1. Fix iceberg catalog access s3
2. Fix iceberg catalog partition table query
3. Fix persistence
2023-02-05 13:15:28 +08:00
c689b8918a [enhancement](runtimefilter) no need wait for fragment because two phase exec fragment (#16418)
call pthread condition wait may block brpc thread.
no need wait for fragment because two phase exec fragment already guarantee that the fragment instance exits when runtime filter comes. So that I remove the condition wait code.

Co-authored-by: yiguolei <yiguolei@gmail.com>
2023-02-05 10:09:31 +08:00
09870098af [fix](func) fix core dump when the pattern of the regexp_extract_all function does not contain subpatterns (#16408) 2023-02-05 01:16:54 +08:00
059cf58151 [fix](vertical compaction) fix uint32_t init value (#16377) 2023-02-05 00:05:35 +08:00
df3a6e2412 [fix](fe)only set column info for slots in sortTupleDesc (#16407) 2023-02-04 23:14:25 +08:00
ca7b2e27a8 [regression-test](function) add regression test for money_format with truncate (#16052) 2023-02-04 23:10:01 +08:00
dd63897757 [fix](be)the set operation node should accept both nullable and non-nullable data from child node (#16126) 2023-02-04 23:08:59 +08:00
c488e67bd3 [Bug](vectorized)Fix reading date and datetime types conversion error (#16252)
from pr #15612, Type conversion error when reading date and datetime types



---------

Co-authored-by: wudi <>
2023-02-04 23:05:00 +08:00
d2b5015d3f [enhancement](profile) add the profile counter RawRowsRead to record the rows read from the parquet file (#16328) 2023-02-04 22:59:34 +08:00
1deefd7f72 [typo](docs)Remove doris manager doc (#16278)
* [typo](docs)remove doris manager docs

* fix
2023-02-04 22:54:53 +08:00
c3a6eb4f9a [Refactor](function) remove useless function get to create column (#16333)
remove unless create_column to redurce the unless new operator
2023-02-04 22:54:14 +08:00
e5d624ce9c [Enhancement](profile) lazy load profileContent string (#16354)
Sometimes the profileContent of ProfileElement is very large (more than 30MB), and this kind of huge string object may cause performance problems for gc. But we use them only when we invoke profile relevant restful apis (such as /profile/{format}/{query_id}, /api/profile and so on), so we need to lazy load them.
2023-02-04 22:53:44 +08:00
458adf6c91 [improvement](jdbc) refator jdbc of copy result set by batch (#16337)
have test jdbc external table with read,  10%+ performance improvement after optimization
2023-02-04 22:51:55 +08:00
1069d4f91e [Enhancement](Stmt)ShowPartitionsStmt support forward to master #16359
Co-authored-by: duanxujian <duanxujian@jd.com>
2023-02-04 22:51:19 +08:00
63d57b83f3 [fix](memory) Fix request jemallloc metrics wait lock je_malloc_mutex_lock_slow #16381
MetricRegistry::trigger_all_hooks holds the metrics lock and is stuck in get_je_metrics, to_prometheus is waiting for MetricRegistry::trigger_all_hooks to release the lock, so get_je_metrics is no longer called in MetricRegistry::trigger_all_hooks.
2023-02-04 22:49:22 +08:00
bd8ef4edeb [fix](cooldown) Fix core in remove_all_remote_rowsets (#16374) 2023-02-04 22:31:38 +08:00
1473a9716b [fix](cooldown) Fix bug in report tablet (#16414) 2023-02-04 22:30:57 +08:00
1146bde695 [feature-wip](MTMV) Support refresh mtmv (#16218)
Support using this sql to refresh mtmv manually. It can generate a mtmv task right now.

```
REFRESH MATERIALIZED VIEW test_mv_view [complete];
```

You can use `show mtmv task` to show the latest task.

In this pr, I also try to clear the mtmv tasks when drop the mtmv to make sure test suite to be right
2023-02-04 20:17:45 +08:00
60386a46a6 fix ADMIN-CHECK-TABLET typo (#16389) 2023-02-04 18:44:08 +08:00
918004c016 [Bug](date) Fix BE crash caused by function datediff (#16397)
* [Bug](date) Fix BE crash caused by function `datediff`

* update
2023-02-04 18:43:23 +08:00
712fa8c538 [typo](docs) Fixed some display errors caused by MD syntax errors (#16395) 2023-02-04 18:12:05 +08:00
ad78f313be [Improvement](statistics) show analysis job info (#16305)
Supports query analysis job info.

syntax:

```SQL
SHOW ANALYZE
    [TABLE | ID]
    [
        WHERE
        [STATE = ["PENDING"|"RUNNING"|"FINISHED"|"FAILED"]]
    ]
    [ORDER BY ...]
    [LIMIT limit];
```
example:

```SQL
SHOW ANALYZE test_table1 WHERE state = 'FINISHED' ORDER BY col_name LIMIT 1;
```

result:

| job_id  | catalog_name | db_name              | tbl_name    | col_name | job_type | analysis_type | message | last_exec_time_in_ms | state    | schedule_type |
| ------ |  ------------ | -------------------- | ----------- | -------- | -------- | ------------- | ------- | -------------------- | -------- | ------------- |
| 10086   | internal     | default_cluster:test | test_table1 | pv       | MANUAL   | FULL          |         | 2023-02-01 09:36:41          | FINISHED | ONCE          |
2023-02-03 23:21:47 +08:00
f443ebfd9a [Improvement](statistics) optimise histogram keyword (#16369) 2023-02-03 23:02:41 +08:00
125b60b4b9 [improvement](compatibility) add DATA_TYPE in information schema for new types #16391
Add DATA_TYPE in information schema for types: datev2, datatimev2, decimal, jsonb. It was 'unknown' for these types and cause problem for tools such as BI using information schema.
2023-02-03 22:28:42 +08:00
b621d1d68a [docs](docs) update en docs (#16257) 2023-02-03 22:01:43 +08:00
4f778c38a1 [feature](nereids) support explore 4 phase aggregation (#16298)
support 4 phase Aggregation.
example: 
`select count(distinct k1), sum(k2) from t`
suppose t.k0 is distribute key.

we have plan 
```
Agg(DISTINCT_GLOBAL)
   |
Exchange(Gather)
  |
Agg(DISTINCT_LOCAL)
  |
Agg(GLOBAL)
  |
Exchange(hash distribute by k1)
 |
Agg(LOCAL) 
 |
scan
```

limitations:
1. only support sql with one distinct.
not support:`select count(distinct k1), count(distinct k2) from t`
2. only support sql with distinct one column
not support: `select count(distinct k1, k2) from t`
2023-02-03 21:51:10 +08:00
56be2e5a1a [bugfix](disk balance) fix new rowset time check when add tablet (#16261)
In disk balancer, if a tablet is in highly concurrent load,
new rowset creation time(which use current time) may be same as the
newest rowset, and when add tablet, there has a creation time check
that new_time must bigger than old time, so disk balancer will failed
many times and makes this tablet lose many verisons as migration will
block writes.
2023-02-03 21:49:37 +08:00
54c85e36ad [Fix](point query) OlapScanNode reuslt could be memleak since it's cached (#16406)
Cached OlapScanNode each time call `addScanRangeLocations` will add TScanRangeLocations to result.
So `result` could grow too large and lead `getReplicaNumPerHost` a cpu hot spot in it's loop.
2023-02-03 21:42:53 +08:00
5e232a30d8 [fix](planner) Doris returns empty sets when select from a inline view (#16370)
Doris always delays the execution of expressions as possible as it can, so as the expansion of constant expression. Given below SQL:

```sql
select i from (select 'abc' as i, sum(birth) as j from  subquerytest2) as tmp
```

The aggregation would be eliminated, since its output is not required by the outer block, but the expasion for constant expression would be done in the final result expr, and since aggreagete output has been eliminate, the expasion would actually do nothing, and finally cause a empty results.

To fix this, we materialize the results expr in the inner block for such SQL, it may affect performance, but better than let system produce a mistaken result.
2023-02-03 21:23:52 +08:00
a5d9aca7ba [test](Nereids) enable G-K and L-Q scalar function regression test cases (#16169)
1. delete invalid signature of nvl function 
2. fix some test cases that failed because of malformed function name
2023-02-03 21:18:43 +08:00
87fbb8341a [Bug](datev2) Fix bug when cast datev2 to date (#16394) 2023-02-03 20:50:16 +08:00
f94a78ab4a [Fix](topn) fix wrong nullable cast for RowId column and use heapsorter for two phase read (#16399)
convert_nullable_flags does not contain nullable info for RowID column, but valid_column_ids contain RowID column, nullable falg will be undefined for RowID column
2023-02-03 20:49:45 +08:00
929b31bd3c [Feature](Nereids) Support CaseWhen with subquery (#16385)
Co-authored-by: jianghaochen <jianghaochen@meituan.com>
2023-02-03 18:20:47 +08:00
3891083474 [fix](Nereids): fix some bugs in DpHyper (#16282) 2023-02-03 18:19:48 +08:00
3f4ca3da32 [Bug](CURRENT_TIMESTAMP) Fix wrong default value after schema change (#16364)
* [Bug](CURRENT_TIMESTAMP) Fix wrong default value after schema change

* update

* update
2023-02-03 17:06:24 +08:00
4df70becb9 [refactor](reader) refactor broker_file_reader to get _client in the constructor (#16021) 2023-02-03 16:51:19 +08:00
13cb81a724 [fix](broker) Fix bug that heavy broker load may failed due to BrokerException which indicate the fd is not owned by client (#16350)
Co-authored-by: caiconghui1 <caiconghui1@jd.com>
2023-02-03 15:06:45 +08:00
6294b29f0a [chore](regression-test) Remove array config in regression test (#16376)
The fe config "enable_array_type" is not used, this commit removes it from regression test.
2023-02-03 14:44:03 +08:00