amorynan opened a new pull request, #40061:
URL: https://github.com/apache/doris/pull/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.-->
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]