Skip to content

[improve](ip)improve data type ip for rowstore and trycatch in segment_flusher#39258

Merged
eldenmoon merged 5 commits intoapache:masterfrom
amorynan:improve-segment-flusher-with-trycatch
Aug 14, 2024
Merged

[improve](ip)improve data type ip for rowstore and trycatch in segment_flusher#39258
eldenmoon merged 5 commits intoapache:masterfrom
amorynan:improve-segment-flusher-with-trycatch

Conversation

@amorynan
Copy link
Copy Markdown
Contributor

Proposed changes

before we not support ipv6 with rowstore, and can make coredump like this:

terminate called after throwing an instance of 'doris::Exception'
  what():  [E3] write_one_cell_to_jsonb with type IPv6
*** Query id: e5e020df4ea04a70-95a27c948db5a518 ***
*** is nereids: 0 ***
*** tablet id: 9008975 ***
*** Aborted at 1723184823 (unix time) try "date -d @1723184823" if you are using GNU date ***
*** Current BE git commitID: a2baaf3174 ***
*** SIGABRT unknown detail explain (@0x29f794) received by PID 2750356 (TID 2752049 OR 0x7f6064dec640) from PID 2750356; stack trace: ***
 0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /home/zcp/repo_center/doris_master/doris/be/src/common/signal_handler.h:421
 1# 0x00007F6499586520 in /lib/x86_64-linux-gnu/libc.so.6
 2# pthread_kill at ./nptl/pthread_kill.c:89
 3# raise at ../sysdeps/posix/raise.c:27
 4# abort at ./stdlib/abort.c:81
 5# __gnu_cxx::__verbose_terminate_handler() [clone .cold] at ../../../../libstdc++-v3/libsupc++/vterminate.cc:75
 6# __cxxabiv1::__terminate(void (*)()) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
 7# 0x00005610407949C1 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
 8# 0x0000561040794B14 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
 9# doris::vectorized::DataTypeNumberSerDe<unsigned __int128>::write_one_cell_to_jsonb(doris::vectorized::IColumn const&, doris::JsonbWriterT<doris::JsonbOutStream>&, doris::vectorized::Arena*, int, int) const in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
10# doris::vectorized::JsonbSerializeUtil::block_to_jsonb(doris::TabletSchema const&, doris::vectorized::Block const&, doris::vectorized::ColumnStr<unsigned int>&, int, std::vector<std::shared_ptr<doris::vectorized::DataTypeSerDe>, std::allocator<std::shared_ptr<doris::vectorized::DataTypeSerDe> > > const&, std::unordered_set<int, std::hash<int>, std::equal_to<int>, std::allocator<int> > const&) at /home/zcp/repo_center/doris_master/doris/be/src/vec/jsonb/serialize.cpp:57
11# doris::segment_v2::VerticalSegmentWriter::_serialize_block_to_row_column(doris::vectorized::Block&) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:302
12# doris::segment_v2::VerticalSegmentWriter::write_batch() at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:839
13# doris::SegmentFlusher::_add_rows(std::unique_ptr<doris::segment_v2::VerticalSegmentWriter, std::default_delete<doris::segment_v2::VerticalSegmentWriter> >&, doris::vectorized::Block const*, unsigned long, unsigned long) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:130
14# doris::SegmentFlusher::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:73
15# doris::SegmentCreator::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:395
16# doris::BetaRowsetWriterV2::flush_memtable(doris::vectorized::Block*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/beta_rowset_writer_v2.cpp:101
17# doris::FlushToken::_do_flush_memtable(doris::MemTable*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:148
18# doris::FlushToken::_flush_memtable(std::unique_ptr<doris::MemTable, std::default_delete<doris::MemTable> >, int, long) in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
19# doris::MemtableFlushTask::run() at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:63
20# doris::ThreadPool::dispatch_thread() in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
21# doris::Thread::supervise_thread(void*) at /home/zcp/repo_center/doris_master/doris/be/src/util/thread.cpp:499
22# start_thread at ./nptl/pthread_create.c:442
23# 0x00007F649966A850 at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:83

Issue Number: close #xxx

@doris-robot
Copy link
Copy Markdown

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR

Since 2024-03-18, the Document has been moved to doris-website.
See Doris Document.

@github-actions github-actions bot added the doing label Aug 12, 2024
@amorynan
Copy link
Copy Markdown
Contributor Author

run buildall

Copy link
Copy Markdown
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

clang-tidy made some suggestions

Comment thread be/src/vec/data_types/serde/data_type_ipv6_serde.cpp Outdated
@doris-robot
Copy link
Copy Markdown

TPC-H: Total hot run time: 39462 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
Tpch sf100 test result on commit 4c9e6f1ca41cf6ad952f6ca497be1b35e8077198, data reload: false

------ Round 1 ----------------------------------
q1	17608	4321	4249	4249
q2	2021	178	181	178
q3	10556	1255	1077	1077
q4	10704	775	635	635
q5	7859	2582	2553	2553
q6	226	141	142	141
q7	986	621	618	618
q8	9685	1926	1971	1926
q9	9070	6667	6697	6667
q10	7186	2168	2205	2168
q11	476	249	251	249
q12	398	223	214	214
q13	17795	2986	2995	2986
q14	285	240	240	240
q15	531	483	499	483
q16	505	396	384	384
q17	964	583	672	583
q18	8099	7409	7426	7409
q19	4117	1069	905	905
q20	717	316	353	316
q21	5778	4463	4511	4463
q22	1134	1063	1018	1018
Total cold run time: 116700 ms
Total hot run time: 39462 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4416	4249	4247	4247
q2	387	272	276	272
q3	2871	2635	2632	2632
q4	1882	1595	1571	1571
q5	5301	5338	5305	5305
q6	221	133	132	132
q7	2085	1655	1716	1655
q8	3170	3312	3303	3303
q9	8409	8392	8407	8392
q10	3406	3170	3146	3146
q11	586	499	501	499
q12	783	580	588	580
q13	17388	2987	2971	2971
q14	318	277	267	267
q15	516	499	474	474
q16	469	426	413	413
q17	1785	1509	1470	1470
q18	7598	7513	7407	7407
q19	1697	1557	1565	1557
q20	2004	1843	1795	1795
q21	5239	5191	4961	4961
q22	1095	1048	1065	1048
Total cold run time: 71626 ms
Total hot run time: 54097 ms

@doris-robot
Copy link
Copy Markdown

TPC-DS: Total hot run time: 200999 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools
TPC-DS sf100 test result on commit 4c9e6f1ca41cf6ad952f6ca497be1b35e8077198, data reload: false

query1	902	383	356	356
query2	6461	2027	1863	1863
query3	6645	207	213	207
query4	33794	23406	23293	23293
query5	4233	499	504	499
query6	280	174	165	165
query7	4589	305	300	300
query8	260	202	192	192
query9	8506	2461	2453	2453
query10	540	479	450	450
query11	17712	15030	14992	14992
query12	143	103	96	96
query13	1637	366	363	363
query14	9918	7594	6804	6804
query15	261	211	236	211
query16	7748	501	480	480
query17	1458	566	539	539
query18	1991	281	275	275
query19	186	142	135	135
query20	111	105	104	104
query21	207	102	102	102
query22	4326	4077	3857	3857
query23	33976	33389	33077	33077
query24	12211	2592	2536	2536
query25	658	358	395	358
query26	1808	155	154	154
query27	3045	281	281	281
query28	7877	2018	2003	2003
query29	1156	409	403	403
query30	313	148	146	146
query31	955	762	755	755
query32	93	55	54	54
query33	734	287	280	280
query34	954	480	480	480
query35	954	860	738	738
query36	1090	880	907	880
query37	292	80	82	80
query38	4341	4160	4204	4160
query39	1488	1377	1379	1377
query40	277	114	114	114
query41	78	45	44	44
query42	116	94	103	94
query43	501	463	460	460
query44	1197	725	730	725
query45	240	208	208	208
query46	1090	742	744	742
query47	1839	1744	1768	1744
query48	362	297	293	293
query49	1203	412	417	412
query50	804	414	417	414
query51	6776	6705	6681	6681
query52	101	94	90	90
query53	252	190	180	180
query54	915	444	437	437
query55	75	74	75	74
query56	267	252	246	246
query57	1186	1101	1062	1062
query58	251	226	227	226
query59	2926	2838	2723	2723
query60	304	262	270	262
query61	114	150	99	99
query62	830	644	671	644
query63	216	181	185	181
query64	10507	2247	1750	1750
query65	3217	3175	3142	3142
query66	1374	335	338	335
query67	15290	14847	14855	14847
query68	4508	559	568	559
query69	429	393	376	376
query70	1160	1144	1111	1111
query71	400	277	283	277
query72	18490	17192	17359	17192
query73	753	326	328	326
query74	9072	8832	8861	8832
query75	3398	2713	2661	2661
query76	2536	1059	1008	1008
query77	439	306	304	304
query78	9630	8985	9628	8985
query79	1272	531	531	531
query80	2086	478	495	478
query81	606	225	226	225
query82	987	138	138	138
query83	284	150	151	150
query84	263	86	83	83
query85	1273	378	270	270
query86	374	310	314	310
query87	4632	4550	4528	4528
query88	3495	2477	2497	2477
query89	386	286	289	286
query90	1784	197	193	193
query91	121	99	98	98
query92	61	48	50	48
query93	1082	540	537	537
query94	895	293	298	293
query95	356	262	259	259
query96	584	278	272	272
query97	3250	3028	3066	3028
query98	218	200	206	200
query99	1678	1306	1237	1237
Total cold run time: 312663 ms
Total hot run time: 200999 ms

@doris-robot
Copy link
Copy Markdown

ClickBench: Total hot run time: 30.73 s
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
ClickBench test result on commit 4c9e6f1ca41cf6ad952f6ca497be1b35e8077198, data reload: false

query1	0.05	0.04	0.04
query2	0.08	0.04	0.04
query3	0.22	0.05	0.05
query4	1.67	0.07	0.07
query5	0.51	0.48	0.48
query6	1.14	0.72	0.72
query7	0.02	0.02	0.01
query8	0.05	0.05	0.04
query9	0.54	0.49	0.50
query10	0.55	0.55	0.55
query11	0.15	0.12	0.11
query12	0.16	0.12	0.12
query13	0.60	0.59	0.59
query14	0.76	0.79	0.77
query15	0.87	0.81	0.82
query16	0.37	0.34	0.35
query17	0.99	1.04	0.96
query18	0.23	0.22	0.22
query19	1.79	1.73	1.72
query20	0.01	0.01	0.01
query21	15.42	0.75	0.65
query22	4.34	6.83	2.03
query23	18.30	1.48	1.27
query24	2.11	0.24	0.22
query25	0.16	0.08	0.08
query26	0.30	0.21	0.20
query27	0.46	0.23	0.24
query28	13.30	1.01	0.99
query29	12.60	3.27	3.31
query30	0.24	0.05	0.05
query31	2.89	0.40	0.39
query32	3.25	0.50	0.46
query33	2.90	2.97	2.88
query34	17.04	4.37	4.39
query35	4.42	4.46	4.43
query36	0.66	0.48	0.47
query37	0.18	0.16	0.15
query38	0.15	0.15	0.15
query39	0.04	0.04	0.04
query40	0.16	0.13	0.12
query41	0.10	0.05	0.06
query42	0.05	0.05	0.05
query43	0.05	0.04	0.04
Total cold run time: 109.88 s
Total hot run time: 30.73 s

amorynan and others added 2 commits August 13, 2024 09:39
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@amorynan
Copy link
Copy Markdown
Contributor Author

run buildall

Copy link
Copy Markdown
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

clang-tidy made some suggestions


void DataTypeIPv6SerDe::read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const {
IPv6 val = 0;
const auto *str_value = static_cast<const JsonbStringVal*>(arg);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

warning: 'auto str_value' can be declared as 'const auto *str_value' [readability-qualified-auto]

Suggested change
const auto *str_value = static_cast<const JsonbStringVal*>(arg);
const auto *str_value = static_cast<const JsonbStringVal*>(arg);

@github-actions
Copy link
Copy Markdown
Contributor

clang-tidy review says "All clean, LGTM! 👍"

Comment thread be/src/olap/rowset/segment_creator.cpp Outdated
Comment thread be/src/olap/rowset/segment_creator.cpp Outdated
Comment thread be/src/vec/data_types/serde/data_type_ipv6_serde.h
Comment thread be/src/vec/data_types/serde/data_type_ipv6_serde.cpp
Comment thread regression-test/suites/mv_p0/test_row_store/test_row_store.groovy Outdated
@github-actions
Copy link
Copy Markdown
Contributor

clang-tidy review says "All clean, LGTM! 👍"

Comment thread regression-test/suites/mv_p0/test_row_store/test_row_store.groovy Outdated
@doris-robot
Copy link
Copy Markdown

TPC-H: Total hot run time: 39443 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
Tpch sf100 test result on commit a66cf53ecd78187ff80db939b175bbf565c106ed, data reload: false

------ Round 1 ----------------------------------
q1	17656	4405	4382	4382
q2	2014	212	198	198
q3	11769	1016	1132	1016
q4	10510	748	700	700
q5	7498	2492	2486	2486
q6	228	142	145	142
q7	985	602	594	594
q8	9413	1902	1928	1902
q9	10184	6520	6505	6505
q10	7017	2202	2139	2139
q11	475	252	247	247
q12	392	231	230	230
q13	17760	3035	3024	3024
q14	276	235	247	235
q15	536	476	484	476
q16	501	400	386	386
q17	970	744	727	727
q18	7919	7433	7269	7269
q19	5634	1124	1020	1020
q20	692	341	335	335
q21	5392	4435	4547	4435
q22	1096	995	1019	995
Total cold run time: 118917 ms
Total hot run time: 39443 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4450	4290	4264	4264
q2	381	274	272	272
q3	2836	2819	2846	2819
q4	2045	1746	1788	1746
q5	5487	5489	5357	5357
q6	240	137	137	137
q7	2199	1778	1782	1778
q8	3255	3449	3423	3423
q9	8730	8891	8720	8720
q10	3533	3181	3253	3181
q11	620	504	511	504
q12	848	658	663	658
q13	17123	3177	3213	3177
q14	334	301	298	298
q15	537	503	491	491
q16	513	452	456	452
q17	1835	1542	1473	1473
q18	8117	7840	7881	7840
q19	6890	1625	1524	1524
q20	2169	1883	1841	1841
q21	5478	5440	5302	5302
q22	1143	1054	1084	1054
Total cold run time: 78763 ms
Total hot run time: 56311 ms

@doris-robot
Copy link
Copy Markdown

TPC-DS: Total hot run time: 203514 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools
TPC-DS sf100 test result on commit a66cf53ecd78187ff80db939b175bbf565c106ed, data reload: false

query1	1601	1467	1446	1446
query2	6438	1968	1907	1907
query3	13896	8542	322	322
query4	28739	23011	23072	23011
query5	4163	498	511	498
query6	267	163	160	160
query7	3935	295	312	295
query8	261	200	202	200
query9	8553	2441	2422	2422
query10	516	448	441	441
query11	17821	14956	14979	14956
query12	141	95	92	92
query13	1532	364	344	344
query14	10088	7556	7619	7556
query15	268	219	246	219
query16	7683	531	509	509
query17	1499	596	541	541
query18	1949	295	296	295
query19	195	143	140	140
query20	117	116	108	108
query21	212	111	100	100
query22	4643	4441	4455	4441
query23	34487	34920	33706	33706
query24	8136	2651	2602	2602
query25	482	364	373	364
query26	682	152	156	152
query27	2105	294	291	291
query28	5587	2002	1999	1999
query29	626	403	407	403
query30	251	151	150	150
query31	959	774	758	758
query32	100	52	53	52
query33	554	269	281	269
query34	855	453	469	453
query35	950	822	787	787
query36	1099	913	904	904
query37	130	83	80	80
query38	4254	4158	4100	4100
query39	1441	1371	1378	1371
query40	200	112	114	112
query41	44	49	51	49
query42	110	99	93	93
query43	502	463	475	463
query44	1077	720	724	720
query45	225	209	196	196
query46	1097	760	754	754
query47	1881	1801	1789	1789
query48	372	301	301	301
query49	847	420	435	420
query50	805	409	410	409
query51	6783	6766	6695	6695
query52	108	86	96	86
query53	256	186	182	182
query54	645	449	474	449
query55	75	76	79	76
query56	273	252	252	252
query57	1143	1095	1071	1071
query58	224	233	240	233
query59	2942	2866	2867	2866
query60	301	270	278	270
query61	114	112	108	108
query62	783	644	645	644
query63	204	184	184	184
query64	9238	2334	1819	1819
query65	3210	3162	3142	3142
query66	771	338	353	338
query67	15390	15023	14771	14771
query68	6138	533	549	533
query69	436	423	425	423
query70	1222	1112	1107	1107
query71	488	296	277	277
query72	17868	16514	16519	16514
query73	786	333	334	333
query74	9193	9013	8754	8754
query75	3476	2601	2681	2601
query76	3290	1010	1028	1010
query77	657	302	308	302
query78	10929	9153	9766	9153
query79	9691	519	512	512
query80	1831	486	493	486
query81	572	219	220	219
query82	1082	134	133	133
query83	184	144	139	139
query84	273	75	74	74
query85	1193	295	268	268
query86	461	288	279	279
query87	4744	4495	4481	4481
query88	4858	2482	2493	2482
query89	458	295	279	279
query90	1986	195	188	188
query91	124	94	93	93
query92	69	48	48	48
query93	6939	535	532	532
query94	975	288	286	286
query95	354	269	263	263
query96	616	274	273	273
query97	3199	3070	3098	3070
query98	218	197	196	196
query99	1704	1283	1270	1270
Total cold run time: 322849 ms
Total hot run time: 203514 ms

@doris-robot
Copy link
Copy Markdown

ClickBench: Total hot run time: 30.88 s
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
ClickBench test result on commit a66cf53ecd78187ff80db939b175bbf565c106ed, data reload: false

query1	0.05	0.04	0.04
query2	0.09	0.04	0.04
query3	0.23	0.06	0.06
query4	1.66	0.07	0.08
query5	0.51	0.52	0.48
query6	1.14	0.73	0.72
query7	0.02	0.02	0.01
query8	0.06	0.05	0.05
query9	0.55	0.49	0.50
query10	0.54	0.54	0.54
query11	0.15	0.11	0.12
query12	0.15	0.12	0.12
query13	0.59	0.59	0.58
query14	0.76	0.78	0.77
query15	0.86	0.81	0.82
query16	0.38	0.34	0.35
query17	1.02	0.98	0.98
query18	0.22	0.22	0.22
query19	1.82	1.67	1.72
query20	0.01	0.01	0.01
query21	15.39	0.74	0.65
query22	4.00	7.42	2.25
query23	18.31	1.37	1.26
query24	2.15	0.23	0.21
query25	0.14	0.09	0.10
query26	0.31	0.22	0.22
query27	0.45	0.23	0.22
query28	13.30	1.00	1.00
query29	12.59	3.32	3.33
query30	0.24	0.05	0.05
query31	2.90	0.39	0.38
query32	3.28	0.48	0.48
query33	2.93	2.88	2.93
query34	17.07	4.32	4.36
query35	4.39	4.39	4.41
query36	0.65	0.47	0.47
query37	0.19	0.15	0.16
query38	0.15	0.15	0.14
query39	0.05	0.03	0.03
query40	0.16	0.13	0.12
query41	0.09	0.05	0.05
query42	0.06	0.05	0.06
query43	0.05	0.04	0.04
Total cold run time: 109.66 s
Total hot run time: 30.88 s

@amorynan
Copy link
Copy Markdown
Contributor Author

run buildall

@amorynan amorynan requested a review from eldenmoon August 13, 2024 03:43
@github-actions
Copy link
Copy Markdown
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@doris-robot
Copy link
Copy Markdown

TPC-H: Total hot run time: 39682 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
Tpch sf100 test result on commit a21fa0e1a4af4463a629359f1a610de51534df01, data reload: false

------ Round 1 ----------------------------------
q1	17662	4373	4250	4250
q2	2016	179	181	179
q3	11831	971	1004	971
q4	10499	724	741	724
q5	7771	2828	2762	2762
q6	224	137	139	137
q7	954	587	591	587
q8	9318	2003	2068	2003
q9	8580	6546	6519	6519
q10	7019	2176	2249	2176
q11	462	244	248	244
q12	397	217	225	217
q13	18812	2988	2945	2945
q14	285	242	238	238
q15	512	473	492	473
q16	504	395	383	383
q17	970	755	720	720
q18	8032	7455	7494	7455
q19	3702	1005	997	997
q20	677	330	333	330
q21	5370	4577	4381	4381
q22	1119	991	1036	991
Total cold run time: 116716 ms
Total hot run time: 39682 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4351	4283	4246	4246
q2	373	271	271	271
q3	2784	2559	2769	2559
q4	1977	1766	1708	1708
q5	5756	5638	5542	5542
q6	225	131	131	131
q7	2083	1778	1799	1778
q8	3259	3413	3441	3413
q9	8674	8748	8808	8748
q10	3524	3323	3186	3186
q11	586	511	498	498
q12	801	703	664	664
q13	15869	3204	3150	3150
q14	315	285	282	282
q15	531	486	497	486
q16	484	450	439	439
q17	1799	1535	1499	1499
q18	8004	7883	7883	7883
q19	4834	1575	1555	1555
q20	2094	1898	1854	1854
q21	5439	5167	5276	5167
q22	1088	1056	1038	1038
Total cold run time: 74850 ms
Total hot run time: 56097 ms

@doris-robot
Copy link
Copy Markdown

TPC-DS: Total hot run time: 189765 ms
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools
TPC-DS sf100 test result on commit a21fa0e1a4af4463a629359f1a610de51534df01, data reload: false

query1	1238	895	856	856
query2	6462	1919	1851	1851
query3	10616	3997	3874	3874
query4	58936	26642	23204	23204
query5	5611	503	480	480
query6	428	162	150	150
query7	5965	287	297	287
query8	289	204	201	201
query9	8734	2427	2399	2399
query10	486	268	262	262
query11	17850	15039	15295	15039
query12	167	103	99	99
query13	1546	399	377	377
query14	11309	7791	6997	6997
query15	245	175	171	171
query16	7656	525	487	487
query17	1129	598	596	596
query18	1951	308	313	308
query19	309	149	153	149
query20	117	109	110	109
query21	208	102	105	102
query22	4812	4502	4519	4502
query23	33907	33622	33307	33307
query24	5834	2854	2897	2854
query25	540	406	403	403
query26	686	161	166	161
query27	1781	276	274	274
query28	3871	2035	2025	2025
query29	711	427	431	427
query30	267	150	152	150
query31	919	791	710	710
query32	86	53	60	53
query33	505	283	291	283
query34	860	466	474	466
query35	825	738	706	706
query36	1067	936	953	936
query37	135	82	84	82
query38	3898	3836	3770	3770
query39	1474	1357	1368	1357
query40	203	118	120	118
query41	49	44	46	44
query42	111	98	98	98
query43	517	452	448	448
query44	1063	725	757	725
query45	194	165	163	163
query46	1100	739	707	707
query47	1849	1760	1781	1760
query48	371	289	287	287
query49	768	425	436	425
query50	813	403	405	403
query51	6816	6680	6685	6680
query52	96	95	89	89
query53	257	187	184	184
query54	565	549	438	438
query55	79	73	71	71
query56	261	244	237	237
query57	1150	1036	1055	1036
query58	215	228	230	228
query59	2922	2765	2557	2557
query60	296	259	270	259
query61	95	101	104	101
query62	787	660	652	652
query63	208	181	178	178
query64	3273	1725	7606	1725
query65	3189	3109	3126	3109
query66	636	342	328	328
query67	15708	14841	14847	14841
query68	7709	553	551	551
query69	686	385	293	293
query70	1199	1149	1089	1089
query71	556	276	283	276
query72	7917	2222	2022	2022
query73	1257	328	329	328
query74	9169	8694	8862	8694
query75	5037	2701	2701	2701
query76	5089	956	975	956
query77	780	321	320	320
query78	9880	9122	9277	9122
query79	8341	524	532	524
query80	1005	488	529	488
query81	568	225	227	225
query82	1254	131	129	129
query83	390	145	143	143
query84	278	77	81	77
query85	895	268	269	268
query86	363	298	292	292
query87	4380	4163	4084	4084
query88	4690	2392	2409	2392
query89	498	280	285	280
query90	2144	194	189	189
query91	120	94	98	94
query92	65	49	49	49
query93	5797	540	535	535
query94	877	285	274	274
query95	356	260	262	260
query96	625	275	267	267
query97	3209	3024	3064	3024
query98	225	194	198	194
query99	1565	1270	1280	1270
Total cold run time: 333945 ms
Total hot run time: 189765 ms

@doris-robot
Copy link
Copy Markdown

ClickBench: Total hot run time: 30.67 s
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
ClickBench test result on commit a21fa0e1a4af4463a629359f1a610de51534df01, data reload: false

query1	0.04	0.04	0.04
query2	0.08	0.04	0.04
query3	0.22	0.06	0.06
query4	1.66	0.10	0.07
query5	0.50	0.48	0.50
query6	1.12	0.72	0.72
query7	0.02	0.01	0.01
query8	0.05	0.04	0.04
query9	0.54	0.49	0.48
query10	0.54	0.54	0.54
query11	0.16	0.12	0.12
query12	0.16	0.12	0.13
query13	0.62	0.60	0.58
query14	0.74	0.78	0.78
query15	0.85	0.82	0.81
query16	0.38	0.37	0.38
query17	1.04	1.03	0.98
query18	0.23	0.22	0.22
query19	1.88	1.87	1.83
query20	0.01	0.01	0.01
query21	15.40	0.76	0.67
query22	4.58	7.64	1.66
query23	18.33	1.30	1.31
query24	2.19	0.22	0.22
query25	0.15	0.08	0.07
query26	0.30	0.21	0.22
query27	0.45	0.23	0.22
query28	13.25	1.01	0.98
query29	12.62	3.38	3.35
query30	0.23	0.05	0.04
query31	2.89	0.39	0.40
query32	3.26	0.49	0.47
query33	2.94	2.98	3.03
query34	17.11	4.35	4.43
query35	4.39	4.45	4.39
query36	0.65	0.48	0.48
query37	0.19	0.16	0.16
query38	0.15	0.15	0.15
query39	0.04	0.04	0.03
query40	0.15	0.12	0.13
query41	0.10	0.05	0.04
query42	0.06	0.05	0.05
query43	0.04	0.04	0.04
Total cold run time: 110.31 s
Total hot run time: 30.67 s

Copy link
Copy Markdown
Member

@eldenmoon eldenmoon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@github-actions
Copy link
Copy Markdown
Contributor

PR approved by at least one committer and no changes requested.

@github-actions github-actions bot added approved Indicates a PR has been approved by one committer. reviewed labels Aug 13, 2024
@github-actions
Copy link
Copy Markdown
Contributor

PR approved by anyone and no changes requested.

Copy link
Copy Markdown
Contributor

@liaoxin01 liaoxin01 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@eldenmoon eldenmoon merged commit 1acbbbd into apache:master Aug 14, 2024
wyxxxcat pushed a commit to wyxxxcat/doris that referenced this pull request Aug 14, 2024
…t_flusher (apache#39258)

before we not support ipv6 with rowstore, and can make coredump like
this:
```
terminate called after throwing an instance of 'doris::Exception'
  what():  [E3] write_one_cell_to_jsonb with type IPv6
*** Query id: e5e020df4ea04a70-95a27c948db5a518 ***
*** is nereids: 0 ***
*** tablet id: 9008975 ***
*** Aborted at 1723184823 (unix time) try "date -d @1723184823" if you are using GNU date ***
*** Current BE git commitID: a2baaf3 ***
*** SIGABRT unknown detail explain (@0x29f794) received by PID 2750356 (TID 2752049 OR 0x7f6064dec640) from PID 2750356; stack trace: ***
 0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /home/zcp/repo_center/doris_master/doris/be/src/common/signal_handler.h:421
 1# 0x00007F6499586520 in /lib/x86_64-linux-gnu/libc.so.6
 2# pthread_kill at ./nptl/pthread_kill.c:89
 3# raise at ../sysdeps/posix/raise.c:27
 4# abort at ./stdlib/abort.c:81
 5# __gnu_cxx::__verbose_terminate_handler() [clone .cold] at ../../../../libstdc++-v3/libsupc++/vterminate.cc:75
 6# __cxxabiv1::__terminate(void (*)()) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
 7# 0x00005610407949C1 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
 8# 0x0000561040794B14 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
 9# doris::vectorized::DataTypeNumberSerDe<unsigned __int128>::write_one_cell_to_jsonb(doris::vectorized::IColumn const&, doris::JsonbWriterT<doris::JsonbOutStream>&, doris::vectorized::Arena*, int, int) const in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
10# doris::vectorized::JsonbSerializeUtil::block_to_jsonb(doris::TabletSchema const&, doris::vectorized::Block const&, doris::vectorized::ColumnStr<unsigned int>&, int, std::vector<std::shared_ptr<doris::vectorized::DataTypeSerDe>, std::allocator<std::shared_ptr<doris::vectorized::DataTypeSerDe> > > const&, std::unordered_set<int, std::hash<int>, std::equal_to<int>, std::allocator<int> > const&) at /home/zcp/repo_center/doris_master/doris/be/src/vec/jsonb/serialize.cpp:57
11# doris::segment_v2::VerticalSegmentWriter::_serialize_block_to_row_column(doris::vectorized::Block&) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:302
12# doris::segment_v2::VerticalSegmentWriter::write_batch() at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:839
13# doris::SegmentFlusher::_add_rows(std::unique_ptr<doris::segment_v2::VerticalSegmentWriter, std::default_delete<doris::segment_v2::VerticalSegmentWriter> >&, doris::vectorized::Block const*, unsigned long, unsigned long) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:130
14# doris::SegmentFlusher::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:73
15# doris::SegmentCreator::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:395
16# doris::BetaRowsetWriterV2::flush_memtable(doris::vectorized::Block*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/beta_rowset_writer_v2.cpp:101
17# doris::FlushToken::_do_flush_memtable(doris::MemTable*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:148
18# doris::FlushToken::_flush_memtable(std::unique_ptr<doris::MemTable, std::default_delete<doris::MemTable> >, int, long) in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
19# doris::MemtableFlushTask::run() at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:63
20# doris::ThreadPool::dispatch_thread() in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
21# doris::Thread::supervise_thread(void*) at /home/zcp/repo_center/doris_master/doris/be/src/util/thread.cpp:499
22# start_thread at ./nptl/pthread_create.c:442
23# 0x00007F649966A850 at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:83
```
yiguolei pushed a commit that referenced this pull request Aug 14, 2024
## Proposed changes
backport: #39258
Issue Number: close #xxx

<!--Describe your changes.-->
@xiaokang xiaokang added dev/3.0.x and removed doing labels Aug 15, 2024
dataroaring pushed a commit that referenced this pull request Aug 17, 2024
…t_flusher (#39258)

before we not support ipv6 with rowstore, and can make coredump like
this:
```
terminate called after throwing an instance of 'doris::Exception'
  what():  [E3] write_one_cell_to_jsonb with type IPv6
*** Query id: e5e020df4ea04a70-95a27c948db5a518 ***
*** is nereids: 0 ***
*** tablet id: 9008975 ***
*** Aborted at 1723184823 (unix time) try "date -d @1723184823" if you are using GNU date ***
*** Current BE git commitID: a2baaf3 ***
*** SIGABRT unknown detail explain (@0x29f794) received by PID 2750356 (TID 2752049 OR 0x7f6064dec640) from PID 2750356; stack trace: ***
 0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /home/zcp/repo_center/doris_master/doris/be/src/common/signal_handler.h:421
 1# 0x00007F6499586520 in /lib/x86_64-linux-gnu/libc.so.6
 2# pthread_kill at ./nptl/pthread_kill.c:89
 3# raise at ../sysdeps/posix/raise.c:27
 4# abort at ./stdlib/abort.c:81
 5# __gnu_cxx::__verbose_terminate_handler() [clone .cold] at ../../../../libstdc++-v3/libsupc++/vterminate.cc:75
 6# __cxxabiv1::__terminate(void (*)()) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
 7# 0x00005610407949C1 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
 8# 0x0000561040794B14 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
 9# doris::vectorized::DataTypeNumberSerDe<unsigned __int128>::write_one_cell_to_jsonb(doris::vectorized::IColumn const&, doris::JsonbWriterT<doris::JsonbOutStream>&, doris::vectorized::Arena*, int, int) const in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
10# doris::vectorized::JsonbSerializeUtil::block_to_jsonb(doris::TabletSchema const&, doris::vectorized::Block const&, doris::vectorized::ColumnStr<unsigned int>&, int, std::vector<std::shared_ptr<doris::vectorized::DataTypeSerDe>, std::allocator<std::shared_ptr<doris::vectorized::DataTypeSerDe> > > const&, std::unordered_set<int, std::hash<int>, std::equal_to<int>, std::allocator<int> > const&) at /home/zcp/repo_center/doris_master/doris/be/src/vec/jsonb/serialize.cpp:57
11# doris::segment_v2::VerticalSegmentWriter::_serialize_block_to_row_column(doris::vectorized::Block&) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:302
12# doris::segment_v2::VerticalSegmentWriter::write_batch() at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:839
13# doris::SegmentFlusher::_add_rows(std::unique_ptr<doris::segment_v2::VerticalSegmentWriter, std::default_delete<doris::segment_v2::VerticalSegmentWriter> >&, doris::vectorized::Block const*, unsigned long, unsigned long) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:130
14# doris::SegmentFlusher::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:73
15# doris::SegmentCreator::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:395
16# doris::BetaRowsetWriterV2::flush_memtable(doris::vectorized::Block*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/beta_rowset_writer_v2.cpp:101
17# doris::FlushToken::_do_flush_memtable(doris::MemTable*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:148
18# doris::FlushToken::_flush_memtable(std::unique_ptr<doris::MemTable, std::default_delete<doris::MemTable> >, int, long) in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
19# doris::MemtableFlushTask::run() at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:63
20# doris::ThreadPool::dispatch_thread() in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be
21# doris::Thread::supervise_thread(void*) at /home/zcp/repo_center/doris_master/doris/be/src/util/thread.cpp:499
22# start_thread at ./nptl/pthread_create.c:442
23# 0x00007F649966A850 at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:83
```
@gavinchou gavinchou mentioned this pull request Oct 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by one committer. dev/2.1.6-merged dev/3.0.2-merged reviewed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants