Commit Graph

11319 Commits

Author SHA1 Message Date
0bed52d86b [bugfix](inverted index) fix not writing inverted index file if upgrade from old version #20945
The metadata indexes in MaterializedIndexMeta is introduced in 2.0-beta version and it's relied by writing inverted index. When upgrade doris from old version to 2.0-beta, the metadata indexes in MaterializedIndexMeta is empty and no inverted index file will be written.

This PR add compatibility logic to use metadata indexes in table if indexes in MaterializedIndexMeta is empty and indexes in MaterializedIndexMeta indexId is equal to table baseIndexId.

This PR also fix metadata indexes missing for schema change.
2023-06-19 09:11:36 +08:00
1efd345963 [Enhancement](table) adding information_schema.parameters table (#20259)
this is a virtual table for compatibility information_schema parameters table
2023-06-19 09:05:46 +08:00
8af77315e0 [fix](multi-catalog)fix s3 check, complete catalog properties (#20591)
stability and some fixes

1. fix s3 availability check
2. add independent  minio properties
3. add job conf cache
4. remove extra s3 propertie when convert catalog properties
5. add some ut case to check conveted properties
2023-06-18 20:21:59 +08:00
8366ce7a81 [enhancement](insert-stmt) Make insert into tbl values(); compatible with mysql (#20694) 2023-06-18 19:56:07 +08:00
785aeea460 [minor](scripts) remove release download scripts (#20940) 2023-06-18 19:42:20 +08:00
d6b7640cf0 [fix](inverted index) fix check failed for block erase temp column (#20924) 2023-06-18 19:27:48 +08:00
48065fce19 [bugfix](merge-on-write) optimize rowset tree and tablet header lock (#20911) 2023-06-18 19:26:02 +08:00
ac3290021d [fix](Nereids): MergeSetOperations can merge SetOperation ALL. (#20902) 2023-06-18 17:49:03 +08:00
5ae14549d1 [Feature](Nereids) support delete using syntax to delete data from unique key table (#20452) 2023-06-18 16:22:21 +08:00
905ba3fa86 [fix](Nereids & planner) fix 3 plan errors about mv selection (#20939)
fix 3 issues about mv selection:
1. in legacy planner, should not consider aux expr when do mv selection
2. in Nereids, should not hit mv when agg function on value column is distinct
3. select mv cannot rewrite agg function in on table with column name in uppercase
2023-06-18 12:45:34 +08:00
c6d78c2d7b [fix](Nereids) cannot get output when partitioned table without any parititon (#20937) 2023-06-18 12:44:36 +08:00
dd482b74c8 [Test](regression) CCR syncer thrift interface regression test (#20935) 2023-06-18 00:13:09 +08:00
ce9a20a375 [enhancement](merge-on-write) format logs about MoW and add more stats for publish (#20853) 2023-06-17 23:14:28 +08:00
06806dc737 [typo](doc) fix bucket description and style (#20922) 2023-06-17 21:56:00 +08:00
0585a1f004 [fix](compaction) fix time series compaction policy to adjust vertical compaction max segment size (#20889) 2023-06-17 20:32:34 +08:00
cc3f9ed9b7 [Fix](fd) fix fd limit over 100% (#20778) 2023-06-17 19:54:10 +08:00
0a59580aa4 [Enhancement](function) fix compatibility issues of sum/count during upgrade process (#20890)
in order to solve agg of sum/count is not compatibility during the upgrade process.
in PR [refactor](agg_state) refactor agg_state type to support fixed length object type #20370 have changed the serialize type and serialize column of sum/count
before is ColumnVector, now sum/count change to use ColumnFixedLengthObject
so during the upgrade process, will be not compatible if exist Old BE and Newer BE
2023-06-17 12:51:01 +08:00
72d8e41760 [fix]( regression-test ) mv_p0/test_drop_partition_from_index/test_drop_partition_from_index.groovy #20915 2023-06-17 10:39:30 +08:00
aea719627d Revert "[enhencement](streamload) add on_close callback for httpserver (#20826)" (#20927)
This reverts commit 5b6761acb86852a93351b7b971eb2049fb567aaf.
2023-06-17 10:39:02 +08:00
82af1507e7 [fix](testcase) fix case failure of strict insert (#20930) 2023-06-17 09:41:15 +08:00
e5015b472e [Fix](Error) fix some typo error in code (#20612) 2023-06-17 08:34:26 +08:00
15a4eca467 [typo](docs) Delete invalid streaming hint. (#20929) 2023-06-17 01:03:48 +08:00
fe18cfa2fb [improvement](pg jdbc)Support for automatically obtaining the precision of the postgresql timestamp type (#20909) 2023-06-16 23:41:09 +08:00
367f64e7bd [improvement](jdbc) support insert autoinc and default value column to mysql (#20765)
In JdbcMysqlClient, I've added methods to retrieve auto-increment and default value columns from MySQL. These columns are then mapped into Doris metadata to make them visible to users.

When handling the InsertStmt into an execution plan, Doris used to automatically fill in NULL or default values for columns not specified in the InsertStmt. However, in the JDBC catalog, we don't need Doris to handle these unspecified columns, so I've made changes to skip them directly.

For the insert prepared statement required for writing, our previous behavior was to obtain all columns for placeholders. So, the change I made is to pass in the columns processed by the execution plan during the sink task generation stage for dynamic generation.
2023-06-16 23:38:11 +08:00
e834637a5b [improvement](ck jdbc) Support for automatically getting the precision of clickhouse's datetime64 type (#20887) 2023-06-16 23:37:30 +08:00
bf197ee8d2 [opt](nereids) adjust cost model for BroadCastJoin and PartitionJoin (#20713)
we add penalty for broadcast join (bc for brief in the following).
the intuition of penalty is as follow:
1. if the build side is very small (< 1M), we prefer bc, and set `penalty=1`, which means no penalty
2. if build side is more than 1M, we consider the ratio of the probe row count to the build row count. the less the ratio is, the higher penalty is.

this pr has positive impact on tpch queries. Only q3 is changed. in out test (tpch 1T, 3BE) q3 improved from 5.1sec to 2.5 sec.
this pr has positive impact on tpcds queries. test on tpcds sf100 (3BE), cold run improve from 163 sec to 156 sec, hot run improves from 155 sec to 149 sec
2023-06-16 22:49:04 +08:00
bb4f10b457 [fix](Nereids) lost having when analyze sort-having-agg (#20914) 2023-06-16 22:13:28 +08:00
7ee744ff5a [opt](Nereids) add more unexpected expression check (#20901)
1. check sub-query after rewrite, should not meet any sub-query there
2. check below expression on specific plan
  - Aggreagate
    - TableGeneratingFunction
  - Filter
    - AggregateFunction
    - GroupingScalarFunction
    - TableGeneratingFunction
    - WindowExpression
  - Generate
    - AggregateFunction
    - GroupingScalarFunction
    - WindowExpression
  - Having
    - TableGeneratingFunction
    - WindowExpression
  - Join
    - AggregateFunction
    - GroupingScalarFunction
    - TableGeneratingFunction
    - WindowExpression
  - Project
    - TableGeneratingFunction
  - Sort
    - AggregateFunction
    - GroupingScalarFunction
    - TableGeneratingFunction
    - WindowExpression
  - Window
    - GroupingScalarFunction
    - TableGeneratingFunction
2023-06-16 22:12:39 +08:00
483d96368c [doc](insert-overwrite) add related doc (#20657) 2023-06-16 21:11:04 +08:00
ab32299ba4 [feature](nereids) Support multi target rf #20714
Support multi target runtime filter, mainly for set operation, such as union/intersect/except.
2023-06-16 20:26:00 +08:00
1cc611a913 [fix](match) fix regression case test_index_match_select and test_index_match_phrase (#20860)
1. add more checks for match expression in nereids:
  - match expression only support in filter
  - match expression left child and right child must all be string type
  - left child for match expression must be sloftRef, right child for match expression must be Literal

2. to fix regression case test_index_match_select and test_index_match_phrase
2023-06-16 20:18:29 +08:00
5dc0f90c7f [opt](Nereids) revert convert IN with 2 options to OR expression rule (#20894)
revert this rule because it has negative effect on predicate push-down-to-storage-layer
2023-06-16 19:11:37 +08:00
6cde7bc8ad [feature](Nereids) just reserve logical expression in memo after do dphyp (#20843)
After DPHyp, clear all physicalExpression and other,
just keep logicalExpression as original plan as input of cascades optimize.
2023-06-16 18:12:39 +08:00
baed26acc6 [fix](merge-on-write) fix publish timeout (#20891) 2023-06-16 18:11:41 +08:00
536bf56a35 [fix](planner) strip trailing zeros when cast string literal to decimal literal (#20743) 2023-06-16 17:08:36 +08:00
2e295a1ee9 [Enhancement](http) unify http auth config (#20864) 2023-06-16 16:55:46 +08:00
22aee21208 [fix](nereids)disable tpcds query59 plan shape check #20886
ds59 plan shape is not stable.
we will fix it in future
2023-06-16 16:50:40 +08:00
e63739e729 [fix](nereids) add regression test for stats analyze and fix some bugs (#20865)
1. Add regression test case for analyze to make sure show/drop/analyze stats would work as expected
2. Remove useless code, which would block the clean for expired stats
3. Fix bug of DropStats,  before this PR drop the whole table stats would casuse a NPE exception when parsing stmt
2023-06-16 16:43:49 +08:00
0bd9aecfcc [Fix](planner&Nereids) fold constant invalid yyyy-mm-31 to the last day of month incorrectly (#20685)
currently, expression: cast('20230631' as date) will be evaluate to 2023-06-30 incorrectly, and '20230632' will be null, we fix the bug and evaluate all the invalid date to null.
2023-06-16 16:23:02 +08:00
5573858cb4 [Enhance](regression-test) use another db than test_query_db for nereids_p0 (#19467)
replace test_query_db to nereids_test_query_db in nereids_p0 directory
split test_join into five files to run faster.
2023-06-16 16:11:14 +08:00
c3b9e99350 [fix](regress-test)update config for disable_nested_complex_type (#20735) 2023-06-16 15:51:41 +08:00
97135a1cbb [Feature] (json)add json_contains function (#20824) 2023-06-16 15:10:12 +08:00
ccfd6f1d23 [fix](nereids) only setHasColocatePlanNode when currentFragment's data partition is not RANDOM (#20885) 2023-06-16 14:54:22 +08:00
f741129ffe [Fix](regression-test) fix incorrect explain requirement when globally enable nereids (#20809) 2023-06-16 14:51:22 +08:00
731ce5802e [Test][Framework] add enableCacheData option for test framework (#20874) 2023-06-16 14:12:21 +08:00
1a62c79970 [fix](replica) do not delete the only one replica (#20872) 2023-06-16 13:57:18 +08:00
f80bf3c1bc [fix](compaction) fix time series compaction policy (#20837) 2023-06-16 13:25:55 +08:00
b7a50a09fe [Opt](orc-reader) Optimize orc reader by dict filtering. (#20806)
Optimize orc reader by dict filtering.  It is similar with #17594.
Test result
**ssb-flat-100**: (3 nodes)
| Query        | before opt           | after opt  |
| ------------- |:-------------:| ---------:|
Q1.1 | 1.239 | 1.145
Q1.2 | 1.254 | 1.128
Q1.3 | 1.931 | 1.644
Q2.1 | 1.359 | 1.006
Q2.2 | 1.229 | 0.674
Q2.3 | 0.934 | 0.427
Q3.1 | 2.226 | 1.712
Q3.2 | 2.042 | 1.562
Q3.3 | 1.631 | 1.021
Q3.4 | 1.618 | 0.732
Q4.1 | 2.294 | 1.858
Q4.2 | 2.511 | 1.961
Q4.3 | 1.736 | 1.446
total | 22.004 | 16.316
2023-06-16 13:11:37 +08:00
722839e118 [Fix](multi-catalog) Fix hive transaction table regression test by adding hive-docker missing configurations. (#20832)
Fix hive transaction table regression test test_transactional_hive by adding hive-docker missing configurations of #20679. Hive need to be set these configurations to do compaction.
2023-06-16 13:08:24 +08:00
1ec7f0e50a [fix](memory) memory management thread exits gracefully
memory_maintenance_thread, memory_gc_thread, load_channel_tracker_refresh_thread, memory_tracker_profile_refresh_thread
2023-06-16 11:40:24 +08:00