Commit Graph

5972 Commits

Author SHA1 Message Date
b619bb2000 [enhancement](ldap) optimize LDAP authentication. (#11948)
* [enhancement](ldap) optimize LDAP authentication.

1. Support caching LDAP user information.
2. HTTP authentication supports LDAP.
3. LDAP temporary users support default user property.
4. LDAP configuration supports the `admin show config` and `admin set config` commands.
2022-08-24 17:08:14 +08:00
d87ab69ead [bug](vectorized) fix bug of tuple is null null side do not set (#12012) 2022-08-24 16:19:43 +08:00
8b4f693ad5 [fix](grouping)fix grouping function bug (#11861) 2022-08-24 15:05:25 +08:00
f875684345 [fix](agg) Crashing caused by serialization in streaming aggregation (#12027) 2022-08-24 14:38:25 +08:00
Pxl
d8e401cfba [Chore](script) support custom python version on build script (#11954) 2022-08-24 14:31:05 +08:00
9cceddaeb3 [tools](ssb and tpch)optimize tools (#11975) 2022-08-24 14:29:38 +08:00
81b6c8d9f9 [fix](sort)the sort expr nullable info is wrong in some case (#12003) 2022-08-24 14:26:09 +08:00
1304a17600 [fix](memtracker) Improve performance of tracking real physical memory of PodArray #12021 2022-08-24 14:24:14 +08:00
52be50972f [regression-test](p0) add case for window function at min/max when vectorized (#11989)
Co-authored-by: xiaojunjie <xiaojunjie@baidu.com>
2022-08-24 14:20:18 +08:00
fb3c00c943 [Improvement](storage) reuse schema and rowblockv2 on single scanner_thread (#11392)
* support reuse rowblockv2 on single thread
2022-08-24 13:42:10 +08:00
29dd6ccb11 [typo](doc)Adding Missing Documents (#12022)
Adding Missing Documents
2022-08-24 12:35:13 +08:00
f737ff742e [enhancement](Nereids)support max function (#11795)
- add aggregate function max to Nereids
- add function P0 regression test for Nereids
2022-08-24 10:54:51 +08:00
47dfd915c6 [doc](faq) add Problem with the SSL CA cert FAQ (#11982) 2022-08-24 09:13:16 +08:00
ba85c06a68 [feature-wip](unique-key-merge-on-write) fix that IndexedColumnIterator next batch may return empty result (#11928) 2022-08-24 08:53:44 +08:00
3abc4f357f [Bug](bitmap) intersect_count function use in string cause ASAN error (#11936) 2022-08-24 08:51:53 +08:00
5d627e41a4 [fix](array-type) fix the be core dump when import number larger than uint64 (#11853)
Co-authored-by: hucheng01 <hucheng01@baidu.com>
2022-08-24 08:51:12 +08:00
568f596330 [fix](agg)grouping_id function in having is not correctly substituted (#11834) 2022-08-24 08:50:28 +08:00
d7ffb4e26e [deps](httpv2)upgrade springboot version to 2.7.3 (#11963) 2022-08-24 08:49:57 +08:00
1fc5515a78 [enhancement](memory) Remove unused reservation tracker (#11969) 2022-08-24 08:49:34 +08:00
477899af8e [fix](having) Fix the with as clause containing having caused a null pointer (#12007) 2022-08-24 08:48:49 +08:00
043a082c27 [typo](doc) fix some typo in faq docs #11977 2022-08-24 08:48:19 +08:00
c72a84f7c5 [fix](join)the hash join node would get the wrong nullable if the child node is cross join node (#11971)
* [fix](join)the hash join node would get the wrong nullable if the child node is cross join node
2022-08-24 08:47:52 +08:00
dac0883635 [chore](checkstyle)forbidden import all kind of relocated guava (#12018) 2022-08-24 08:47:13 +08:00
83391dc603 [fix](auth) no need to degrade USAGE_PRIV in userPrivTable (#12016) 2022-08-24 08:46:56 +08:00
5c3367b67d [Bug](ctas/ctl): Ctas and ctl default value error (#12015) 2022-08-24 08:46:43 +08:00
7798309807 [improvement](start_script) add ASAN and UBSAN env in start_be.sh #12014
Neither asan nor ubsan does not generate core file by default,
however, we need core file to analyze problems detected by asan and ubsan.
2022-08-24 08:43:00 +08:00
d06edd4b8b [minor](runtime-filter) add DCHECK for runtimefilter bug (#11996)
Not a fix, just add debug info to try find root cause of #11995
2022-08-24 07:53:30 +08:00
cbbf4e10ff [fix](array-type) fix be occasional coredump when use stream load (#11997)
Co-authored-by: hucheng01 <hucheng01@baidu.com>
2022-08-23 21:54:00 +08:00
1056a6d8c7 [bug](compaction) fix bug of coredump of filter delete chose wrong filter column (#12002)
* [bug](compaction) fix bug of coredump of filter delete chose wrong filter column

* clang format
2022-08-23 21:52:11 +08:00
76028265e8 [refactor](Nereids): merge rewrite job (#11950)
merge rewrite job
2022-08-23 20:06:34 +08:00
55fdb555be [bugfix](dict) fix coredump of dict colum range predicate when there is null value (#11967) 2022-08-23 16:07:48 +08:00
60fddd56e7 [feature-wip](unique-key-merge-on-write) opt lock and only save valid delete_bitmap (#11953)
1. use rlock in most logic instead of wrlock
2. filter stale rowset's delete bitmap in save meta
3. add a delete_bitmap lock to handle compaction and publish_txn confict

Co-authored-by: yixiutt <yixiu@selectdb.com>
2022-08-23 14:43:40 +08:00
30a13c8141 [Bug](error code) fix db access error code msg #11962
Co-authored-by: wuhangze <wuhangze@jd.com>
2022-08-23 14:15:58 +08:00
bc28b7eb4f [fix](error-code) prompt error when MySQL client login password is incorrect #11973 2022-08-23 09:11:09 +08:00
05da3d947f [feature-wip](new-scan) add scanner scheduling framework (#11582)
There are currently many types of ScanNodes in Doris. And most of the logic of these ScanNodes is the same, including:

Runtime filter
Predicate pushdown
Scanner generation and scheduling
So I intend to unify the common logic of all ScanNodes.
Different data sources only need to implement different Scanners for data access.
So that the future optimization for scan can be applied to the scan of all data sources,
while also reducing the code duplication.

This PR mainly adds 4 new class:

VScanner
All Scanners' parent class. The subclasses can inherit this class to implement specific data access methods.

VScanNode
The unified ScanNode, and is responsible for common logic including RuntimeFilter, predicate pushdown, Scanner generation and scheduling.

ScannerContext
ScannerContext is responsible for recording the execution status
of a group of Scanners corresponding to a ScanNode.
Including how many scanners are being scheduled, and maintaining
a producer-consumer blocks queue between scanners and scan nodes.

ScannerContext is also the scheduling unit of ScannerScheduler.
ScannerScheduler schedules a ScannerContext at a time,
and submits the Scanners to the scanner thread pool for data scanning.

ScannerScheduler
Unified responsible for all Scanner scheduling tasks

Test:
This work is still in progress and default is disabled.
I tested it with jmeter with 50 concurrency, but currently the scanner is just return without data.
The QPS can reach about 9000.
I can't compare it to origin implement because no data is read for now. I will test it when new olap scanner is ready.
Co-authored-by: morningman <morningman@apache.org>
2022-08-23 08:45:18 +08:00
38c751e5eb [github](checks) change the requirement of github checks (#11978) 2022-08-23 00:01:05 +08:00
def6f5568e [feature](nereids): enable exploration job (#11867)
Enable the exploration job, and fix related problem.

correct the join reorder
2022-08-22 23:38:17 +08:00
caec862d91 [feature](Nereids)add type coercion rule for nereids (#11802)
- add an interface ExpectsInputTypes to Expression
- add an interface ImplicitCastInputTypes to Expression
- add a Expression rewrite rule for type coercion
- add a Check Analysis Rule to check whether Plan is Semantically correct

if Expression implements ImplicitCastInputTypes, type coercion rule will automatic rewrite its children that casting it to the most suitable type.
If Expression implements ExpectsInputTypes, Check Analysis will check its children's type whether accepted by expects input types.
2022-08-22 23:06:02 +08:00
b55195bd80 [FixAssist](compaction) add DCHECK in BlockReader::_unique_key_next_block to reason problem (#11951) 2022-08-22 22:33:31 +08:00
68e2b3db44 [regression](rollup) Modify test case (#11960) 2022-08-22 19:18:35 +08:00
c22d097b59 [improvement](compress) Support compress/decompress block with lz4 (#11955) 2022-08-22 17:35:43 +08:00
0c5b4ecc7c [fix](agg)repeat node shouldn't change slot's nullable property of agg node (#11859) 2022-08-22 16:28:45 +08:00
0b33824eef [fix][Vectorized] Fix nullptr deref in data sink (#11473)
brpc cache may return nullptr.
2022-08-22 11:44:55 +08:00
92cef580f3 [enhancement](memory) Reduce virtual memory used by PaddedPODArray (#11816) 2022-08-22 11:33:07 +08:00
26deebccb8 [improvement](config)Enable insert strict (#11866) 2022-08-22 11:32:17 +08:00
6d925054de [feature-wip](parquet-reader) decode parquet time & datetime & decimal (#11845)
1. Spark can set the timestamp precision by the following configuration:
spark.sql.parquet.outputTimestampType = INT96(NANOS), TIMESTAMP_MICROS, TIMESTAMP_MILLIS
DATETIME V1 only keeps the second precision, DATETIME V2 keeps the microsecond precision.
2. If using DECIMAL V2, the BE saves the value as decimal128, and keeps the precision of decimal as (precision=27, scale=9). DECIMAL V3 can maintain the right precision of decimal
2022-08-22 10:15:35 +08:00
dc8f64b3e3 [improvement](agg) Serialize the fixed-length aggregation results with corresponding columns instead of ColumnString (#11801) 2022-08-22 10:12:06 +08:00
915d8989c5 [feature](spark-load)Spark load supports string type data import (#11927) 2022-08-22 08:56:59 +08:00
b1fd701493 [fix](memtracker) Improve memory tracking accuracy for exec nodes (#11947) 2022-08-22 08:56:05 +08:00
83ea4ea984 [refractor](bitmap) bitmap serialize and deserialize refractor (#11921)
Co-authored-by: cambyzju <zhuxiaoli01@baidu.com>
2022-08-22 08:52:20 +08:00