Commit Graph

7521 Commits

Author SHA1 Message Date
ccbcf879b5 [test](mtmv) Add materialized view availability regression test (#30769)
Add materialized view availability regression test

when mv refresh_time is in the grace_period(unit is second), materialized view will be use to
query rewrite regardless of the base table is update or not
when mv refresh_time is out of the grace_period(unit is second), will check the base table is update or not
if update the materialized view will not be used to query rewrite
2024-02-04 22:21:16 +08:00
9e76592297 Support analyze materialized view. (#30540) 2024-02-04 22:21:16 +08:00
383850ef12 [Opt](multi-catalog) Opt split assignment to resolve uneven distribution. (#30390)
[Opt] (multi-catalog) Opt split assignment to resolve uneven distribution. Currently only for `FileQueryScanNode`.

Referring to the implementation of Trino, 
- Local node soft affinity optimization. Prefer local replication node.
- Remote split will use the consistent hash algorithm is used when the file cache is turned on, and because of the possible unevenness of the consistent hash, the split is re-adjusted so that the maximum and minimum split numbers of hosts differ by at most `max_split_num_variance` split.
- Remote split will use the round-robin algorithm is used when the file cache is turned off.
2024-02-04 14:28:38 +08:00
b275cb0f44 [feature](mtmv) mtmv support workload group (#29595)
MTMV supports controlling the resource usage of refresh tasks by setting the name of workload group
about workload group : https://doris.apache.org/zh-CN/docs/dev/admin-manual/workload-group
2024-02-04 14:28:38 +08:00
6442663735 [Function](exec) upport atan2 math function (#30672)
Co-authored-by: Rohit Satardekar <rohitrs1983@gmail.com>
2024-02-04 14:28:38 +08:00
36b2712709 [chore](Nereids) turn on nereids dml when update to 2.1 (#30776) 2024-02-04 14:28:38 +08:00
3cc409b14f [bug](function) fix date_sub function failed when arg type is datev2 (#30443)
* [bug](function) fix date_sub function failed when arg type is datev2

* update
2024-02-04 14:28:38 +08:00
d749fc3d27 [improvement](binlog) Change BinlogConfig default TTL_SECONDS to 86400 (1day) (#30771)
* Change BinlogConfig default TTL_SECONDS to 86400 (1day)

Signed-off-by: Jack Drogon <jack.xsuperman@gmail.com>

* Fix binlog.ttl_seconds in regression test

Signed-off-by: Jack Drogon <jack.xsuperman@gmail.com>

---------

Signed-off-by: Jack Drogon <jack.xsuperman@gmail.com>
2024-02-04 14:28:38 +08:00
5aed3abb8a [Fix](Nereids) Fix rewrite by materialized view fail when join input has agg (#30734)
materialized view definition is as following, and the query sql is the same
when outer group by use the col1 in the inner group, which can be rewritten by materialized view

select
t1.o_orderdate,
t1.o_orderkey,
t1.col1
from
(
select
o_orderkey,
o_custkey,
o_orderstatus,
o_orderdate,
sum(o_shippriority) as col1
from
orders
group by
o_orderkey,
o_custkey,
o_orderstatus,
o_orderdate
) as t1
left join lineitem on lineitem.l_orderkey = t1.o_orderkey
group by
t1.o_orderdate,
t1.o_orderkey,
t1.col1
2024-02-03 20:27:04 +08:00
4f0414d13e [fix](Nereids) date >= simplify to > by mistake (#30765) 2024-02-03 20:26:04 +08:00
d99bb51d36 [fix](legacy-planner) fixed loss of BetweenPredicate rewrite on reanalyze in legacy planner (29798) (#30328) 2024-02-03 20:26:04 +08:00
a3a73162e5 [Fix](Job)Fix One-Time type JOB parameter verification error (#30779) 2024-02-03 20:26:04 +08:00
8a0ea4b651 [enhancement](Nereids): datetime support microsecond overflow (#30744) 2024-02-03 20:26:04 +08:00
4f8730d092 [improvement](jdbc catalog) Optimize connection pool parameter settings (#30588)
This PR makes the following changes to the connection pool of JDBC Catalog
1. Set the maximum connection survival time, the default is 30 minutes

-   Moreover, one-half of the maximum survival time is the recyclable time,
-   One-tenth is the check interval for recycling connections

2. Keepalive only takes effect on the connection pool on BE, and will be activated based on one-fifth of the maximum survival time.
3. The maximum number of existing connections is changed from 100 to 10
4. Add the connection cache recycling thread on BE, and add a parameter to control the recycling time, the default is 28800 (8 hours)
5. Add CatalogID to the key of the connection pool cache to achieve better isolation, requires refresh catalog to take effect
6. Upgrade druid connection pool to version 1.2.20
7. Added JdbcResource's setting of default parameters when upgrading the FE version to avoid errors due to unset parameters.
2024-02-03 20:26:03 +08:00
ac681e8e8c [ehmancement](binlog) Add show proc '/binlog' impl (#30770)
Signed-off-by: Jack Drogon <jack.xsuperman@gmail.com>
2024-02-03 20:26:03 +08:00
e413dbec91 [fix](nereids)need substitute agg function using agg node's output if it's in order by key (#30704) 2024-02-03 20:25:25 +08:00
Pxl
5687ca977d [Bug](java-udf) fix core dump when javaudf input 0 row block (#30720)
fix core dump when javaudf input 0 row block
2024-02-03 20:25:25 +08:00
Pxl
0f47f7f389 [Feature](runtime filter) normalize ignore runtime filter (#30152)
normalize ignore runtime filter
2024-02-03 20:24:39 +08:00
e5bdc369e2 [runtimefilter](nereids)push down RF into cte producer (#30568)
* push down Rf into CTE
2024-02-03 20:24:39 +08:00
9889683ae3 [Feature](Job)STARTS and AT allow setting current_timestamp (#30593) 2024-02-03 20:24:39 +08:00
e21c9dca9c [fix](mtmv)compatibility metadata without refreshsnapshot #30735 2024-02-02 13:31:47 +08:00
94eedd8ea4 [Enhancement](function)make SUBSTRING_INDEX function DEPEND_ON_ARGUMENT (#30392) 2024-02-02 13:31:47 +08:00
9b7c6af581 [Fix](JDK17) Fixed that BE could not be started using JDK17 (#30286)
Issue Number: #30484

This is because hadoop-client-api relies on hadoop-common.
In the case of JDK17, it will still include hadoop-common.
2024-02-01 23:14:14 +08:00
318bd3f9de [Cherry-Pick][improvement](stmt) Add fuzzy matching of label in show transaction (#30725)
* Add fuzzy matching of label in show transaction

* fix
2024-02-01 23:04:06 +08:00
3315c16383 [enhance](function) refactor from_format_str and support more format (#30452) 2024-02-01 19:08:37 +08:00
fb0d712096 [fix](multi-catalog)access HMS need ugiDoAs (#30595) 2024-02-01 19:08:37 +08:00
c8b0840e6c [improve](backup) Skip all backup/restore jobs if max allowd option is set to 0 (#30677)
If there are too many backup/restore jobs, it may cause OOM. This PR allows the user to skip all backup/restore jobs if max_backup_restore_job_num_per_db is set to 0.
2024-02-01 19:01:08 +08:00
7935dc9fae [fix](routine-load) update partition offset cache timely to avoid negative lag #30455 2024-02-01 19:01:08 +08:00
7f0d3d9dcb [Fix](nereids)Disable getting partition related table and column when self join (#30650)
* add left anti join ut

* forbidden the self join partition column get

* [Fix](nereids) Disable getting partition related table and column when self join

* fix code style
2024-02-01 19:01:08 +08:00
ecf282ca92 [improve](catalog recycle bin) show data size info when show catalog recycle bin (#30592) 2024-02-01 19:00:51 +08:00
379b541494 [enhance](mtmv)use version instead of timestamp (#30599)
MTMV records snapshot information for each refresh of data, used to compare whether partitions need to be updated
2024-02-01 19:00:51 +08:00
b86bd2672f [fix](Nereids) add logical project to prevent extra wrong column (#30459)
Issue Number: close #30264
2024-02-01 19:00:50 +08:00
1ab37737ae [Test](Nereids) Add SSB dataset to test materialized view rewrite (#30528)
* [Test](Nereids) Add SSB dataset to test materialized view rewrite

* rollback irrelevant code

* fix sort slot 0
2024-02-01 19:00:50 +08:00
Pxl
8d906c48e8 [Bug](insert) try to fix invalid slot when insert (#30570)
try to fix invalid slot when insert
2024-02-01 19:00:50 +08:00
1f754c55d5 [chore](show replica) show replica print path (#30402) 2024-02-01 19:00:50 +08:00
4bfb4c134c [MINOR](fe) remove unused member in (#30664) 2024-02-01 19:00:50 +08:00
e1d9071bc8 [fix](compatibility)remove cluster prefix in user manager #30655 2024-02-01 19:00:50 +08:00
882ba2e1a1 [fix](Cooldown) enhance the policy existence check logic when drop storage policy (#30404) 2024-02-01 19:00:13 +08:00
7c7a423828 Sync stats cache while task finished, doesn't need to query column_statistics table. (#30609) 2024-01-31 23:53:40 +08:00
cc5205f6d1 [fix](JDK17) The objects stored in PriorityQueue must implement the Comparable interface (#30050) (#30625)
Issue Number:  #30484 

The objects stored in PriorityQueue must implement the Comparable interface or passed into the customized `Comparator`. 

If we don't do this, run the program in the JDK17 environment will report an exception:
```java
Caused by: java.lang.AssertionError: Expect exception msg contains 'query wait timeout', but meet
'java.sql.SQLException: ClassCastException,
msg: class org.apache.doris.resource.workloadgroup.QueueToken cannot be cast to class java.lang.Comparable 
(org.apache.doris.resource.workloadgroup.QueueToken is in unnamed module of loader 'app'; java.lang.Comparable is in module java.base of loader 'bootstrap')'
```
2024-01-31 23:53:40 +08:00
9310dbf3fd [fix](statistics)Fix stats cleaner delete partition stats bug (#30648)
When a partition in OlapTable is removed, we should use partition id to delete the related stats record in column_statistics. Before, it was using id, which may cause delete useful stats of other partition.
2024-01-31 23:53:40 +08:00
eb2aafcd49 [fix](insert into) 'output_tuple_slot_num should be equal to output_expr_num' when insert into unique table with sequence column map (#30635) 2024-01-31 23:53:40 +08:00
73371d44f8 [fix][refactor] refactor schema init of externa table and some parquet issue (#30325)
1. Skip parquet file which has only 4 bytes length: PAR1
2. Refactor the schema init method of iceberg/hudi/hive table in hms catalog
    1. Remove some redundant methods of `getIcebergTable`
    2. Fix issue described in #23771
3. Support HoodieParquetInputFormatBase, treat it as normal hive table format
4. When listing file, skip all hidden dirs and files
2024-01-31 23:53:40 +08:00
c28ced1ebb [Feature](executor)Insert select limited by WorkloadGroup #30610 2024-01-31 23:53:40 +08:00
8aaae4c873 [fix](Nereids) div priority is not right (#30575) 2024-01-31 23:53:40 +08:00
71fd3a6b12 [feature](fe) support ANSI standard keyword for CURRENT_XXX #30550
support ANSI standard keywords:

CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
LOCALTIME
LOCALTIMESTAMP
CURRENT_USER
mysql> SELECT CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, LOCALTIME, LOCALTIMESTAMP, CURRENT_USER;
+--------------+--------------+---------------------+-----------+---------------------+--------------+
| CURRENT_DATE | CURRENT_TIME | CURRENT_TIMESTAMP   | LOCALTIME | LOCALTIMESTAMP      | CURRENT_USER |
+--------------+--------------+---------------------+-----------+---------------------+--------------+
| 2024-01-31   | 03:53:20     | 2024-01-31 03:53:20 | 03:53:20  | 2024-01-31 03:53:20 | 'root'@'%'   |
+--------------+--------------+---------------------+-----------+---------------------+--------------+
1 row in set (0.07 sec)
2024-01-31 23:53:39 +08:00
19f57b544e support cosh math function (#30602)
Co-authored-by: Rohit Satardekar <rohitrs1983@gmail.com>
2024-01-31 23:53:39 +08:00
a640ca5aaf [fix](planner)LateralViewRef's toSql method is not correctly implemented (#30590) 2024-01-31 23:53:39 +08:00
f35803b7a0 [feature](pipeline-load) enable pipeline load by default (#30581) 2024-01-31 23:53:39 +08:00
8b61b7c6cd [exec](function) Add tanh func (#30555) 2024-01-31 23:53:39 +08:00