Commit Graph

18263 Commits

Author SHA1 Message Date
6a1e3d3435 [fix](cooldown)Fix bug for single cooldown compaction, add remote meta (#16812)
* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction

* fix bug, add remote meta for compaction
2023-02-17 15:13:06 +08:00
Pxl
da147f1d1c [Chore](build) remove memory_copy and remove some wno build check (#16831)
* remove memory_copy and remove some wno cbuild check
2023-02-17 14:43:24 +08:00
ef2130de57 [improvement](memory) fix possible memory leak of vcollect iterator (#16822)
Logic in function VCollectIterator::build_heap is not robust, which may cause memory leak:

            Level1Iterator* cumu_iter = new Level1Iterator(
                    cumu_children, _reader, cumu_children.size() > 1, _is_reverse, _skip_same);
            RETURN_IF_NOT_EOF_AND_OK(cumu_iter->init());
            std::list<LevelIterator*> children;
            children.push_back(*base_reader_child);
            children.push_back(cumu_iter);
            _inner_iter.reset(
                    new Level1Iterator(children, _reader, _merge, _is_reverse, _skip_same));
cumu_iter will be leaked if cumu_iter->init()); is not success.
2023-02-17 14:40:15 +08:00
30dafd6a44 [improve](inverted index) Add element count limit for inverted index searcher cache (#16758)
The element in InvertedIndexSearcherCache is inverted index searcher, which is a file descriptor of inverted index file, so InvertedIndexSearcherCache is actually cache file descriptor of inverted index file.

If open file descriptor limit of the Linux system is set too small and config inverted_index_searcher_cache_limit is too big, during high pressure load maybe cause "Too many open files".

So, when insert inverted index searcher into InvertedIndexSearcherCache, need also check whether reach file_descriptor_number limit for inverted index file.
2023-02-17 11:53:07 +08:00
1a9eefebd4 [Fix](inverted index) fix array inverted index error match result when doing schema change add index (#16839)
There is a bug in inverted_index_writer when adding multiple lines array values' index.
This problem can cause error result when doing schema change adding index.
2023-02-17 11:50:39 +08:00
6acee1ce88 [Fix](topn opt) double check plan From OriginalPlanner to make sure optimized SQL is a general topn query (#16848)
From the original logic, query like `select * from a where exists (select * from b order by 1) order by 1 limit 1` is a query contains subquery,
but the top query will pass `checkEnableTwoPhaseRead` and set `isTwoPhaseOptEnabled=true`.So check the double plan is a general topn query plan is needed, and rollback the needMaterialize flag setted by the previous `analyze`.
2023-02-17 10:59:35 +08:00
630865a32f [chore](workflow) Fix the BE UT (Clang) workflow (#16847)
Fix the BE UT (Clang) workflow
2023-02-17 10:34:57 +08:00
5dfd6d2390 [improve](dynamic table) refine SegmentWriter columns writer generate (#16816)
* [improve](dynamic table) refine SegmentWriter columns writer generate

```
Dynamic Block consists of two parts, dynamic part of columns and static part of columns
static   dynamic
| ----- | ------- |
the static ones are original _tablet_schame columns
the dynamic ones are auto generated and extended from file scan.
```
**We should only consisder to use Block info to generte columns when it's a dynamic table load procudure.**
And seperate the static ones and dynamic ones

* test
2023-02-17 10:24:33 +08:00
2426d8e6e8 [chore](be-config) set disable_storage_row_cache default true to default disable row cache (#16827) 2023-02-17 10:21:28 +08:00
3d6077efe0 [pipeline](profile) Support real-time profile report in pipeline (#16772) 2023-02-17 10:01:34 +08:00
fe4ef23489 [fix](doc) add essential property for hive catalog on Kerberosied hms (#16781)
property `hive.metastore.kerberos.principal` is essential when the principal of hms you are connecting is not the 
default value: hive-metastore/_HOST@your_realms。
otherwise, you will get error: Failure unspecified at GSS-API level (Mechanism level: Checksum failed)
2023-02-17 09:54:29 +08:00
1fc5023d97 [Enhance](ComputeNode) K8sDeployManager support computeNode (#16789)
1.allow have no ELECTABLE or BACKEND
2.add cn NodeType
3.delete deprecated code
2023-02-17 09:08:14 +08:00
b35998a3b7 [Bug](datetimev2) Support cast datetimev2 to datetimev2 with different precision #16826 2023-02-17 08:42:36 +08:00
6012fc3605 [feature](docker)Fe docker init script add new interface option (#16846)
add interface BUILD_TYPE, Values only one "k8s".
e.g.
docker run -itd \
--name=fe-02 \
--env BUILD_TYPE="k8s"
-p 8032:8030 \
-p 9032:9030 \
--network=doris-network \
--ip=172.20.80.4 \
freeoneplus/doris:1.2.2-fe-x86_64
add interface group FE_MASTER_IP & FE_MASTER_PORT & FE_CURRENT_IP & FE_CURRENT_PORT
docker run -itd \
--name=fe-02 \
--env FE_MASTER_IP="172.20.80.2" \
--env FE_MASTER_PORT=9010 \
--env FE_CURRENT_IP="172.20.80.4" \
--env FE_CURRENT_PORT=9010 \
-p 8032:8030 \
-p 9032:9030 \
--network=doris-network \
--ip=172.20.80.4 \
freeoneplus/doris:1.2.2-fe-x86_64
---------

Co-authored-by: Yijia Su <suyijia@selectdb.com>
2023-02-17 08:41:38 +08:00
24ef60b491 [Opt](exec) opt aggreate function performance in nullable column 2023-02-16 22:26:12 +08:00
4c7f19ab02 [enhancement](nereids) add eliminate left nullaware anti join rule (#16774)
if no join conjunct is nullable, the left null aware anti join can be converted to left anti join
2023-02-16 21:54:14 +08:00
407ccaaff7 [FIx](planner) create table as select with null_type select item cause be core bug (#16778)
sql: create table t as select null as k will cause be core sometime.
now we change it null_type to tinyint nullable to avoid it.
2023-02-16 20:01:13 +08:00
f86e8ec395 [enhancement] change the teamcity pipeline trigger : triggered by github pull request comment (#16836)
Optimized some code and Reduce invalid code,fix syntax error
2023-02-16 19:51:58 +08:00
3c641d4465 [Improve](regression) Add timeout check in schema change regression (#16568)
When the PRs run CI, the BE crash. The case will be always running. It wastes the resource. So modify it and add timeout check.
2023-02-16 19:27:22 +08:00
2a9e748073 [enhancement](merge-on-write) do compaction with merge on read (#16799)
To avoid data irrecoverable due to delete bitmap calculation error,do compaction with merge on read. Through this way ,even if the delete bitmap calculation is wrong, the data can be recovered by full compaction.
2023-02-16 19:20:15 +08:00
262a2ea10d [doc](point query) modify and refine docs (#16735) 2023-02-16 17:36:32 +08:00
f08c1222cc [Opt](exec) Refactor the code and logical functions to SIMD the code (#16785) 2023-02-16 16:55:12 +08:00
2f3ce39857 fix broken graph in broker-load-manual.md (#16768) 2023-02-16 16:54:55 +08:00
a56f1ca6b6 [improvement][regression] add git action to trigger teamcity pipeline 0216 (#16815) 2023-02-16 16:45:29 +08:00
de1337511c [Bug](Datetime) Fix date time function mem use after free (#16814) 2023-02-16 16:15:58 +08:00
ce7791c362 [fix](docker)Fix Dockerfile logic (#16791)
Error log logic fix.
Remove Chinese annotations.
2023-02-16 16:14:43 +08:00
e2245cbdd3 [improvement](filecache) split file cache into sharding directories (#16767)
Save cached file segment into path like `cache_path / hash(filepath).substr(0, 3) / hash(filepath) / offset`
to prevent too many directories in `cache_path`.
2023-02-16 16:04:29 +08:00
292926e5aa [Fix](multi catalog)Fix partition case bug (#16763)
Set column names from path to lower case in case-insensitive case.
This is for Iceberg columns from path. Iceberg columns are case sensitive,
which may cause error for table with partitions.
2023-02-16 15:47:23 +08:00
fa052b1a87 [fix](Stmt)pre-block create stmt with column type ALL (#16757) 2023-02-16 15:05:13 +08:00
105a4fb41a [regression](fuzzy) Make pipeline engine fuzzy test mode (#16807) 2023-02-16 15:02:27 +08:00
da3650c1c1 [typo](docs) fix typo in the document (#16782) 2023-02-16 15:02:17 +08:00
a707bd4e57 [fix](doc)fix release 1.2.2 document (#16809) 2023-02-16 15:01:40 +08:00
0f7ebaf157 [doc](enhancement) fix some style (#16798) 2023-02-16 15:01:16 +08:00
b6f2dfa994 [test](Nereids) add not nullable test for scalar functions (#16498) 2023-02-16 11:57:19 +08:00
0bb6005143 [Improvement](thrift) optimize thrift messages (#16383)
Now we use a thrift message per fragment instance. However, there are many same messages between instances in a fragment. So this PR aims to extract the same messages and we only need to send thrift message once for a fragment
2023-02-16 11:07:46 +08:00
118ce9cb16 [Enhance](ComputeNode) change logic of BeSelectionPolicy.getCandidateBackends (#16737)
The previous logic is how many cn can be returned at most. Instead,
if the number of cn is less than expectBeNum, need to use mix to fill in,
until the number of cn equals with expectBeNum or mix nodes are also used up
2023-02-16 10:31:24 +08:00
bd3ea233f8 [doc](filecache) add file cache document (#16649) 2023-02-16 10:26:48 +08:00
70d234ca6d [bugfix](reader) make segment_overlapping meta correct (#16793) 2023-02-16 08:41:52 +08:00
3b26235e7e [typo](docs)Modified the description of preparing for the upgrade in the upgrade document (#16801) 2023-02-16 08:38:18 +08:00
958aee38e9 [fix](Nereids): fix Master Bors problem. (#16794) 2023-02-16 01:53:53 +08:00
de8d884ec3 [Fix](multi catalog)Fix iceberg parquet file doesn't have iceberg.schema meta problem (#16764)
To support schema evolution, Iceberg add schema information to Parquet file metadata.
But for early iceberg version, it doesn't write any schema information to Parquet file.
This PR is to support read parquet without schema information.
2023-02-16 00:08:59 +08:00
5c29a9ef1a [community](team) add new PMC members and committers (#16796) 2023-02-15 23:07:16 +08:00
dd06cc7609 [pipeline](shuffle) Improve broadcast shuffle (#16779)
Now we reuse buffer pool for broadcast shuffle on pipeline engine. This PR ensures that a pipeline with a broadcast shuffle sink will not be scheduled if there are no available buffer in the buffer pool
2023-02-15 22:03:27 +08:00
611d9aca10 [feature](docker)Add Docker Broker Init Script (#16733)
Add Docker Broker Init Script
2023-02-15 19:26:01 +08:00
ecadd4b392 [feature](Nereids): add OuterJoinAssoc rule (#16676)
* move isIntersecting.

* [feature](Nereids): add OuterJoinAssoc rule

* fix bug

* fix
2023-02-15 19:19:28 +08:00
fe9b2fb803 fix bug, rename thread (#16780) 2023-02-15 18:51:22 +08:00
Pxl
f4ed52906a [Feature](Materialized-View) change mv rewrite from bottom up to up bottom && Compatible with old … (#16750)
1.change mv rewrite from bottom up to up bottom
2.compatible with old version mv
3.restore some ut codes (but disable)
4. fix some ut introduced by [fix](planner)fix bug for missing slot #16601 and [Feature](Materialized-View) support multiple slot on one column in materialized view #16378
2023-02-15 17:24:46 +08:00
0c56a4622c [Feature](struct-type) Add implicitly cast for struct-type (#16613)
Currently not support insert {1, 'a'} into struct<f1:tinyint, f2:varchar(20)>
This commit will support implicitly cast the char type in the struct to varchar.
Add implicitly cast for struct-type.
2023-02-15 16:55:00 +08:00
Pxl
f50edff59d [Chore](build) enable fallthrough check annd fix some fallthrough bug (#16748)
* enable fallthrough check annd fix some fallthrough bug

* fix

* fix
2023-02-15 15:58:43 +08:00
585b74b175 [chore](workflow) Fix Ubuntu package conflicts by skipping apt upgrade (#16754)
In `Build Third Party Libraries (Linux)` job, some errors occur due to the package conflicts. This PR fixes these errors by skipping the command `apt upgrade`.

```
Unpacking odbcinst1debian2:amd64 (2.3.11) ...
dpkg: error processing archive /tmp/apt-dpkg-install-SY6NPA/43-odbcinst1debian2_2.3.11_amd64.deb (--unpack):
 trying to overwrite '/usr/lib/x86_64-linux-gnu/libodbcinst.so.2.0.0', which is also in package libodbcinst2:amd64 2.3.9-5
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)1
```
2023-02-15 15:22:08 +08:00