92a0919e9c
branch-2.1: [Bug](function)fix json_object function check null nums error as return bool #44321 ( #44381 )
...
Cherry-picked from #44321
Co-authored-by: zhangstar333 <zhangsida@selectdb.com >
2024-11-22 23:51:33 +08:00
c9801f7a38
branch-2.1: [Bug](function) fix cut_ipv6 function error about modify the input column data #43921 ( #44180 )
...
Cherry-picked from #43921
Co-authored-by: zhangstar333 <zhangsida@selectdb.com >
2024-11-19 17:27:29 +08:00
3d667e95d2
[branch-2.1](function) support array_split and array_reverse_split functions ( #35619 ) ( #43761 )
...
pick https://github.com/apache/doris/pull/35619
2024-11-12 21:27:55 +08:00
355170a921
[cherry-pick](branch2.1) impl scalar functions trim_in、ltrim_in and rtrim_in ( #42641 )
...
pick https://github.com/apache/doris/pull/41681
2024-11-01 09:55:50 +08:00
6c3d42e09a
[cherry-pick](branch-21) cherry-pick pr about ( #42488 ) ( #42099 ) ( #42055 ) ( #42916 )
...
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
2024-10-31 14:14:19 +08:00
7eec0f8fbb
[branch-2.1](datetime) Fix date floor functions overflow ( #35477 ) ( #42238 )
...
pick https://github.com/apache/doris/pull/35477
2024-10-22 15:54:53 +08:00
5fe37c0708
[Feat](Nereids) support fold constant by fe ( #40441 )( #40772 )( #40744 )( #40745 )(40820) ( #41837 )
...
cherry-pick from master
#40441
#40772
#40744
#40745
#40820
2024-10-17 20:43:17 +08:00
f112af0fd2
[pick](branch-2.1) pick #41555 #41592 #38204 ( #41781 )
...
pick #41555 #41592 #38204
2024-10-14 14:05:08 +08:00
4ac07fe918
[Feature](json) Support json_search function in 2.1 ( #41590 )
...
cherry-pick #40948
Like mysql, json_search returns the path which point to a json string
witch match the pattern.
`SELECT JSON_SEARCH('["A",[{"B":"1"}],{"C":"AB"},{"D":"BC"}]', 'one',
'A_') as res;`
```
+----------+
| res |
+----------+
| "$[2].C" |
+----------+
```
Co-authored-by: liutang123 <liulijia@gmail.com >
2024-10-11 16:33:07 +08:00
2b427c316a
[feature](functions) impl scalar functions normal_cdf,to_iso8601,from_iso8601_date ( #40695 ) ( #41049 )
...
bp #40695
2024-09-24 09:52:39 +08:00
f6917acd6a
[cherry-pick](branch2.1) Impl translate and url encode 2.1 ( #41051 )
...
## Proposed changes
pick https://github.com/apache/doris/pull/40567
some code about const folding should wait the pr picked:
https://github.com/apache/doris/pull/40441
2024-09-23 14:26:27 +08:00
9877a08834
[feature](function) support ngram_search function #38226 ( #40893 )
...
https://github.com/apache/doris/pull/38226
mysql [test]>select ngram_search('123456789' , '12345' , 3);
+---------------------------------------+
| ngram_search('123456789', '12345', 3) |
+---------------------------------------+
| 0.6 |
+---------------------------------------+
1 row in set (0.01 sec)
mysql [test]>select ngram_search("abababab","babababa",2);
+-----------------------------------------+
| ngram_search('abababab', 'babababa', 2) |
+-----------------------------------------+
| 1 |
+-----------------------------------------+
1 row in set (0.01 sec)
```
doc https://github.com/apache/doris-website/pull/899
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
2024-09-21 20:34:44 +08:00
f3b1f1c19b
[fix](encrypt) wrong mode arg of encrypt and decrypt function make BE crash ( #40726 ) ( #40868 )
...
pick #40726 to branch-2.1
2024-09-15 21:31:00 +08:00
963415ce45
[test](case) add some test case for encrypt/decrypt functions ( #40427 ) ( #40847 )
...
pick #40427 to branch-2.1
Co-authored-by: zhangstar333 <87313068+zhangstar333@users.noreply.github.com >
2024-09-14 16:26:39 +08:00
9a79edca84
[cherry-pick](branch-21) fix partition_topn not reset output rows after do_partition_topn_sort ( #40761 ) ( #40792 )
...
## Proposed changes
cherry-pick from master https://github.com/apache/doris/pull/40761
<!--Describe your changes.-->
2024-09-14 11:15:56 +08:00
3246baa451
[branch-2.1](function) Refine crypto functions signature to fix wrong result( #40285 ) ( #40648 )
...
pick https://github.com/apache/doris/pull/40285
2024-09-11 15:32:19 +08:00
0928c9c6ed
[fix](unary function) Fix wrong result of asin, acos and sqrt when processing invalid input #40267 ( #40358 )
...
cherry pick from #40267
2024-09-05 19:51:01 +08:00
70eeda9f50
[cherry-pick](branch-21) fix encryption_function return wrong result at const column ( #40201 ) ( #40247 )
...
## Proposed changes
cherry-pick from master #40201
the string object have error of order, should be src, key,iv,mode
2024-09-02 16:09:15 +08:00
163193b1d4
[branch-2.1](function) fix random_bytes return same data for multi rows ( #39891 ) ( #40137 )
...
pick https://github.com/apache/doris/pull/39891
Issue Number: close #xxx
before:
```sql
mysql [optest]>SELECT random_bytes(10) a FROM numbers("number" = "10");
+------------------------+
| a |
+------------------------+
| 0x7b4e5727024bc5b59e2c |
| 0x7b4e5727024bc5b59e2c |
| 0x7b4e5727024bc5b59e2c |
| 0x7b4e5727024bc5b59e2c |
| 0x7b4e5727024bc5b59e2c |
| 0x7b4e5727024bc5b59e2c |
| 0x7b4e5727024bc5b59e2c |
| 0x7b4e5727024bc5b59e2c |
| 0x7b4e5727024bc5b59e2c |
| 0x7b4e5727024bc5b59e2c |
+------------------------+
```
now:
```sql
mysql [optest]>SELECT random_bytes(10) a FROM numbers("number" = "10");
+------------------------+
| a |
+------------------------+
| 0xd82cf60825b29ef2a0fd |
| 0x6f8c808415bdbaa6d257 |
| 0x7c26b5214297a151c25c |
| 0x43f02c77293063900437 |
| 0x5e5727569dec5e24f96b |
| 0x434f20bf74d7759640b7 |
| 0x087ed96b739750c733a6 |
| 0xdf05f6d7ede4972eb846 |
| 0xcefab471912264b5c54f |
| 0x1bddc019409d1926aa10 |
+------------------------+
```
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
2024-08-30 10:43:42 +08:00
b052f46944
[fix](json-quote) fix json quote func for not find the func ( #39931 ) ( #40061 )
...
1. fix function not found before this pr:
```
drop table if exists t003;
create table t003 (a bigint, b json not null) properties ("replication_num"="1");
insert into t003 values (1, '{"a":1,"b":2}');
select a, map_agg("k1", json_quote(b)) from t003 group by a;
[17:47]> select a, map_agg("k1", json_quote(b)) from t003 group by a;
(1105, 'errCode = 2, detailMessage = (172.20.48.119)[INTERNAL_ERROR]Function json_quote get failed, expr is VectorizedFnCall[json_quote](arguments=(CAST b(JSONB) TO String),return=Nullable(String)) and return type is Nullable(String).')
```
after pr , we can carry on it
2. fix a core if we use json_quote with table column
```
[WARNING!] /sys/kernel/mm/transparent_hugepage/enabled: [always] madvise never, Doris not recommend turning on THP, which may cause the BE process to use more memory and cannot be freed in time. Turn off THP: `echo madvise | sudo tee /sys/kernel/mm/transparent_hugepage/enabled`
start BE in local mode
doris_be: /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/writer.h:488:void rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<>>>::Prefix(Type) [OutputStream = rapidjson::GenericStringBuffer<rapidjson::UTF8<>>, SourceEncoding = rapidjson::UTF8<>, TargetEncoding = rapidjson::UTF8<>, StackAllocator = rapidjson::CrtAllocator, writeFlags = 0]: 假设 ‘!hasRoot_’ 失败。
*** Query id: b7b94dead55e4090-8c8e94f65ec9efd3 ***
*** is nereids: 1 ***
*** tablet id: 0 ***
*** Aborted at 1724744881 (unix time) try "date -d @1724744881" if you are using GNU date ***
*** Current BE git commitID: bd5844ea0d ***
*** SIGABRT unknown detail explain (@0x461003611e1) received by PID 3543521 (TID 3548858 OR 0x7f8a53c1a700) from PID 3543521; stack trace: ***
doris_be: /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/writer.h:488:void rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<>>>::Prefix(Type) [OutputStream = rapidjson::GenericStringBuffer<rapidjson::UTF8<>>, SourceEncoding = rapidjson::UTF8<>, TargetEncoding = rapidjson::UTF8<>, StackAllocator = rapidjson::CrtAllocator, writeFlags = 0]: 假设 ‘!hasRoot_’ 失败。
doris_be: /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/writer.h:488:void rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<>>>::Prefix(Type) [OutputStream = rapidjson::GenericStringBuffer<rapidjson::UTF8<>>, SourceEncoding = rapidjson::UTF8<>, TargetEncoding = rapidjson::UTF8<>, StackAllocator = rapidjson::CrtAllocator, writeFlags = 0]: 假设 ‘!hasRoot_’ 失败。
doris_be: /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/writer.h:488:void rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<>>>::Prefix(Type) [OutputStream = rapidjson::GenericStringBuffer<rapidjson::UTF8<>>, SourceEncoding = rapidjson::UTF8<>, TargetEncoding = rapidjson::UTF8<>, StackAllocator = rapidjson::CrtAllocator, writeFlags = 0]: 假设 ‘!hasRoot_’ 失败。
doris_be: /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/writer.h:488:void rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<>>>::Prefix(Type) [OutputStream = rapidjson::GenericStringBuffer<rapidjson::UTF8<>>, SourceEncoding = rapidjson::UTF8<>, TargetEncoding = rapidjson::UTF8<>, StackAllocator = rapidjson::CrtAllocator, writeFlags = 0]: 假设 ‘!hasRoot_’ 失败。
doris_be: /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/writer.h:488:void rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<>>>::Prefix(Type) [OutputStream = rapidjson::GenericStringBuffer<rapidjson::UTF8<>>, SourceEncoding = rapidjson::UTF8<>, TargetEncoding = rapidjson::UTF8<>, StackAllocator = rapidjson::CrtAllocator, writeFlags = 0]: 假设 ‘!hasRoot_’ 失败。
doris_be: /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/writer.h:488:void rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<>>>::Prefix(Type) [OutputStream = rapidjson::GenericStringBuffer<rapidjson::UTF8<>>, SourceEncoding = rapidjson::UTF8<>, TargetEncoding = rapidjson::UTF8<>, StackAllocator = rapidjson::CrtAllocator, writeFlags = 0]: 假设 ‘!hasRoot_’ 失败。
0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /mnt/disk1/wangqiannan/amory/doris/be/src/common/signal_handler.h:421
1# 0x00007F9429595B50 in /lib64/libc.so.6
2# gsignal in /lib64/libc.so.6
3# __GI_abort in /lib64/libc.so.6
4# _nl_load_domain.cold.0 in /lib64/libc.so.6
5# 0x00007F942958E426 in /lib64/libc.so.6
6# rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<char>, rapidjson::CrtAllocator>, rapidjson::UTF8<char>, rapidjson::UTF8<char>, rapidjson::CrtAllocator, 0u>::Prefix(rapidjson::Type) at /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/writer.h:488
7# rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<char>, rapidjson::CrtAllocator>, rapidjson::UTF8<char>, rapidjson::UTF8<char>, rapidjson::CrtAllocator, 0u>::String(char const*, unsigned int, bool) at /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/writer.h:206
8# bool rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> >::Accept<rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<char>, rapidjson::CrtAllocator>, rapidjson::UTF8<char>, rapidjson::UTF8<char>, rapidjson::CrtAllocator, 0u> >(rapidjson::Writer<rapidjson::GenericStringBuffer<rapidjson::UTF8<char>, rapidjson::CrtAllocator>, rapidjson::UTF8<char>, rapidjson::UTF8<char>, rapidjson::CrtAllocator, 0u>&) const at /mnt/disk1/wangqiannan/amory/doris/thirdparty/installed/include/rapidjson/document.h:1974
9# doris::vectorized::FunctionJsonQuoteImpl::execute(std::vector<doris::vectorized::ColumnStr<unsigned int> const*, std::allocator<doris::vectorized::ColumnStr<unsigned int> const*> > const&, doris::vectorized::ColumnStr<unsigned int>&, unsigned long) at /mnt/disk1/wangqiannan/amory/doris/be/src/vec/functions/function_json.cpp:826
10# doris::vectorized::FunctionJson<doris::vectorized::FunctionJsonQuoteImpl>::execute_impl(doris::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long) const at /mnt/disk1/wangqiannan/amory/doris/be/src/vec/functions/function_json.cpp:985
11# doris::vectorized::DefaultExecutable::execute_impl(doris::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long) const at /mnt/disk1/wangqiannan/amory/doris/be/src/vec/functions/function.h:463
12# doris::vectorized::PreparedFunctionImpl::_execute_skipped_constant_deal(doris::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) const at /mnt/disk1/wangqiannan/amory/doris/be/src/vec/functions/function.cpp:120
13# doris::vectorized::PreparedFunctionImpl::execute_without_low_cardinality_columns(doris::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) const at /mnt/disk1/wangqiannan/amory/doris/be/src/vec/functions/function.cpp:245
```
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
2024-08-28 21:31:08 +08:00
4cf769b39f
[Improve](table-function) explode json array with json args ( #39491 )
2024-08-27 14:53:17 +08:00
21bd4a4ac8
[bug](function)fix json_replace check return type error ( #37014 ) ( #39938 )
...
1. fix the return type dcheck error:
```
mysql [test]>select (json_replace(a, '$.fparam.nested_2', "qwe")) from json_table_2 limit 1;
ERROR 1105 (HY000): errCode = 2, detailMessage = (10.16.10.8)[INTERNAL_ERROR]Function json_replace get failed, expr is VectorizedFnCall[json_replace](arguments=a, String, String, String,return=Nullable(String)) and return type is Nullable(String).
```
2. improve the json_replace/json_insert/json_set function execute of not
convert const column, test about could faster 1s on 1000w table rows
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
2024-08-27 08:03:48 +08:00
f7b6ed772b
[Fix-2.1](testcase) Fix some testcases unstable results due to lack of orderby ( #39892 )
...
## Proposed changes
Issue Number: close #xxx
some sql's order-by column has same value, add more order-by column to
fix it.
2024-08-25 08:45:36 +08:00
bb687bd69c
[cherry-pick](branch-2.1) add function regexp_extract_or_null ( #39561 )
...
# Proposed changes
pick https://github.com/apache/doris/pull/38296
2024-08-21 09:14:58 +08:00
79aa079cc6
[fix](array-funcs) array min/max #39307 ( #39484 )
2024-08-17 10:56:44 +08:00
7687f2c53a
[fix](ip-funcs) fix ip inet6_aton funcs #39415 ( #39513 )
2024-08-17 10:56:06 +08:00
226e01889c
[fix](array_apply) pick array apply fix ( #39328 )
...
## Proposed changes
backport: https://github.com/apache/doris/pull/39105
Issue Number: close #xxx
<!--Describe your changes.-->
2024-08-14 18:52:29 +08:00
5f77f909d9
[cherry-pick](branch-2.1) Pick "[feature](function) support ip functions named ipv4_to_ipv6 and cut_ipv6" ( #39058 )
...
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
pick https://github.com/apache/doris/pull/36883 and
https://github.com/apache/doris/pull/35239
2024-08-10 18:37:11 +08:00
c7b59b38ef
[fix](hist) Fix unstable result of aggregrate function hist #38608 ( #38893 )
...
cherry pick from #38608
2024-08-06 08:52:03 +08:00
f5bc65989c
[pick](array-range)improve array_range func for large param ( #38707 )
...
## Proposed changes
backport: https://github.com/apache/doris/pull/38284
Issue Number: close #xxx
<!--Describe your changes.-->
2024-08-02 11:22:46 +08:00
e9052e2180
[cherry-pick](branch-21) fix mod function cause core dump ( #37999 ) ( #38308 )
...
## Proposed changes
cherry-pick from master https://github.com/apache/doris/pull/37999
<!--Describe your changes.-->
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
2024-07-25 12:06:21 +08:00
d19b3a5cb6
[fix](function) the bucket number arg of width_bucket should be a positive integer value ( #37892 ) ( #38295 )
...
## Proposed changes
pick #37892
2024-07-25 11:56:47 +08:00
79a6496bb6
[branch-2.1](function) fix wrong result when convert_tz is out of bound ( #37358 ) ( #38313 )
...
## Proposed changes
pick https://github.com/apache/doris/pull/37358
before:
```sql
mysql> select CONVERT_TZ(cast('0000-01-01 00:00:00.00001' as DATETIMEV1), cast('Asia/Shanghai' as VARCHAR(65533)), cast('America/Los_Angeles' as VARCHAR(65533)));
+---------------------------------------------------------------------------------------------------------------------------------------------------+
| convert_tz(cast('0000-01-01 00:00:00.00001' as DATETIME), cast('Asia/Shanghai' as VARCHAR(65533)), cast('America/Los_Angeles' as VARCHAR(65533))) |
+---------------------------------------------------------------------------------------------------------------------------------------------------+
| q535-12-31 08:01:19 |
+---------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.12 sec)
```
now:
```sql
mysql> select CONVERT_TZ(cast('0000-01-01 00:00:00.00001' as DATETIMEV1), cast('Asia/Shanghai' as VARCHAR(65533)), cast('America/Los_Angeles' as VARCHAR(65533)));
+---------------------------------------------------------------------------------------------------------------------------------------------------+
| convert_tz(cast('0000-01-01 00:00:00.00001' as DATETIME), cast('Asia/Shanghai' as VARCHAR(65533)), cast('America/Los_Angeles' as VARCHAR(65533))) |
+---------------------------------------------------------------------------------------------------------------------------------------------------+
| NULL |
+---------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.09 sec)
```
2024-07-25 11:32:44 +08:00
2759383365
[branch-2.1](timezone) refactor tzdata load to accelerate and unify timezone parsing ( #37062 ) ( #37269 )
...
pick https://github.com/apache/doris/pull/37062
1. revert https://github.com/apache/doris/pull/25097 . we decide to rely
on OS. not maintain independent tzdata anymore to keep result
consistency
2. refactor timezone load. removed rwlock.
before:
```sql
mysql [optest]>select count(convert_tz(d, 'Asia/Shanghai', 'America/Los_Angeles')), count(convert_tz(dt, 'America/Los_Angeles', '+00:00')) from dates;
+-------------------------------------------------------------------------------------+--------------------------------------------------------+
| count(convert_tz(cast(d as DATETIMEV2(6)), 'Asia/Shanghai', 'America/Los_Angeles')) | count(convert_tz(dt, 'America/Los_Angeles', '+00:00')) |
+-------------------------------------------------------------------------------------+--------------------------------------------------------+
| 16000000 | 16000000 |
+-------------------------------------------------------------------------------------+--------------------------------------------------------+
1 row in set (6.88 sec)
```
now:
```sql
mysql [optest]>select count(convert_tz(d, 'Asia/Shanghai', 'America/Los_Angeles')), count(convert_tz(dt, 'America/Los_Angeles', '+00:00')) from dates;
+-------------------------------------------------------------------------------------+--------------------------------------------------------+
| count(convert_tz(cast(d as DATETIMEV2(6)), 'Asia/Shanghai', 'America/Los_Angeles')) | count(convert_tz(dt, 'America/Los_Angeles', '+00:00')) |
+-------------------------------------------------------------------------------------+--------------------------------------------------------+
| 16000000 | 16000000 |
+-------------------------------------------------------------------------------------+--------------------------------------------------------+
1 row in set (2.61 sec)
```
3. now don't support timezone offset format string like 'UTC+8', like we
already said in
https://doris.apache.org/docs/dev/query/query-variables/time-zone/#usage
4. support case-insensitive timezone parsing in nereids.
5. a bug when parse timezone using nereids. should check DST by input,
but wrongly by now before. now fixed.
doc pr: https://github.com/apache/doris-website/pull/810
2024-07-15 10:56:48 +08:00
8de13c5cc8
[fix](function) error scale set in unix_timestamp ( #36110 ) ( #37619 )
...
## Proposed changes
```
mysql [test]>set DEBUG_SKIP_FOLD_CONSTANT = true;
Query OK, 0 rows affected (0.00 sec)
mysql [test]>select cast(unix_timestamp("2024-01-01",'yyyy-MM-dd') as bigint);
+------------------------------------------------------------+
| cast(unix_timestamp('2024-01-01', 'yyyy-MM-dd') as BIGINT) |
+------------------------------------------------------------+
| 1704038400000000 |
+------------------------------------------------------------+
```
now
```
mysql [test]>select cast(unix_timestamp("2024-01-01",'yyyy-MM-dd') as bigint);
+------------------------------------------------------------+
| cast(unix_timestamp('2024-01-01', 'yyyy-MM-dd') as BIGINT) |
+------------------------------------------------------------+
| 1704038400 |
+------------------------------------------------------------+
1 row in set (0.01 sec)
```
The column does not have a scale set, but the cast uses the scale to
perform the cast.
<!--Describe your changes.-->
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
2024-07-15 10:00:04 +08:00
d237a4d303
[fix](array)fix array_except/union for left const return only one row result #36776 ( #36986 )
2024-06-30 12:25:17 +08:00
8fc70e32bc
[fix](planner) fix wrong resut of function ifnull/coalesce caused by … ( #36727 )
2024-06-25 17:32:04 +08:00
4a117800ca
[Bug](Function) fix json contains with empty value ( #36320 ) ( #36418 )
2024-06-18 10:20:45 +08:00
dd567fa774
[fix](function) support return JsonType for If function ( #35199 )
...
add a FunctionSignature for If to support return Type is JsonType.
2024-05-24 16:23:58 +08:00
98b2bda660
[opt](Nereids) remove restrict for count(*) in window ( #35220 )
...
support count(*) used for window function
CREATE TABLE `t1` (
`id` INT NULL,
`dt` TEXT NULL
)
DISTRIBUTED BY HASH(`id`) BUCKETS 10
PROPERTIES (
"replication_allocation" = "tag.location.default: 1"
);
select *, count(*) over() from t1;
2024-05-24 16:23:58 +08:00
eb7eaee386
[fix](function) money format ( #34680 )
2024-05-18 18:35:29 +08:00
5719f6ff0c
[fix](planner) fix date_xxx functions without complete function signature ( #34761 )
...
Problem:
When using current_date as input of functions like date_sub,
fold constant would failed cause of missing of function signature in Planner
Solved:
Add complete function signature of functions like date_sub
2024-05-18 18:26:38 +08:00
46bf43130f
[test](case) error format case in test_query_json_object ( #34722 )
...
error format case in test_query_json_object
2024-05-18 18:07:23 +08:00
876248aa4e
[fix](function) json_object can not input null value ( #34591 )
2024-05-18 18:00:48 +08:00
ca9eb56233
[Fix](functions) fix strcmp return value #34565
2024-05-12 09:49:38 +08:00
c742a327e6
[Fix](Planner) add date/month/year add function fe constant fold with dateV2/dateTimeV2 ( #34483 )
...
Problem and Cause:
In original planner, date_add function would choose different data type of datetime or datev2. Which when original planner choose datev2 as constant date type. Fe could not folding date_add function because missing of function signature of folding constant date_add(datev2, int)
Solved:
Add corresponding function signatures of date_add/months_add/years_add in original planner
2024-05-11 15:04:35 +08:00
58c19e33b3
[fix](round) Fix incorrect decimal scale inference in round functions ( #34471 )
...
* FIX NEEDED
* FORMAT
* FORMAT
* FIX TEST
2024-05-11 11:42:12 +08:00
e38801968d
[Fix](functions) Fix bug in makedate and str_to_date functions
2024-05-10 22:14:25 +08:00
845732b440
[WIP](test) remove enable_nereids_planner in regression cases (part 3) ( #34558 )
...
previous PR:
part 1: #34417
part 2: #34490
2024-05-10 22:11:01 +08:00
9b712b03b4
[FIX]fix is_ip_address_in_range func with const param ( #34266 )
2024-05-10 14:37:20 +08:00