Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[enhancement](cloud) add table version to cloud #32738

Merged
merged 6 commits into from
Mar 28, 2024

Conversation

xy720
Copy link
Member

@xy720 xy720 commented Mar 24, 2024

Proposed changes

Add table version to cloud.

In Fe:
Get: If Fe is cloud mode, get table version from meta service.
Update: Op drop/replace temp partition, commit transaction.

In meta service:
Add: create Index. init value is 1.
Remove: by recycler.
Update: commit/drop partition rpc, commit txn rpc. Atomic++.

Further comments

If this is a relatively large or complex change, kick off the discussion at dev@doris.apache.org by explaining why you chose the solution you did and what alternatives you considered, etc...

@doris-robot
Copy link

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.

Copy link
Contributor

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

1 similar comment
Copy link
Contributor

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

@xy720
Copy link
Member Author

xy720 commented Mar 25, 2024

run buildall

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
q1	18348	5243	4261	4261
q2	3008	166	155	155
q3	11670	1182	1245	1182
q4	10751	824	812	812
q5	7796	3119	3097	3097
q6	206	128	129	128
q7	1071	606	584	584
q8	9646	2047	2011	2011
q9	7249	6812	6721	6721
q10	10116	3559	3565	3559
q11	431	232	210	210
q12	373	199	199	199
q13	17810	2824	2860	2824
q14	226	208	198	198
q15	514	454	463	454
q16	503	373	369	369
q17	970	628	580	580
q18	7213	6491	6406	6406
q19	2659	1404	1437	1404
q20	535	264	247	247
q21	3569	2828	2962	2828
q22	355	290	289	289
Total cold run time: 115019 ms
Total hot run time: 38518 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4131	4077	4126	4077
q2	333	235	228	228
q3	3011	2910	2885	2885
q4	1866	1559	1547	1547
q5	5278	5373	5394	5373
q6	191	115	118	115
q7	2248	1841	1839	1839
q8	3167	3307	3286	3286
q9	8766	8735	8764	8735
q10	3844	3766	3778	3766
q11	561	446	447	446
q12	712	585	567	567
q13	16930	2823	2814	2814
q14	262	251	250	250
q15	495	448	454	448
q16	471	435	412	412
q17	1735	1494	1486	1486
q18	7390	7293	7038	7038
q19	1612	1585	1522	1522
q20	1882	1722	1693	1693
q21	4860	4680	4654	4654
q22	512	447	443	443
Total cold run time: 70257 ms
Total hot run time: 53624 ms

@doris-robot
Copy link

TPC-DS: Total hot run time: 185760 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 b118fc6fe94fce746ef05315860abbb0d9eca766, data reload: false

query1	956	356	345	345
query2	7395	1996	1988	1988
query3	6705	210	210	210
query4	31778	21201	21241	21201
query5	4335	431	416	416
query6	273	194	173	173
query7	4632	288	283	283
query8	222	163	176	163
query9	9204	2287	2271	2271
query10	570	257	259	257
query11	14997	14269	14560	14269
query12	134	94	92	92
query13	1627	440	412	412
query14	14411	11624	11064	11064
query15	331	210	190	190
query16	8165	263	271	263
query17	2078	590	563	563
query18	1940	282	286	282
query19	349	157	154	154
query20	95	88	88	88
query21	202	130	125	125
query22	5047	4780	4769	4769
query23	33737	32555	32564	32555
query24	10561	2925	2844	2844
query25	614	366	373	366
query26	1133	150	151	150
query27	2430	339	340	339
query28	7233	1869	1855	1855
query29	856	648	605	605
query30	298	149	148	148
query31	968	721	728	721
query32	89	56	52	52
query33	752	246	242	242
query34	1096	476	479	476
query35	816	595	598	595
query36	1039	874	880	874
query37	115	75	80	75
query38	3519	3418	3416	3416
query39	1464	1450	1401	1401
query40	208	114	114	114
query41	49	48	46	46
query42	100	97	92	92
query43	481	447	439	439
query44	1134	710	735	710
query45	272	259	268	259
query46	1114	699	690	690
query47	1924	1809	1847	1809
query48	445	372	352	352
query49	1082	335	339	335
query50	762	369	374	369
query51	6776	6655	6637	6637
query52	107	94	88	88
query53	341	278	285	278
query54	309	233	245	233
query55	89	81	82	81
query56	249	221	226	221
query57	1184	1138	1136	1136
query58	251	208	203	203
query59	2706	2482	2442	2442
query60	262	252	253	252
query61	96	95	111	95
query62	681	475	458	458
query63	305	277	277	277
query64	5775	3947	4098	3947
query65	3060	3027	3028	3027
query66	893	385	377	377
query67	15281	14712	14766	14712
query68	6902	510	529	510
query69	626	380	376	376
query70	1193	1062	1149	1062
query71	519	283	279	279
query72	7217	2854	2683	2683
query73	738	311	317	311
query74	8326	6636	6654	6636
query75	4103	2803	2810	2803
query76	5017	890	928	890
query77	634	274	250	250
query78	10897	10175	10098	10098
query79	9425	516	508	508
query80	1680	405	385	385
query81	529	220	213	213
query82	883	192	193	192
query83	219	143	140	140
query84	284	72	78	72
query85	1523	320	311	311
query86	475	304	282	282
query87	3758	3526	3513	3513
query88	5017	2292	2300	2292
query89	513	366	369	366
query90	1975	177	177	177
query91	171	134	138	134
query92	60	51	49	49
query93	6969	493	476	476
query94	1119	178	179	178
query95	430	325	331	325
query96	610	272	274	272
query97	3085	2918	2900	2900
query98	230	202	200	200
query99	1205	906	943	906
Total cold run time: 314434 ms
Total hot run time: 185760 ms

@doris-robot
Copy link

Load test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'

Load test result on commit b118fc6fe94fce746ef05315860abbb0d9eca766 with default session variables
Stream load json:         19 seconds loaded 2358488459 Bytes, about 118 MB/s
Stream load orc:          59 seconds loaded 1101869774 Bytes, about 17 MB/s
Stream load parquet:      31 seconds loaded 861443392 Bytes, about 26 MB/s
Insert into select:       20.3 seconds inserted 10000000 Rows, about 492K ops/s

@xy720
Copy link
Member Author

xy720 commented Mar 26, 2024

run buildall

Copy link
Contributor

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

@xy720
Copy link
Member Author

xy720 commented Mar 26, 2024

run buildall

Copy link
Contributor

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

@xy720
Copy link
Member Author

xy720 commented Mar 26, 2024

run buildall

Copy link
Contributor

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

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
q1	17683	4171	4080	4080
q2	2107	164	161	161
q3	10585	1110	1227	1110
q4	10231	760	804	760
q5	7482	2995	2985	2985
q6	201	124	122	122
q7	1049	597	579	579
q8	9340	1998	1993	1993
q9	7060	6588	6574	6574
q10	8442	3449	3569	3449
q11	423	223	220	220
q12	432	201	195	195
q13	17795	2871	2853	2853
q14	225	204	214	204
q15	513	462	466	462
q16	487	373	370	370
q17	945	540	605	540
q18	7053	6460	6412	6412
q19	3600	1470	1489	1470
q20	541	259	273	259
q21	3622	2949	2818	2818
q22	351	313	307	307
Total cold run time: 110167 ms
Total hot run time: 37923 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4147	4102	4081	4081
q2	327	234	237	234
q3	2963	2879	2843	2843
q4	1824	1532	1525	1525
q5	5307	5345	5325	5325
q6	192	113	114	113
q7	2223	1842	1860	1842
q8	3152	3260	3251	3251
q9	8663	8689	8652	8652
q10	3803	3774	3767	3767
q11	537	447	440	440
q12	712	533	544	533
q13	16912	2810	2840	2810
q14	278	249	267	249
q15	499	464	452	452
q16	490	424	417	417
q17	1740	1498	1467	1467
q18	7338	7227	7040	7040
q19	2130	1541	1520	1520
q20	1900	1733	1727	1727
q21	4866	4659	4662	4659
q22	515	475	459	459
Total cold run time: 70518 ms
Total hot run time: 53406 ms

@doris-robot
Copy link

TPC-DS: Total hot run time: 181406 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 8a3ea4470aa9b2b057881af6c86095772911608c, data reload: false

query1	933	367	345	345
query2	6555	1872	1826	1826
query3	6710	212	214	212
query4	31577	21298	21234	21234
query5	4371	404	387	387
query6	272	182	171	171
query7	4641	302	288	288
query8	228	182	170	170
query9	9197	2377	2366	2366
query10	561	246	255	246
query11	17559	14285	14192	14192
query12	147	90	86	86
query13	1622	414	422	414
query14	10098	7966	7544	7544
query15	270	203	200	200
query16	8235	262	261	261
query17	1985	594	562	562
query18	2107	288	278	278
query19	355	161	156	156
query20	94	93	88	88
query21	204	129	132	129
query22	5016	4850	4830	4830
query23	33595	32848	32946	32848
query24	10757	2880	2849	2849
query25	612	399	395	395
query26	1172	162	162	162
query27	2551	355	359	355
query28	7213	1877	1873	1873
query29	866	612	614	612
query30	297	151	150	150
query31	939	735	719	719
query32	89	56	54	54
query33	762	271	237	237
query34	1057	467	484	467
query35	821	623	599	599
query36	1018	870	884	870
query37	119	68	62	62
query38	3580	3428	3407	3407
query39	1498	1425	1427	1425
query40	209	116	110	110
query41	48	46	46	46
query42	99	97	94	94
query43	471	439	440	439
query44	1224	711	711	711
query45	265	249	262	249
query46	1122	692	708	692
query47	1928	1862	1854	1854
query48	449	345	356	345
query49	1100	326	320	320
query50	762	375	363	363
query51	6839	6805	6806	6805
query52	106	92	92	92
query53	346	275	277	275
query54	294	233	235	233
query55	88	77	81	77
query56	261	215	221	215
query57	1209	1126	1138	1126
query58	221	204	204	204
query59	2789	2674	2455	2455
query60	247	241	247	241
query61	98	101	100	100
query62	654	469	453	453
query63	306	270	273	270
query64	5728	4192	4135	4135
query65	3053	3039	3024	3024
query66	879	391	372	372
query67	15129	14832	14543	14543
query68	5303	524	519	519
query69	585	372	385	372
query70	1202	1170	1135	1135
query71	424	275	267	267
query72	6381	2861	2664	2664
query73	714	320	324	320
query74	7514	6403	6431	6403
query75	2981	2199	2255	2199
query76	3555	927	876	876
query77	409	255	249	249
query78	10785	10106	9963	9963
query79	7933	511	523	511
query80	1818	384	380	380
query81	557	222	211	211
query82	1342	90	85	85
query83	291	146	153	146
query84	287	80	76	76
query85	2058	327	309	309
query86	495	323	304	304
query87	3712	3536	3532	3532
query88	5079	2391	2416	2391
query89	478	368	383	368
query90	1969	181	178	178
query91	179	133	140	133
query92	62	49	49	49
query93	5814	492	482	482
query94	1263	188	180	180
query95	449	337	333	333
query96	621	273	270	270
query97	2647	2465	2484	2465
query98	239	218	216	216
query99	1182	908	920	908
Total cold run time: 303935 ms
Total hot run time: 181406 ms

@doris-robot
Copy link

Load test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'

Load test result on commit 8a3ea4470aa9b2b057881af6c86095772911608c with default session variables
Stream load json:         18 seconds loaded 2358488459 Bytes, about 124 MB/s
Stream load orc:          59 seconds loaded 1101869774 Bytes, about 17 MB/s
Stream load parquet:      32 seconds loaded 861443392 Bytes, about 25 MB/s
Insert into select:       21.7 seconds inserted 10000000 Rows, about 460K ops/s

gensrc/proto/cloud.proto Outdated Show resolved Hide resolved
cloud/src/meta-service/meta_service_partition.cpp Outdated Show resolved Hide resolved
cloud/src/meta-service/meta_service_partition.cpp Outdated Show resolved Hide resolved
cloud/src/meta-service/meta_service_partition.cpp Outdated Show resolved Hide resolved
cloud/src/meta-service/meta_service_txn.cpp Show resolved Hide resolved
cloud/src/meta-service/meta_service_partition.cpp Outdated Show resolved Hide resolved
cloud/src/meta-service/meta_service_partition.cpp Outdated Show resolved Hide resolved
cloud/src/recycler/recycler.cpp Outdated Show resolved Hide resolved
@xy720 xy720 force-pushed the support-table-version-in-ms branch from 8a3ea44 to a2ec83e Compare March 26, 2024 20:56
Copy link
Contributor

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

@xy720
Copy link
Member Author

xy720 commented Mar 26, 2024

run buildall

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
q1	17628	4339	4108	4108
q2	2108	158	154	154
q3	10577	1109	1201	1109
q4	10228	775	746	746
q5	7440	3003	2979	2979
q6	201	124	125	124
q7	1062	599	576	576
q8	9330	2026	1975	1975
q9	7103	6565	6544	6544
q10	8425	3431	3545	3431
q11	449	226	222	222
q12	435	210	200	200
q13	18080	2856	2902	2856
q14	236	209	208	208
q15	499	463	454	454
q16	489	376	371	371
q17	967	540	598	540
q18	7075	6538	6534	6534
q19	3523	1448	1470	1448
q20	554	269	252	252
q21	3556	2889	2811	2811
q22	318	293	290	290
Total cold run time: 110283 ms
Total hot run time: 37932 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4147	4073	4075	4073
q2	324	231	226	226
q3	2955	2888	2786	2786
q4	1851	1526	1559	1526
q5	5316	5321	5315	5315
q6	197	115	115	115
q7	2266	1887	1889	1887
q8	3144	3270	3250	3250
q9	8755	8710	8713	8710
q10	3816	3771	3746	3746
q11	548	453	435	435
q12	725	538	562	538
q13	16942	2877	2854	2854
q14	279	255	258	255
q15	496	461	455	455
q16	476	417	417	417
q17	1732	1490	1488	1488
q18	7491	7173	7168	7168
q19	1601	1563	1497	1497
q20	1928	1754	1717	1717
q21	4890	4637	4814	4637
q22	543	456	442	442
Total cold run time: 70422 ms
Total hot run time: 53537 ms

@doris-robot
Copy link

TPC-DS: Total hot run time: 181778 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 a2ec83e9f3dfd1c67652f65b91e5770c861da439, data reload: false

query1	931	371	355	355
query2	6736	1934	1869	1869
query3	6703	220	228	220
query4	31628	21321	21282	21282
query5	4359	403	398	398
query6	287	174	179	174
query7	4632	297	291	291
query8	232	169	170	169
query9	9447	2277	2273	2273
query10	570	268	257	257
query11	17304	14282	14257	14257
query12	136	99	86	86
query13	1629	455	424	424
query14	9714	7607	7979	7607
query15	255	202	206	202
query16	8163	266	252	252
query17	1966	557	531	531
query18	2100	273	278	273
query19	301	148	158	148
query20	90	85	83	83
query21	206	127	125	125
query22	5022	4847	4806	4806
query23	33525	32598	32810	32598
query24	11120	2873	2867	2867
query25	641	408	369	369
query26	1358	153	155	153
query27	2919	352	362	352
query28	7381	1904	1877	1877
query29	869	644	602	602
query30	293	153	148	148
query31	988	731	736	731
query32	94	57	53	53
query33	768	248	247	247
query34	1040	481	490	481
query35	835	626	598	598
query36	1020	876	859	859
query37	118	63	61	61
query38	3524	3457	3405	3405
query39	1472	1450	1408	1408
query40	203	126	111	111
query41	49	46	46	46
query42	103	96	99	96
query43	483	449	459	449
query44	1208	745	759	745
query45	281	249	266	249
query46	1104	719	709	709
query47	1934	1853	1837	1837
query48	459	374	365	365
query49	1127	345	325	325
query50	760	377	381	377
query51	6741	6601	6592	6592
query52	114	93	89	89
query53	346	278	281	278
query54	304	254	233	233
query55	85	76	80	76
query56	246	223	235	223
query57	1223	1147	1133	1133
query58	229	209	211	209
query59	2758	2603	2616	2603
query60	263	249	251	249
query61	115	116	114	114
query62	659	454	448	448
query63	301	282	276	276
query64	5790	4137	4126	4126
query65	3243	3037	3042	3037
query66	1457	387	366	366
query67	15118	14727	14647	14647
query68	5264	541	523	523
query69	561	390	397	390
query70	1224	1206	1219	1206
query71	389	284	270	270
query72	6339	2889	2744	2744
query73	706	331	329	329
query74	7562	6344	6433	6344
query75	2930	2202	2235	2202
query76	3027	842	882	842
query77	410	273	259	259
query78	11031	10416	10299	10299
query79	6692	530	540	530
query80	1861	381	371	371
query81	566	217	216	216
query82	1474	87	85	85
query83	274	144	150	144
query84	289	80	78	78
query85	2075	342	317	317
query86	510	293	292	292
query87	3644	3567	3515	3515
query88	4834	2375	2365	2365
query89	477	363	357	357
query90	1928	172	174	172
query91	170	136	143	136
query92	62	47	46	46
query93	5379	502	481	481
query94	1250	178	175	175
query95	425	324	335	324
query96	595	271	276	271
query97	2659	2504	2496	2496
query98	240	214	204	204
query99	1208	916	896	896
Total cold run time: 303134 ms
Total hot run time: 181778 ms

@doris-robot
Copy link

Load test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'

Load test result on commit a2ec83e9f3dfd1c67652f65b91e5770c861da439 with default session variables
Stream load json:         18 seconds loaded 2358488459 Bytes, about 124 MB/s
Stream load orc:          59 seconds loaded 1101869774 Bytes, about 17 MB/s
Stream load parquet:      32 seconds loaded 861443392 Bytes, about 25 MB/s
Insert into select:       13.8 seconds inserted 10000000 Rows, about 724K ops/s

@xy720
Copy link
Member Author

xy720 commented Mar 27, 2024

run cloud_p0

@xy720 xy720 force-pushed the support-table-version-in-ms branch from a2ec83e to 6500edf Compare March 27, 2024 06:20
@xy720
Copy link
Member Author

xy720 commented Mar 27, 2024

run buildall

Copy link
Contributor

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

@doris-robot
Copy link

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

------ Round 1 ----------------------------------
q1	17601	4403	4099	4099
q2	2112	177	150	150
q3	10620	1160	1216	1160
q4	10226	738	799	738
q5	7526	3009	2990	2990
q6	204	124	121	121
q7	1038	585	567	567
q8	9350	2007	2012	2007
q9	7150	6638	6578	6578
q10	8511	3469	3579	3469
q11	435	233	218	218
q12	408	197	192	192
q13	17815	2851	2858	2851
q14	223	209	206	206
q15	509	459	457	457
q16	497	377	386	377
q17	944	524	635	524
q18	7242	6540	6457	6457
q19	3869	1457	1427	1427
q20	544	250	260	250
q21	3676	2921	2904	2904
q22	343	304	298	298
Total cold run time: 110843 ms
Total hot run time: 38040 ms

----- Round 2, with runtime_filter_mode=off -----
q1	4135	4055	4096	4055
q2	335	230	240	230
q3	3014	2849	2873	2849
q4	1830	1568	1554	1554
q5	5279	5333	5331	5331
q6	196	118	117	117
q7	2265	1904	1861	1861
q8	3160	3299	3322	3299
q9	8733	8708	8722	8708
q10	3782	3761	3787	3761
q11	548	448	439	439
q12	738	549	595	549
q13	16923	2864	2891	2864
q14	296	259	253	253
q15	501	455	472	455
q16	483	420	435	420
q17	1721	1513	1463	1463
q18	7485	7144	7093	7093
q19	1595	1511	1509	1509
q20	1938	1738	1711	1711
q21	4915	4641	4708	4641
q22	539	455	459	455
Total cold run time: 70411 ms
Total hot run time: 53617 ms

@doris-robot
Copy link

TPC-DS: Total hot run time: 181855 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 6500edf590df7ea38526cd0cb97ce34890710b66, data reload: false

query1	931	366	354	354
query2	6541	1934	1927	1927
query3	6703	218	208	208
query4	31707	21348	21401	21348
query5	4325	417	401	401
query6	266	176	180	176
query7	4627	289	291	289
query8	231	174	172	172
query9	9225	2338	2336	2336
query10	583	241	257	241
query11	17421	14143	14200	14143
query12	138	90	87	87
query13	1630	428	437	428
query14	10129	7519	7167	7167
query15	261	190	210	190
query16	8183	258	259	258
query17	1958	551	535	535
query18	2093	288	268	268
query19	279	146	164	146
query20	92	83	88	83
query21	206	125	128	125
query22	5042	4888	4829	4829
query23	33492	33024	32995	32995
query24	10766	2884	2885	2884
query25	603	361	353	353
query26	1177	153	156	153
query27	3046	341	355	341
query28	7464	1892	1883	1883
query29	895	646	613	613
query30	301	151	150	150
query31	976	740	750	740
query32	94	60	57	57
query33	757	254	252	252
query34	1067	491	496	491
query35	834	621	616	616
query36	1017	899	887	887
query37	119	67	63	63
query38	3610	3427	3474	3427
query39	1493	1433	1448	1433
query40	228	113	113	113
query41	51	48	48	48
query42	106	94	100	94
query43	491	449	469	449
query44	1172	744	744	744
query45	295	259	266	259
query46	1102	716	696	696
query47	1927	1851	1859	1851
query48	437	359	363	359
query49	1132	335	334	334
query50	769	376	372	372
query51	6774	6715	6676	6676
query52	105	92	94	92
query53	346	272	274	272
query54	296	264	231	231
query55	84	84	80	80
query56	251	227	226	226
query57	1228	1171	1162	1162
query58	233	212	218	212
query59	2803	2679	2686	2679
query60	273	253	250	250
query61	117	115	114	114
query62	669	444	468	444
query63	303	279	274	274
query64	5328	4073	4075	4073
query65	3115	3024	3036	3024
query66	1441	391	367	367
query67	15416	14876	14786	14786
query68	9160	527	544	527
query69	674	372	377	372
query70	1441	1179	1117	1117
query71	527	273	267	267
query72	7172	2711	2546	2546
query73	1646	326	317	317
query74	7038	6598	6434	6434
query75	3866	2224	2239	2224
query76	5654	929	867	867
query77	634	255	263	255
query78	10849	10209	10220	10209
query79	8630	537	528	528
query80	957	377	382	377
query81	509	218	216	216
query82	239	84	86	84
query83	214	155	143	143
query84	285	76	77	76
query85	1071	330	311	311
query86	360	300	301	300
query87	3737	3503	3576	3503
query88	4732	2303	2311	2303
query89	463	358	371	358
query90	2059	174	172	172
query91	171	143	139	139
query92	60	47	49	47
query93	5672	501	487	487
query94	1330	178	174	174
query95	421	331	324	324
query96	603	270	267	267
query97	2668	2485	2484	2484
query98	254	226	202	202
query99	1098	913	895	895
Total cold run time: 310968 ms
Total hot run time: 181855 ms

@doris-robot
Copy link

Load test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'

Load test result on commit 6500edf590df7ea38526cd0cb97ce34890710b66 with default session variables
Stream load json:         18 seconds loaded 2358488459 Bytes, about 124 MB/s
Stream load orc:          59 seconds loaded 1101869774 Bytes, about 17 MB/s
Stream load parquet:      33 seconds loaded 861443392 Bytes, about 24 MB/s
Insert into select:       13.8 seconds inserted 10000000 Rows, about 724K ops/s

@github-actions github-actions bot added the approved Indicates a PR has been approved by one committer. label Mar 27, 2024
Copy link
Contributor

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

@xy720
Copy link
Member Author

xy720 commented Mar 27, 2024

run cloud_p0

Copy link
Contributor

PR approved by anyone and no changes requested.

cloud/test/recycler_test.cpp Show resolved Hide resolved
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;

public class SnapshotProxy {
Copy link
Contributor

Choose a reason for hiding this comment

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

It is unnecessary to extract the visible version methods into SnapshotProxy. If you want to reorganize the code, then you should put this kind of helper class in the cloud.rpc package, and named it VersionHelper might be better.

BTW, you have put the code for getting the version in CloudPartition in SnapshotProxy, should the code for getting the version in OlapTable also be put here?

Copy link
Member Author

Choose a reason for hiding this comment

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

Because table version and partition visible version use the same rpc interface, there will be a lot of duplicate code. This SnapshotProxy is designed to put duplicate code in one place.
If the name and package need to be changed, I can modify it in the next PR which will fix a regression test case.

Copy link
Member Author

Choose a reason for hiding this comment

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

Hi, I finish it in #32989. Please review it.

@xy720 xy720 merged commit 4665ee6 into apache:master Mar 28, 2024
28 of 32 checks passed
@@ -115,6 +118,8 @@ public class SummaryProfile {
builder.put(GET_PARTITION_VERSION_TIME, 1);
builder.put(GET_PARTITION_VERSION_COUNT, 1);
builder.put(GET_PARTITION_VERSION_BY_HAS_DATA_COUNT, 1);
builder.put(GET_TABLE_VERSION_TIME, 1);
builder.put(GET_TABLE_VERSION_COUNT, 1);
Copy link
Contributor

Choose a reason for hiding this comment

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

it seems we don't need table version in query profile summary.

Jibing-Li added a commit that referenced this pull request Mar 29, 2024
* [fix](merge cloud) Fix cloud be set be tag map (#32864)

* [chore] Add gavinchou to collaborators (#32881)

* [chore](show) support statement to show views from table (#32358)

MySQL [test]> show views;
+----------------+
| Tables_in_test |
+----------------+
| t1_view        |
| t2_view        |
+----------------+
2 rows in set (0.00 sec)

MySQL [test]> show views like '%t1%';
+----------------+
| Tables_in_test |
+----------------+
| t1_view        |
+----------------+
1 row in set (0.01 sec)

MySQL [test]> show views where create_time > '2024-03-18';
+----------------+
| Tables_in_test |
+----------------+
| t2_view        |
+----------------+
1 row in set (0.02 sec)

* [Enhancement](ranger) Disable some permission operations when Ranger or LDAP are enabled (#32538)

Disable some permission operations when Ranger or LDAP are enabled.

* [chore](ci) exclude unstable trino_connector case (#32892)

Co-authored-by: stephen <hello-stephen@qq.com>

* [fix](Nereids) NPE when create table with implicit index type (#32893)

* [improvement](mtmv) Support more join types for query rewriting by materialized view (#32685)

This pattern of rewriting is supported for multi-table joins and supported join types is as following:

INNER JOIN
LEFT OUTER JOIN
RIGHT OUTER JOIN
FULL OUTER JOIN
LEFT SEMI JOIN
RIGHT SEMI JOIN
LEFT ANTI JOIN
RIGHT ANTI JOIN

* [Serde](Variant) support arrow serialization for varint type (#32780)

* [fix](multicatalog) fix no data error when read hive table on cosn (#32815)

Currently, when reading a hive on cosn table, doris return empty result, but the table has data.
iceberg on cosn is ok.
The reason is misuse of cosn's file sytem. according to cosn's doc, its fs.cosn.impl should be org.apache.hadoop.fs.CosFileSystem

* [fix](nereids)EliminateGroupByConstant should replace agg's output after removing constant group by keys (#32878)

* [Fix](executor)Fix regression test for test_active_queries/test_backend_active_tasks #32899

* [fix](iceberg) fix iceberg catalog bug and p2 test cases (#32898)

1. Fix iceberg catalog bug

    This PR #30198 change the logic of `IcebergHMSExternalCatalog.java`,
    to get locationUrl by calling hive metastore's `getCatalog()` method.
    But this method only exists in hive 3+. So it will fail if we using hive 2.x.

    I temporary remove this logic, because this logic is only used from iceberg table writing.
    Which is still under development. We will rethink this logic later.

2. Fix test cases

    Some of P2 test cases missed `order_qt`. And because the output format of the floating point
    type is changed, some result in `out` files need to be regenerated.

* [revert](jni) revert part of #32455 (#32904)

* [fix](spill) Avoid releasing resources while spill tasks are executing (#32783)

* [chore](log) print query id before logging profile in be.INFO (#32922)

* [fix](grace-exit) Stop incorrectly of reportwork cause heap use after free #32929

* [improvement](decommission be) decommission check replica num (#32748)

* [fix](arrow-flight) Fix reach limit of connections error (#32911)

Fix Reach limit of connections error
in fe.conf , arrow_flight_token_cache_size is mandatory less than qe_max_connection/2. arrow flight sql is a stateless protocol, connection is usually not actively disconnected, bearer token is evict from the cache will unregister ConnectContext.

Fix ConnectContext.command not be reset to COM_SLEEP in time, this will result in frequent kill connection after query timeout.

Fix bearer token evict log and exception.

TODO: use arrow flight session: https://mail.google.com/mail/u/0/#inbox/FMfcgzGxRdxBLQLTcvvtRpqsvmhrHpdH

* [bugfix](cloud) few variable not initialized (#32868)

../../cloud/src/recycler/meta_checker.cpp
can cause uninitialised memory read.

* [fix](arrow-flight) Fix arrow flight sql compatible with JDK 17 and upgrade arrow 15.0.2 (#32796)

--add-opens=java.base/java.nio=ALL-UNNAMED, see: https://arrow.apache.org/docs/java/install.html#java-compatibility
groovy use flight sql connection to execute query SUM(MAX(c1) OVER (PARTITION BY)) report error: AGGREGATE clause must not contain analytic expressions, but no problem in Java execute it with jdbc::arrow-flight-sql.
groovy not support print arrow array type, throw IndexOutOfBoundsException.
"arrow_flight_sql" not support two phase read
./run-regression-test.sh --run --clean -g arrow_flight_sql

* [fix](spill) SpillStream's writer maybe may not have been finalized (#32931)

* [improvement](spill) Disable DistinctStreamingAgg when spill is enabled (#32932)

* [Improve](inverted_index) update clucene and improve array inverted index writer  (#32436)

* [Performance](exec) replace SipHash in function by XXHash (#32919)

* [feature](agg) add aggregate function sum0 (#32541)

* [improvement](mtmv) Support to get tables in materialized view when collecting table in plan (#32797)

Support to get tables in materialized view when collecting table in plan

table scehma as fllowing:

create materialized view mv1
BUILD IMMEDIATE REFRESH COMPLETE ON MANUAL
DISTRIBUTED BY RANDOM BUCKETS 1 
PROPERTIES ('replication_num' = '1')
 as 
select 
  t1.c1, 
  t3.c2 
from 
  table1 t1 
  inner join table3 t3 on t1.c1 = t3.c2

if get table from the plan as follwoing, we can get [table1, table3, table2], the mv1 is expanded to get base tables;

SELECT 
  mv1.*, 
  uuid() 
FROM 
  mv1 LEFT SEMI 
  JOIN table2 ON mv1.c1 = table2.c1 
WHERE 
  mv1.c1 IN (
    SELECT 
      c1 
    FROM 
      table2
  ) 
  OR mv1.c1 < 10

* [enhance](mtmv)support olap table partition column is null (#32698)

* [enhancement](cloud) add table version to cloud (#32738)

Add table version to cloud.

In Fe:
Get: If Fe is cloud mode, get table version from meta service.
Update: Op drop/replace temp partition, commit transaction.

In meta service:
Add: create Index. init value is 1.
Remove: by recycler.
Update: commit/drop partition rpc, commit txn rpc. Atomic++.

* [fix](cloud) schema change from not null to null (#32913)

1. Use equals instead of == for type comparing
2. null bitmap size is reisze by size of ref column.

* [feature](Nereids): add ColumnPruningPostProcessor. (#32800)

* [case](rowpolicy)fix row policy has been exist (#32880)

* [fix](pipeline) fix use error row desc when origin block clear (#32803)

* [fix](Nereids) support variant column with index when create table (#32948)

* [opt](Nereids) support create table with variant type (#32953)

* [test](insert-overwrite) Add insert overwrite auto detect concurrency cases (#32935)

* [fix](compile) fe cannot compile in idea (#32955)

* [enhancement](plsql) Support select * from routines (#32866)

Support show of plsql procedure using select * from routines.

* [fix](trino-connector) fix `NoClassDefFoundError` of hudi `Utils` class (#32846)

Due to the change of this PR #32455 , the `trino-connector-scanner` package cannot access the `hudi_scanner` package, so the exception NoclassDeffounderror will appear.

We need to write a separate Utils class.

* [exec](column) change some complex column move to noexcept (#32954)

* [Enhancement](data skew) extends show data skew (#32732)

* [chore](test) let suite compatible with Nereids (#32964)

* Support identical column name in different index. (#32792)

* Limit the max string length to 1024 while collecting column stats to control BE memory usage. (#32470)

* [fix](merge-iterator) fix NOT_IMPLEMENTED_ERROR when read next block view (#32961)

* [improvement](executor)Add tag property for workload group #32874

* [fix](auth)unified workload and resource permission logic (#32907)

- `Grant resource` can no longer grant global `usage_priv`
-  `grant resource %` instead of `grant resource *`

before change:
```
grant usage_priv on resource * to f;
show grants for f\G
*************************** 1. row ***************************
      UserIdentity: 'f'@'%'
           Comment: 
          Password: No
             Roles: 
       GlobalPrivs: Usage_priv 
      CatalogPrivs: NULL
     DatabasePrivs: internal.information_schema: Select_priv ; internal.mysql: Select_priv 
        TablePrivs: NULL
          ColPrivs: NULL
     ResourcePrivs: NULL
 CloudClusterPrivs: NULL
WorkloadGroupPrivs: normal: Usage_priv 
```
after change
```
grant usage_priv on resource '%' to f;
show grants for f\G
*************************** 1. row ***************************
      UserIdentity: 'f'@'%'
           Comment: 
          Password: No
             Roles: 
       GlobalPrivs: NULL
      CatalogPrivs: NULL
     DatabasePrivs: internal.information_schema: Select_priv ; internal.mysql: Select_priv 
        TablePrivs: NULL
          ColPrivs: NULL
     ResourcePrivs: %: Usage_priv 
 CloudClusterPrivs: NULL
WorkloadGroupPrivs: normal: Usage_priv 

```

---------

Co-authored-by: yujun <yu.jun.reach@gmail.com>
Co-authored-by: Gavin Chou <gavineaglechou@gmail.com>
Co-authored-by: xy720 <22125576+xy720@users.noreply.github.com>
Co-authored-by: yongjinhou <109586248+yongjinhou@users.noreply.github.com>
Co-authored-by: Dongyang Li <hello_stephen@qq.com>
Co-authored-by: stephen <hello-stephen@qq.com>
Co-authored-by: morrySnow <101034200+morrySnow@users.noreply.github.com>
Co-authored-by: seawinde <149132972+seawinde@users.noreply.github.com>
Co-authored-by: lihangyu <15605149486@163.com>
Co-authored-by: Yulei-Yang <yulei.yang0699@gmail.com>
Co-authored-by: starocean999 <40539150+starocean999@users.noreply.github.com>
Co-authored-by: wangbo <wangbo@apache.org>
Co-authored-by: Mingyu Chen <morningman@163.com>
Co-authored-by: Jerry Hu <mrhhsg@gmail.com>
Co-authored-by: zhiqiang <seuhezhiqiang@163.com>
Co-authored-by: Xinyi Zou <zouxinyi02@gmail.com>
Co-authored-by: Vallish Pai <vallishpai@gmail.com>
Co-authored-by: amory <wangqiannan@selectdb.com>
Co-authored-by: HappenLee <happenlee@hotmail.com>
Co-authored-by: Jensen <czjourney@163.com>
Co-authored-by: zhangdong <493738387@qq.com>
Co-authored-by: Yongqiang YANG <98214048+dataroaring@users.noreply.github.com>
Co-authored-by: jakevin <jakevingoo@gmail.com>
Co-authored-by: Mryange <59914473+Mryange@users.noreply.github.com>
Co-authored-by: zclllyybb <zhaochangle@selectdb.com>
Co-authored-by: Tiewei Fang <43782773+BePPPower@users.noreply.github.com>
Co-authored-by: Xin Liao <liaoxinbit@126.com>
@@ -657,7 +663,7 @@ private void dropCloudPartition(long dbId, long tableId, List<Long> partitionIds
}
}

public void dropMaterializedIndex(Long tableId, List<Long> indexIds) throws DdlException {
public void dropMaterializedIndex(long tableId, List<Long> indexIds, boolean dropTable) throws DdlException {
Copy link
Contributor

Choose a reason for hiding this comment

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

where is dropTable referenced in this method?

xy720 added a commit that referenced this pull request Apr 9, 2024
…partition (#32989)

1.fix regression test test-table-version.
2.when dropping partition, only update table version when dropping a non-empty partition.
3.complete some unfinished work in #32738
seawinde pushed a commit to seawinde/doris that referenced this pull request Apr 10, 2024
…partition (apache#32989)

1.fix regression test test-table-version.
2.when dropping partition, only update table version when dropping a non-empty partition.
3.complete some unfinished work in apache#32738
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. meta-change reviewed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants