Commit Graph

3401 Commits

Author SHA1 Message Date
494eb895d3 [vectorized](pipeline) support union node operator (#15031) 2022-12-19 22:01:56 +08:00
7c67fa8651 [Bug](pipeline) fix bug of right anti join error result in pipeline (#15165) 2022-12-19 19:28:44 +08:00
0732f31e5d [Bug](pipeline) Fix bugs for scan node and join node (#15164)
* [Bug](pipeline) Fix bugs for scan node and join node

* update
2022-12-19 15:59:29 +08:00
445ec9d02c [fix](counter) fix coredump caused by updating destroyed counter (#15160) 2022-12-19 14:35:03 +08:00
1597afcd67 [fix](mutil-catalog) fix get many same name db/table when show where (#15076)
when show databases/tables/table status where xxx, it will change a selectStmt to select result from 
information_schema, it need catalog info to scan schema table, otherwise may get many
database or table info from multi catalog.

for example
mysql> show databases where schema_name='test';
+----------+
| Database |
+----------+
| test |
| test |
+----------+

MySQL [internal.test]> show tables from test where table_name='test_dc';
+----------------+
| Tables_in_test |
+----------------+
| test_dc |
| test_dc |
+----------------+
2022-12-19 14:27:48 +08:00
7730a88d11 [fix](multi-catalog) add support for orc binary type (#15141)
Fix three bugs:
1. DataTypeFactory::create_data_type is missing the conversion of binary type, and OrcReader will failed
2. ScalarType#createType is missing the conversion of binary type, and ExternalFileTableValuedFunction will failed
3. fmt::format can't generate right format string, and will be failed
2022-12-19 14:24:12 +08:00
03ea2866b7 [fix](load) add to error tablets when delta writer failed to close (#15118)
The result of load should be failed when all tablets delta writer failed to close on single node.
But the result returned to client is success.
The reason is that the committed tablets and error tablets are both empty, so publish will be success.
We should add it to error tablets when delta writer failed to close, then the transaction will be failed.
2022-12-19 14:22:25 +08:00
a7180c5ad8 [fix](segcompaction) fix segcompaction failed for newly created segment (#15022) (#15023)
Currently, newly created segment could be chosen to be compaction
candidate, which is prone to bugs and segment file open failures. We
should skip last (maybe active) segment while doing segcompaction.
2022-12-19 14:17:58 +08:00
f1321c2fed [fix](pipeline) remove the redundant override of the close function in set operators (#15161) 2022-12-19 14:09:36 +08:00
0b6054a4ce [Bug](decimalv3) Fix wrong argument for min_by/max_by (#15153) 2022-12-19 10:15:28 +08:00
1ed5ad3a16 [fix](merge-on-write) delete all rows with same key in all pre segments (#14995) 2022-12-19 10:08:38 +08:00
8a08085356 [enhancement](signal) output query_id when 'be' core dumped #15080 2022-12-19 09:47:38 +08:00
13bc8c2ef8 [Pipeline](runtime filter) Support runtime filters on pipeline engine (#15040) 2022-12-18 21:48:00 +08:00
Pxl
1b07e3e18b [Chore](refactor) some modify for pass c++20 standard (#15042)
some modify for pass c++20 standard
2022-12-17 14:41:07 +08:00
0cd791ec57 [fix](load) delta writer init failed might cause data inconsistency between multiple replicas (#15058)
In the following case, data inconsistency would happen between multiple replicas

current delta writer only writes a few lines of data (which meas the write() method only called once)
writer failed when init()(which is called at the fist time we call write()), and current tablet is recorded in _broken_tablets
delta writer closed, and in the close() method, delta writer found it's not inited, treat such case as an empty load, it will try to init again, which would create an empty rowset.
tablet sink received the error report in rpc response, marked the replica as failed, but since the quorum replicas are succeed, so the following load commit operation will succeed.
FE send publish version task to each be, the one with empty rowset will publish version successfully.
We got 2 replica with data and 1 empty replica.
2022-12-16 22:07:00 +08:00
874acdf68f [vectorized](join) add try catch in create thread (#15065) 2022-12-16 19:55:09 +08:00
ef21eea2e8 [fix](pipeline) _valid_element_in_hash_tbl was not set correctly (#15072) 2022-12-16 18:06:49 +08:00
b2438b076d [Bug](case function) do not crash if prepare failed (#15113) 2022-12-16 11:02:05 +08:00
Pxl
219489ca0e [Bug](s2geo) avoid some core dump on s2geo && enable ut of s2geo #15068 2022-12-16 10:56:02 +08:00
728a238564 [vectorized](jdbc) fix external table of oracle with condition about … (#15092)
* [vectorized](jdbc) fix external table of oracle with condition about datetime report error

* formatter
2022-12-16 10:48:17 +08:00
c16cc5c602 [fix](memtracker) Fix load channel memory tracker are not refreshed in time (#15048) 2022-12-16 10:43:03 +08:00
0e1e5a802b [config](load) enable new load scan node by default (#14808)
Set FE `enable_new_load_scan_node` to true by default.
So that all load tasks(broker load, stream load, routine load, insert into) will use FileScanNode instead of BrokerScanNode
to read data

1. Support loading parquet file in stream load with new load scan node.
2. Fix bug that new parquet reader can not read column without logical or converted type.
3. Change jsonb parser function to "jsonb_parse_error_to_null"
    So that if the input string is not a valid json string, it will return null for jsonb column in load task.
2022-12-16 09:41:43 +08:00
e0d528980f [fix](multi catalog)Return emtpy block while external table scanner couldn't find the file (#14997)
FE file path cache for external table may out of date. In this case, BE may fail to find the not exist file from FE cache. 
This pr is to handle this case: instead of throw an error message to the user, we return empty result set to the user.
2022-12-16 09:36:35 +08:00
94e0955687 [Bug](thread token) Fix invalid thread token (#15110) 2022-12-15 21:54:57 +08:00
5ef4c42a80 [Bug](datev2) Fix wrong result when use datev2 as partition key (#15094) 2022-12-15 21:27:05 +08:00
c4de619110 [fix](merge-on-write) calc delete bitmap need all segments which _do_flush in one memtable (#15018)
when some case(need modify be.conf), a memtable may flush many segments and then calc delete bitmap with new data. but now, it just only load one segment with max sgement id and this bug will not cala delte bitmap with all data of all segment of one memtable, and will get many rows with same key from merge-on-write table.
2022-12-15 20:44:49 +08:00
401d5776b0 [fix](compile) compile error while with DORIS_WITH_MYSQL #15105
Co-authored-by: cambyzju <zhuxiaoli01@baidu.com>
2022-12-15 20:40:33 +08:00
2fcdd766bd [fix](remote) fix be crash while write data to s3 in debug mode (#15047) 2022-12-15 19:56:35 +08:00
Pxl
9fb62a23f4 [Bug](function) fix overflow on concat_ws (#15043)
fix overflow on concat_ws
2022-12-15 19:44:27 +08:00
c6d93f739c [feature-wip](file reader) Merge stream_load_pipe to the new file reader (#15035)
Currently, there are two sets of file readers in Doris, this pr rewrites the old stream_load_pipe with the new file reader.
2022-12-15 16:31:22 +08:00
67e4292533 [fix](iceberg-v2) icebergv2 filter data path (#14470)
1. a icebergv2 delete file may cross many data paths, so the path of a file split is required as a predicate to filter rows of delete file
- create delete file structure to save predicate parameters
- create predicate for file path
2. add some log to print row range
3.  fix bug when create file metadata
2022-12-15 10:18:12 +08:00
21c2e485ae [improvment](function) add new function substring_index (#15024) 2022-12-15 09:54:34 +08:00
48a70212ac [bugfix](BE)fix broker file compile error (#15070) 2022-12-14 15:46:01 +08:00
b8f93681eb [feature-wip](file reader) Merge broker reader to the new file reader (#14980)
Currently, there are two sets of file readers in Doris, this pr rewrites the old broker reader with the new file reader.

TODO:
1. rewrite stream load pipe and kafka consumer pipe
2022-12-14 12:48:02 +08:00
f17b138cbd [BugFix](regression) don't use sf1DataPath when stream load (#15060)
don't use sf1DataPath when stream load
2022-12-14 12:39:56 +08:00
wxy
bbf3a5420d [fix](statistics) fix missing scanBytes and scanRows in query statist… (#14828)
A patch for PR-14750. There's one modification missing in ISSUE-14750.
2022-12-14 09:37:05 +08:00
284a3351f4 [Refactor](exec) refactor the code of datasink eos logic (#15009) 2022-12-13 15:33:08 +08:00
73ee352705 [fix](multi catalog)Fix convert_to_doris_type missing break for some cases (#14992) 2022-12-13 13:34:55 +08:00
e7a84e4a16 [fix](multi-catalog)fix page index thrift deserialize (#15001)
fix the err when parse page index: Couldn't deserialize thrift msg.
use two buffer to store column index and offset index msg, avoid parse them in a buffer
2022-12-13 13:33:19 +08:00
8fe0729835 [fix](multi catalog)Check orc file reader is not null before using it. (#14988)
The external table file path cache may out of date, which will cause orc reader to visit non-exist files.
In this case, orc file reader is nullptr.
This pr is to check the reader before using it to avoid core dump of visiting nullptr.
2022-12-13 11:27:51 +08:00
5e26ba98bd [enhancement](compaction) exist safely (#15021) 2022-12-13 10:57:27 +08:00
Pxl
decabbb933 [Chore](s2geo) upgrade s2geo to 0.10.0 (#15002)
upgrade s2geo to 0.10.0
2022-12-13 10:34:51 +08:00
1200b22fd2 [function](round) compute accurate round value by decimal (#14946) 2022-12-13 09:53:43 +08:00
0d5291801d [fix](load) fix that flush memtable concurrently may cause data inconsistency (#15005) 2022-12-13 09:27:35 +08:00
Pxl
c25a7235f9 [Pipeline](load) support pipeline broker load (#14940)
support pipeline broker load
2022-12-13 00:28:36 +08:00
1f56279fd8 [Vectorized] Use SIMD to skip batches of null data in aggregation (#10392) 2022-12-12 23:40:31 +08:00
c8551e0cad [Bug](compile) Fix compiling error if set ENABLE_STACKTRACE (#15004) 2022-12-12 20:41:10 +08:00
b5c0d4870d [fix](nereids)fix bug of elt and sub_replace function (#14971) 2022-12-12 17:37:36 +08:00
affc57bee7 [enhancement](pipeline) support jdbc scan, jdbc sink, odbc scan and odbc sink node for pipeline. (#14986)
support jdbc scan, jdbc sink, odbc scan and odbc sink node for pipeline.
2022-12-12 17:03:22 +08:00
38570312dd [feature](split_by_string)support split by string function (#13741) 2022-12-12 15:22:30 +08:00