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

[enhance](partition_id) check partition id before store meta #28055

Merged
merged 7 commits into from
Dec 19, 2023

Conversation

dataroaring
Copy link
Contributor

Proposed changes

Issue Number: close #xxx

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...

@dataroaring
Copy link
Contributor Author

run buildall

Copy link
Contributor

github-actions bot commented Dec 6, 2023

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

1 similar comment
Copy link
Contributor

github-actions bot commented Dec 6, 2023

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

@dataroaring
Copy link
Contributor Author

run buildall

@doris-robot
Copy link

TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
Tpch sf100 test result on commit 035a93772945e923be2dbb6b322d295269b2a917, data reload: false

run tpch-sf100 query with default conf and session variables
q1	4706	4419	4403	4403
q2	368	184	161	161
q3	1456	1236	1250	1236
q4	1130	978	948	948
q5	3168	3197	3199	3197
q6	246	131	127	127
q7	994	521	485	485
q8	2246	2224	2184	2184
q9	6714	6789	10719	6789
q10	12970	3272	3250	3250
q11	355	197	202	197
q12	369	216	218	216
q13	21651	3806	3802	3802
q14	246	212	218	212
q15	573	521	523	521
q16	453	390	394	390
q17	1023	563	559	559
q18	7378	8092	7120	7120
q19	1520	1300	1448	1300
q20	525	377	312	312
q21	3097	2698	2708	2698
q22	362	290	307	290
Total cold run time: 71550 ms
Total hot run time: 40397 ms

run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
q1	4333	4341	4349	4341
q2	266	162	177	162
q3	3548	3534	3525	3525
q4	2386	2370	2360	2360
q5	5776	5764	5746	5746
q6	240	121	122	121
q7	2356	1878	1840	1840
q8	3517	3513	3531	3513
q9	9056	8970	8995	8970
q10	3915	3995	3997	3995
q11	505	402	372	372
q12	781	593	594	593
q13	4315	3569	3574	3569
q14	293	257	265	257
q15	567	515	523	515
q16	495	444	465	444
q17	1879	1839	1865	1839
q18	8607	8152	8360	8152
q19	1707	1777	1763	1763
q20	2246	1964	1930	1930
q21	6552	6187	6173	6173
q22	502	434	412	412
Total cold run time: 63842 ms
Total hot run time: 60592 ms

@doris-robot
Copy link

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 44.57 seconds
stream load tsv: 575 seconds loaded 74807831229 Bytes, about 124 MB/s
stream load json: 19 seconds loaded 2358488459 Bytes, about 118 MB/s
stream load orc: 66 seconds loaded 1101869774 Bytes, about 15 MB/s
stream load parquet: 32 seconds loaded 861443392 Bytes, about 25 MB/s
insert into select: 28.8 seconds inserted 10000000 Rows, about 347K ops/s
storage size: 17162576018 Bytes

Copy link
Contributor

github-actions bot commented Dec 6, 2023

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

@dataroaring
Copy link
Contributor Author

run buildall

1 similar comment
@dataroaring
Copy link
Contributor Author

run buildall

Copy link
Contributor

github-actions bot commented Dec 6, 2023

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

@doris-robot
Copy link

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 43.97 seconds
stream load tsv: 576 seconds loaded 74807831229 Bytes, about 123 MB/s
stream load json: 19 seconds loaded 2358488459 Bytes, about 118 MB/s
stream load orc: 66 seconds loaded 1101869774 Bytes, about 15 MB/s
stream load parquet: 34 seconds loaded 861443392 Bytes, about 24 MB/s
insert into select: 28.9 seconds inserted 10000000 Rows, about 346K ops/s
storage size: 17161894603 Bytes

@doris-robot
Copy link

TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
Tpch sf100 test result on commit ebb20e55e11d7867929f51f0224d1b34baf552c4, data reload: false

run tpch-sf100 query with default conf and session variables
q1	4674	4467	4469	4467
q2	371	143	155	143
q3	1465	1272	1247	1247
q4	1133	935	932	932
q5	3204	3163	3205	3163
q6	251	128	130	128
q7	992	491	486	486
q8	2239	2258	2192	2192
q9	6684	6715	6691	6691
q10	3204	3265	3272	3265
q11	325	206	205	205
q12	359	211	218	211
q13	4578	3768	3792	3768
q14	242	213	213	213
q15	575	521	530	521
q16	448	387	394	387
q17	1026	667	586	586
q18	7690	7216	6975	6975
q19	1544	1497	1341	1341
q20	573	335	339	335
q21	3125	2729	2801	2729
q22	360	292	306	292
Total cold run time: 45062 ms
Total hot run time: 40277 ms

run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
q1	4365	4353	4372	4353
q2	267	163	183	163
q3	3533	3516	3511	3511
q4	2394	2372	2368	2368
q5	5720	5715	5725	5715
q6	236	123	120	120
q7	2398	1843	1862	1843
q8	3528	3519	3541	3519
q9	9081	9043	8975	8975
q10	3915	3992	4004	3992
q11	513	380	403	380
q12	776	610	597	597
q13	4288	3572	3573	3572
q14	292	245	255	245
q15	572	519	519	519
q16	501	453	461	453
q17	1886	1860	1872	1860
q18	8964	8448	8171	8171
q19	1748	1780	1764	1764
q20	2236	1937	1934	1934
q21	6494	6173	6148	6148
q22	504	419	421	419
Total cold run time: 64211 ms
Total hot run time: 60621 ms

Copy link
Contributor

github-actions bot commented Dec 6, 2023

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

1 similar comment
Copy link
Contributor

github-actions bot commented Dec 6, 2023

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

@dataroaring
Copy link
Contributor Author

run buildall

@doris-robot
Copy link

TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
Tpch sf100 test result on commit 4ef4e427c102994218b17a2864d7c164623fe79e, data reload: false

run tpch-sf100 query with default conf and session variables
q1	51602	31845	31845	31845
q2	388	138	141	138
q3	1661	1256	1225	1225
q4	1118	922	891	891
q5	3235	3217	3228	3217
q6	259	143	142	142
q7	1018	499	490	490
q8	2171	2237	2217	2217
q9	6891	6924	6919	6919
q10	3280	3304	3311	3304
q11	348	211	222	211
q12	347	199	202	199
q13	4580	3853	3777	3777
q14	429	318	343	318
q15	746	1299	1328	1299
q16	446	384	384	384
q17	1027	552	544	544
q18	7519	6881	6906	6881
q19	1518	1324	1452	1324
q20	548	316	318	316
q21	3080	2646	2686	2646
q22	357	288	295	288
Total cold run time: 92568 ms
Total hot run time: 68575 ms

run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
q1	30816	31852	31814	31814
q2	280	167	174	167
q3	3692	3635	3661	3635
q4	2401	2382	2376	2376
q5	5812	5791	5808	5791
q6	242	140	132	132
q7	3059	3402	3365	3365
q8	3532	3547	3554	3547
q9	9253	9196	9243	9196
q10	3980	4075	4071	4071
q11	843	893	1337	893
q12	764	600	602	600
q13	4306	3552	3568	3552
q14	530	454	455	454
q15	1049	1326	1321	1321
q16	531	495	473	473
q17	1907	1878	1855	1855
q18	8839	8537	8812	8537
q19	1771	1765	1791	1765
q20	2934	2596	2688	2596
q21	6552	6208	6145	6145
q22	509	430	443	430
Total cold run time: 93602 ms
Total hot run time: 92715 ms

@dataroaring
Copy link
Contributor Author

run buildall

Copy link
Contributor

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

@doris-robot
Copy link

TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'

Tpch sf100 test result on commit 1f892dd8ffa2998cda54309f4ba46aad8ac92d9b, data reload: false

run tpch-sf100 query with default conf and session variables
q1	4727	4471	4439	4439
q2	369	149	158	149
q3	1457	1262	1202	1202
q4	1112	866	902	866
q5	3159	3169	3141	3141
q6	244	126	126	126
q7	968	482	474	474
q8	2199	2212	2181	2181
q9	6691	6647	6690	6647
q10	3221	3273	3275	3273
q11	326	201	200	200
q12	355	206	207	206
q13	4531	3788	3825	3788
q14	238	210	210	210
q15	570	528	512	512
q16	438	385	378	378
q17	1028	663	551	551
q18	7162	7023	6945	6945
q19	1529	1427	1342	1342
q20	511	309	313	309
q21	3067	2637	2672	2637
q22	351	272	282	272
Total cold run time: 44253 ms
Total hot run time: 39848 ms

run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
q1	4420	4380	4365	4365
q2	263	163	175	163
q3	3525	3518	3513	3513
q4	2389	2375	2371	2371
q5	5711	5714	5748	5714
q6	240	118	120	118
q7	2389	1887	1851	1851
q8	3519	3517	3517	3517
q9	9005	8982	8979	8979
q10	3919	3962	3959	3959
q11	497	362	396	362
q12	766	583	596	583
q13	4302	3540	3516	3516
q14	276	247	263	247
q15	569	517	529	517
q16	498	450	452	450
q17	1884	1890	1849	1849
q18	8648	8229	8192	8192
q19	1721	1716	1748	1716
q20	2253	1950	1942	1942
q21	6479	6140	6151	6140
q22	508	413	418	413
Total cold run time: 63781 ms
Total hot run time: 60477 ms

<< " error: " << commit_txn_status;
return commit_txn_status;
} else {
LOG(WARNING) << "failed to add committed rowset: " << rowset_meta->rowset_id()
Copy link
Contributor

Choose a reason for hiding this comment

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

just a warn log, no further error handling action?

@dataroaring
Copy link
Contributor Author

run buildall

Copy link
Contributor

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

@doris-robot
Copy link

TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'

Tpch sf100 test result on commit 9611dd37b8a9a45d9606f64c4a76afc4b4e20582, data reload: false

run tpch-sf100 query with default conf and session variables
q1	4691	4485	4488	4485
q2	359	157	156	156
q3	1449	1238	1239	1238
q4	1103	904	879	879
q5	3104	3114	3147	3114
q6	244	127	129	127
q7	979	474	480	474
q8	2190	2186	2163	2163
q9	6688	6662	6689	6662
q10	3232	3276	3278	3276
q11	332	207	196	196
q12	348	203	201	201
q13	4567	3766	3834	3766
q14	238	209	211	209
q15	563	527	516	516
q16	439	385	387	385
q17	1002	684	579	579
q18	7183	7012	7028	7012
q19	1551	1464	1380	1380
q20	546	304	297	297
q21	3037	2633	2616	2616
q22	355	284	282	282
Total cold run time: 44200 ms
Total hot run time: 40013 ms

run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
q1	4412	4391	4380	4380
q2	264	162	169	162
q3	3545	3504	3515	3504
q4	2372	2357	2355	2355
q5	5719	5718	5722	5718
q6	242	122	122	122
q7	2378	1878	1862	1862
q8	3509	3515	3512	3512
q9	9040	8966	8983	8966
q10	3903	3984	3986	3984
q11	494	383	387	383
q12	765	610	598	598
q13	4283	3581	3542	3542
q14	283	267	251	251
q15	569	522	523	522
q16	527	449	464	449
q17	1885	1840	1848	1840
q18	8645	8155	8205	8155
q19	1727	1751	1752	1751
q20	2246	1975	1917	1917
q21	6470	6161	6143	6143
q22	487	443	425	425
Total cold run time: 63765 ms
Total hot run time: 60541 ms

@doris-robot
Copy link

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 46.22 seconds
stream load tsv: 579 seconds loaded 74807831229 Bytes, about 123 MB/s
stream load json: 19 seconds loaded 2358488459 Bytes, about 118 MB/s
stream load orc: 66 seconds loaded 1101869774 Bytes, about 15 MB/s
stream load parquet: 32 seconds loaded 861443392 Bytes, about 25 MB/s
insert into select: 29.6 seconds inserted 10000000 Rows, about 337K ops/s
storage size: 17221319432 Bytes

@dataroaring
Copy link
Contributor Author

run buildall

Copy link
Contributor

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

@doris-robot
Copy link

TeamCity be ut coverage result:
Function Coverage: 36.49% (8533/23382)
Line Coverage: 28.62% (69348/242304)
Region Coverage: 27.64% (35892/129842)
Branch Coverage: 24.37% (18334/75244)
Coverage Report: http://coverage.selectdb-in.cc/coverage/72a515c90b885be8082223106eb3770437634006_72a515c90b885be8082223106eb3770437634006/report/index.html

@doris-robot
Copy link

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 44.75 seconds
stream load tsv: 583 seconds loaded 74807831229 Bytes, about 122 MB/s
stream load json: 19 seconds loaded 2358488459 Bytes, about 118 MB/s
stream load orc: 66 seconds loaded 1101869774 Bytes, about 15 MB/s
stream load parquet: 32 seconds loaded 861443392 Bytes, about 25 MB/s
insert into select: 29.0 seconds inserted 10000000 Rows, about 344K ops/s
storage size: 17224005941 Bytes

@doris-robot
Copy link

TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'

Tpch sf100 test result on commit 72a515c90b885be8082223106eb3770437634006, data reload: false

run tpch-sf100 query with default conf and session variables
q1	4683	4402	4388	4388
q2	367	196	158	158
q3	1443	1311	1238	1238
q4	1111	943	918	918
q5	3189	3153	3126	3126
q6	250	129	128	128
q7	1000	497	482	482
q8	2209	2217	2179	2179
q9	6715	6672	6708	6672
q10	3214	3279	3269	3269
q11	316	189	180	180
q12	349	200	206	200
q13	4546	3792	3795	3792
q14	243	211	214	211
q15	571	527	520	520
q16	435	390	380	380
q17	1008	601	529	529
q18	7141	7010	7026	7010
q19	1541	1437	1380	1380
q20	558	301	283	283
q21	3094	2632	2690	2632
q22	350	284	284	284
Total cold run time: 44333 ms
Total hot run time: 39959 ms

run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
q1	4369	4340	4307	4307
q2	267	162	176	162
q3	3537	3515	3522	3515
q4	2391	2377	2367	2367
q5	5741	5720	5740	5720
q6	241	121	119	119
q7	2393	1892	1865	1865
q8	3515	3517	3521	3517
q9	9005	8976	8999	8976
q10	3892	3991	4018	3991
q11	484	355	365	355
q12	763	603	591	591
q13	4279	3542	3563	3542
q14	282	250	249	249
q15	573	523	516	516
q16	516	453	465	453
q17	1867	1869	1842	1842
q18	8581	8246	8111	8111
q19	1731	1756	1748	1748
q20	2233	1931	1943	1931
q21	6512	6205	6157	6157
q22	500	434	431	431
Total cold run time: 63672 ms
Total hot run time: 60465 ms

Copy link
Contributor

@deardeng deardeng left a comment

Choose a reason for hiding this comment

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

LTGM

Copy link
Contributor

PR approved by anyone and no changes requested.

Copy link
Contributor

@xiaokang xiaokang 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 github-actions bot added the approved Indicates a PR has been approved by one committer. label Dec 19, 2023
Copy link
Contributor

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

@xiaokang xiaokang merged commit aab859b into apache:master Dec 19, 2023
deardeng added a commit to deardeng/incubator-doris that referenced this pull request Dec 20, 2023
…0 and return

In some scenarios, the partition id in the table meta is 0, but the rowset meta partition is not 0, (apache#28055) PR check partition id will caused be failed to start when upgrade

meta like this

```
{
    "table_id": 1266302,
    "partition_id": 0,
    "tablet_id": 1289222,
    "schema_hash": 816078096,
    "shard_id": 949,
    "creation_time": 1684805433,
    "cumulative_layer_point": -1,
    "tablet_state": "PB_RUNNING",
    "schema": {
        "keys_type": "DUP_KEYS",
        "column": [
	    ...
        ],
        "num_short_key_columns": 1,
        "num_rows_per_row_block": 1024,
	...
        "skip_write_index_on_load": false
    },
    "rs_metas": [
        {
            "rowset_id": 0,
            "partition_id": 1289193,
            "tablet_id": 1289222,
            "tablet_schema_hash": 816078096,
            "newest_write_timestamp": 1684805433,
	    ...
            "segments_overlap_pb": "NONOVERLAPPING"
        }
    ],
    "in_restore_mode": false,
    "tablet_uid": {
        "hi": -4301918259617109775,
        "lo": 2820124814688031668
    },
    "preferred_rowset_type": "BETA_ROWSET",
    "tablet_type": "TABLET_TYPE_DISK",
    "replica_id": 1812028,
    "enable_unique_key_merge_on_write": false,
    "binlog_config": {
        "enable": false,
        "ttl_seconds": 9223372036854775807,
        "max_bytes": 9223372036854775807,
        "max_history_nums": 9223372036854775807
    },
    "compaction_policy": "size_based",
    "time_series_compaction_goal_size_mbytes": 1024,
    "time_series_compaction_file_count_threshold": 2000,
    "time_series_compaction_time_threshold_seconds": 3600
}
```
deardeng added a commit to deardeng/incubator-doris that referenced this pull request Dec 20, 2023
…0 and return

In some scenarios, the partition id in the table meta is 0, but the rowset meta partition is not 0, (apache#28055) PR check partition id will caused be failed to start when upgrade

meta like this

```
{
    "table_id": 1266302,
    "partition_id": 0,
    "tablet_id": 1289222,
    "schema_hash": 816078096,
    "shard_id": 949,
    "creation_time": 1684805433,
    "cumulative_layer_point": -1,
    "tablet_state": "PB_RUNNING",
    "schema": {
        "keys_type": "DUP_KEYS",
        "column": [
	    ...
        ],
        "num_short_key_columns": 1,
        "num_rows_per_row_block": 1024,
	...
        "skip_write_index_on_load": false
    },
    "rs_metas": [
        {
            "rowset_id": 0,
            "partition_id": 1289193,
            "tablet_id": 1289222,
            "tablet_schema_hash": 816078096,
            "newest_write_timestamp": 1684805433,
	    ...
            "segments_overlap_pb": "NONOVERLAPPING"
        }
    ],
    "in_restore_mode": false,
    "tablet_uid": {
        "hi": -4301918259617109775,
        "lo": 2820124814688031668
    },
    "preferred_rowset_type": "BETA_ROWSET",
    "tablet_type": "TABLET_TYPE_DISK",
    "replica_id": 1812028,
    "enable_unique_key_merge_on_write": false,
    "binlog_config": {
        "enable": false,
        "ttl_seconds": 9223372036854775807,
        "max_bytes": 9223372036854775807,
        "max_history_nums": 9223372036854775807
    },
    "compaction_policy": "size_based",
    "time_series_compaction_goal_size_mbytes": 1024,
    "time_series_compaction_file_count_threshold": 2000,
    "time_series_compaction_time_threshold_seconds": 3600
}
```
dataroaring pushed a commit to deardeng/incubator-doris that referenced this pull request Dec 21, 2023
…0 and return

In some scenarios, the partition id in the table meta is 0, but the rowset meta partition is not 0, (apache#28055) PR check partition id will caused be failed to start when upgrade

meta like this

```
{
    "table_id": 1266302,
    "partition_id": 0,
    "tablet_id": 1289222,
    "schema_hash": 816078096,
    "shard_id": 949,
    "creation_time": 1684805433,
    "cumulative_layer_point": -1,
    "tablet_state": "PB_RUNNING",
    "schema": {
        "keys_type": "DUP_KEYS",
        "column": [
	    ...
        ],
        "num_short_key_columns": 1,
        "num_rows_per_row_block": 1024,
	...
        "skip_write_index_on_load": false
    },
    "rs_metas": [
        {
            "rowset_id": 0,
            "partition_id": 1289193,
            "tablet_id": 1289222,
            "tablet_schema_hash": 816078096,
            "newest_write_timestamp": 1684805433,
	    ...
            "segments_overlap_pb": "NONOVERLAPPING"
        }
    ],
    "in_restore_mode": false,
    "tablet_uid": {
        "hi": -4301918259617109775,
        "lo": 2820124814688031668
    },
    "preferred_rowset_type": "BETA_ROWSET",
    "tablet_type": "TABLET_TYPE_DISK",
    "replica_id": 1812028,
    "enable_unique_key_merge_on_write": false,
    "binlog_config": {
        "enable": false,
        "ttl_seconds": 9223372036854775807,
        "max_bytes": 9223372036854775807,
        "max_history_nums": 9223372036854775807
    },
    "compaction_policy": "size_based",
    "time_series_compaction_goal_size_mbytes": 1024,
    "time_series_compaction_file_count_threshold": 2000,
    "time_series_compaction_time_threshold_seconds": 3600
}
```
CalvinKirs added a commit to CalvinKirs/incubator-doris that referenced this pull request Dec 27, 2023
* [Performance](point query)Opimize partition prune for point query (apache#28150)

* [Performance](point query)Opimize partition prune for point query

* [fix](stacktrace) ignore stacktrace for error code INVALID_ARGUMENT INVERTED_INDEX_NOT_IMPLEMENTED (apache#27898) (apache#28598)

* ignore stacktrace for error INVALID_ARGUMENT INVERTED_INDEX_NOT_IMPLEMENTED

* AndBlockColumnPredicate::evaluate

* [bugfix](topn) fix coredump in copy_column_data_to_block when nullable mismatch (apache#28597)

* [bugfix](topn) fix coredump in copy_column_data_to_block when nullable mismatch

return RuntimeError if copy_column_data_to_block nullable mismatch to avoid coredump in input_col_ptr->filter_by_selector(sel_rowid_idx, select_size, raw_res_ptr) .

The problem is reported by a doris user but I can not reproduce it, so there is no testcase added currently.

* clang format

* [feature](Nereids): eliminate semi join (apache#28588)

Eliminate Semi/Anti Join which is FALSE or TRUE.

* [feature](Nereids) support datev1 and datetimev1 (apache#28581)

* [improvement](http) add show_table_data http api (apache#28380)

In some cases, users need to get the data size of single replica of a table, and evaluate certain actions based on this, such as estimating the precise backup size.

Signed-off-by: nextdreamblue <zxw520blue1@163.com>

* [Enhance](regression)enhance jdbc case to adapt to use case concurrency (apache#28565)

enhance jdbc case to adapt to use case concurrency

* [opt](Nereids)when both Nereids and old parsers report errors, prompt error messages for the Nereids (apache#28580)

* [Improvement](regression) change compound predicate regression case name to make it more clear (apache#28612)

* [regression](memtable) add case for memtable flush error handle (apache#28285)

Co-authored-by: ziyang zhang <zhangziyang@stu.cdut.edu.cn>

* [regression-test](memtable)  test memtable flush is high priority for vtable writerV1 (apache#28502)

* enhance performance for broken tablet checking under multi-core scenario with a coarse-grained read lock (apache#28552)

* [fix](load) fix memtracking orphan too large (apache#28600)

* [fix](memtable-limiter) do not block write if load mem usage is low (apache#28602)


Co-authored-by: Yongqiang YANG <98214048+dataroaring@users.noreply.github.com>

* [refactor](renamefile) rename some files according to the class names (apache#28606)

* [feature](mtmv)create mtmv support refresh_partition_num (apache#28566)

- create/alter mtmv support refresh_partition_num
- mtmv task according to refresh_partition_num executes refresh tasks in batches
- `tasks` tvf add column `CompletedPartitions` and `progress`
- fix mtmv can not `show temp partition` and `drop temp partition`
- fix task can not get error msg when insert overwrite error
- fix when the partition field is capitalized, the verification of creating a mtmv does not pass

* [fix](Nereids) stats estimation of lessThan apache#28444

* [fix](regression)Change analyze_timeout to global.  (apache#28587)

Fix hive statistics regression case. analyze_timeout is a global session variable.

* [chore] Add bvar for meta operations of BE (apache#28374)

* [Bug](cooldown) Fix problem that followers may never completely cooldown (apache#28561)

* [Improve](tvf)jni-avro support split file (apache#27933)

* [feature](mtmv)after creating a materialized view, if other operations fail, roll back  (apache#28621)

after create mtmv, if create job failed,need drop mtmv

* [fix](meta) update killed query state (#) (apache#25917)

* [refactor](profile&names) using dst_id in pipelinex profile to be same as non pipeline; rename some function names (apache#28626)

Co-authored-by: yiguolei <yiguolei@gmail.com>

* [feature][executor]support workload schedule policy (apache#28443)

* [feature](expr) Support kill query by query_id (apache#28530)

Issue Number: open apache#28517

* [chore](user) Add user property `parallel_fragment_exec_instance_num` (apache#28447)

* [feature](inverted index) add ignore_above property to prevent long s… (apache#28585)

When string is too long, clucene will throw an error. 
And the string is too long to analyze. So we ignore the string in index process when the string is longer than 256 bytes by default.
We add an poperty `ignore_above` for user to customize.

* [Enhance](broker) add inputstream expire scheduled checker to avoid memory leak for broker scan (apache#28589)

This pr introduces 2 broker conf:

1. enable_input_stream_expire_check: which indicates whether enable inputStream expire check.
2. input_stream_expire_seconds: which indicates the timeout seconds for inputStream since last update.

* [fix](hive) add support for `quoteChar` and `seperatorChar` for hive (apache#28613)

add support for quoteChar and seperatorChar .

* [Fix](transactional-hive) Fix hive transactional table return empty result. (apache#28518)

* [Fix](memtable) fix `shrink_memtable_by_agg` without duplicated keys (apache#28660)

remove duplicated logic:
```
vectorized::Block in_block = _input_mutable_block.to_block();
_put_into_output(in_block);
```
`_input_mutable_block.to_block()` will move `_input_mutable_block`, and lead to `flush` with empty block

* [enhance](partition_id) check partition id before store meta (apache#28055)

* [opt](task-assignment) use consistent hash as default task assigner and cache the consistent hash ring (apache#28522)

1. Use consistent hash algo as the default assigner for file query scan node
    A consistent assignment can better utilize the page cache of BE node.

2. Cache the consistent hash ring
    Init a consistent hash ring is time-consuming because there a thousands of virtual node need to be added.
    So cache it for better performance

* [Fix](Job)Fixed job scheduling missing certain time window schedules (apache#28659)

Since scheduling itself consumes a certain amount of time, the start time of the time window should not be the current time, but the end time of the last schedule.

* [fix](test) fix ccr test cases (apache#28664)

* [fix](regression) fix test_set_replica_status due to force_olap_table_replication_num=3 (apache#28573)

* [fix](regression) restore reserve num replicas (apache#28541)

* [fix](regression) fix test_alter_colocate_table due to force_olap_table_replication_num=3 (apache#28575)

* [improvement](transaction) reduce publish txn log (apache#28277)

* [fix](stream_load)fix bug for stream (apache#27752)

1. forbid thed  stream_load without content-length or chunked Transfer Encoding
2. forbid thed  stream_load both with content-length and chunked Transfer Encoding

Co-authored-by: xingying01 <xingying01@corp.netease.com>

* [Revert](partial update) Revert "Fix missing rowsets during doing alignment when flushing memtable due to compaction (apache#28062)" (apache#28674)

This reverts commit 485d7db.

* [feat](Nereids) support outer join and aggregate bitmap rewrite by mv (apache#28596)

- Support left outer join rewrite by materialized view
- Support bitmap_union roll up to imp count(distinct)
- Support partition materialized view rewrite

* [refactor](runtimefilter) do not use QueryContext in runtime filter (apache#28559)

* [fix](planner)should bind expr using no slot to correct tuple (apache#28656)

* [fix](planner) ctas update datev1 to datev2 should use equals (apache#28641)

* [fix](Nereids) should only do bind relation in view analyzer (apache#28637)

* [code](pipelineX) refine some pipelineX code  (apache#28570)

* [fix](partial update) report error directly if missing rowsets during doing alignment when flushing memtable due to compaction  (apache#28677)

* [opt](inverted index) Add null document interface to optimize empty string indexing (apache#28661)

* [feature](invert index) match_regexp feature added (apache#28257)

* [Feature](datatype) update be ut codes and fix bugs for IPv4/v6 (apache#28670)

* [test](Nereids): remove shape plan project and distribute in eager test (apache#28701)

* [fix](statistics)Fix drop stats fail silently bug. (apache#28635)

Drop stats use IN predicate to filter the column stats to delete. The default length of IN predicate is 1024, drop table stats with more than 1024 columns may fail.
This pr is to split the delete sql based on the IN predicate length.

* [fix](mtmv) fix insert overwrite getExecTimeout error (apache#28700)

should use InsertTimeout but QueryTimeout

* [Enhancement](auto-partition) change the behaviour when insert overwrite an auto partition table apache#28683

If we specific target partition(s) when inserting overwrite an auto partition table,
before:
could create new partition
now:
behalf just like non-auto partition table

* [FIX](regresstest) fix case with double value apache#28668

double value in case has 27 figures after the point, which will make not standable output

* [test](Nereids): add test for scalar agg (apache#28712)

* [fix](meta_scanner) fix meta_scanner process ColumnNullable (apache#28711)

* [fix](nereids) Fix data wrong using mv rewrite and ignore case when getting mv related partition table (apache#28699)

1. Fix data wrong using mv rewrite
2. Ignore case when getting mv related partition table
3. Enable infer expression column name without alias when create mv

* [test](regression-test) order by decs should only make effect on its nearest column apache#28728

* [refine](pipelineX)Make the 'set ready' logic of SenderQueue in pipelineX the same as that in the pipeline (apache#28488)

* [fix](Nereids) delete partition failed (apache#28717)

1. parser's partitionSpec changed unexpectly by PR apache#26492
2. delete without using should support un-equals expression

* [fix](tvf)Fixed the avro-scanner projection pushdown failing to query on multiple BEs (apache#28709)

* [fix](block) fix nullptr in MutableBlock::allocated_bytes (apache#28738)

* [fix](mtmv)fix thread local reference to checkpoint's Env, causing Env to be unable to be reclaimed, resulting in excessive memory usage by FE (apache#28723)

when replay addTaskResult log,will create one ConnectContext,and set Env.getCurrentEnv,then store this ctx in ConnectContext.threadLocalInfo,threadLocalInfo is static,so this ctx can not be recycling,Env of replay thread also can not be recycling

* [Fix](json reader) fix json reader crash due to `fmt::format_to` (apache#28737)

```
4# __gnu_cxx::__verbose_terminate_handler() [clone .cold] at ../../../../libstdc++-v3/libsupc++/vterminate.cc:75
5# __cxxabiv1::__terminate(void (*)()) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
6# 0x00005622F33D22B1 in /mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster0/be/lib/doris_be
7# 0x00005622F33D2404 in /mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster0/be/lib/doris_be
8# fmt::v7::detail::error_handler::on_error(char const*) in /mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster0/be/lib/doris_be
9# char const* fmt::v7::detail::parse_replacement_field<char, fmt::v7::detail::format_handler<fmt::v7::detail::buffer_appender<char>, char, fmt::v7::basic_format_context<fmt::v7::detail::buffer_appender<char>, char> >&>(char const*, char const*, fmt::v7::detail::format_handler<fmt::v7::detail::buffer_appender<char>, char, fmt::v7::basic_format_context<fmt::v7::detail::buffer_appender<char>, char> >&) in /mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster0/be/lib/doris_be
10# void fmt::v7::detail::vformat_to<char>(fmt::v7::detail::buffer<char>&, fmt::v7::basic_string_view<char>, fmt::v7::basic_format_args<fmt::v7::basic_format_context<fmt::v7::detail::buffer_appender<fmt::v7::type_identity<char>::type>, fmt::v7::type_identity<char>::type> >, fmt::v7::detail::locale_ref) in /mnt/ssd01/pipline/OpenSourceDoris/clusterEnv/P0/Cluster0/be/lib/doris_be
11# doris::vectorized::NewJsonReader::_append_error_msg(rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool*) at /root/doris/be/src/vec/exec/format/json/new_json_reader.cpp:924
12# doris::vectorized::NewJsonReader::_set_column_value
```

* [bug](coredump) Fix coredump in aggregation node's destruction(apache#28684)

fix coredump in aggregation node's destruction

* [pipelineX](improvement) Support global runtime filter (apache#28692)

* [FIX](explode)fix explode array decimal (apache#28744)

* fix explode with array<decimal> has specific precision at old planner

* [refactor](broadcastbuffer) using a queue to remove ref and unref codes (apache#28698)

Co-authored-by: yiguolei <yiguolei@gmail.com>Add a new class broadcastbufferholderqueue to manage holders
Using shared ptr to manage holders, not use ref and unref, it is too difficult to maintain.

* [enhance](blacklist) seperate blacklist conf from heartbeat (apache#28638)

There is a circuit breaker lasting for 2 minutes in grpc, then if a be is down and up again, send fragments to the be fails lasting for 2 minutes.

* [fix](stmt):fix CreateTableStmt toSql placed comment in wrong place (apache#27504)

Issue Number: close apache#27474
Co-authored-by: tongyang.han <tongyang.han@jiduauto.com>

* [Improve](compile) add `__AVX2__` macro for JsonbParser (apache#28754)

* [Improve](compile) add `__AVX2__` macro for JsonbParser

* throw exception instead of CHECK

* [Feature](materialized-view) support match logicalAggregate(logicalProject(logicalFilter(logicalOlapScan())) without agg (apache#28747)

support match logicalAggregate(logicalProject(logicalFilter(logicalOlapScan())) without agg

* [Fix] (schema change) forbid adding time type column (apache#28751)

* [fix](group_commit) fix group commit cancel stuck (apache#28749)

* [fix](scanner) fix concurrency bugs when scanner is stopped or finished (apache#28650)

`ScannerContext` will schedule scanners even after stopped, and confused with `_is_finished` and `_should_stop`.
 Only Fix the concurrency bugs when scanner is stopped or finished reported in apache#28384

* [fix](regression) fix stream load properties case fail (apache#28680)

* [fix](fe ut) fix PropertyConverterTest (apache#28722)

* [improve](rpc) Log channel state before shutdown backend service client (apache#28667)

* [fix](publish version) fix publish fail but return ok (apache#28425)

* [test](Nereids): remove shape plan project and distribute in eager test (apache#28724)

* [refactor](nereids) make NormalizeAggregate rule more clear and readable (apache#28607)

* [FIX](type) fix matchExactType for complex type (apache#28233)

fe matchExactType function should call type.matchTypes for its own logic, do not switch case to do special logic otherwise we may meet core in be like this.
 ```
F20231208 18:54:39.359673 680131 block.h:535] Check failed: _data_types[i]->is_nullable()  target type: Struct(l_info:Nullable(Array(Nullable(String)))) src type: Struct(col:Nullable(Array(Nullable(UInt8))))
*** Check failure stack trace: ***
    @     0x5584e952b926  google::LogMessage::SendToLog()
    @     0x5584e9527ef0  google::LogMessage::Flush()
    @     0x5584e952c169  google::LogMessageFatal::~LogMessageFatal()
    @     0x5584cf17201e  doris::vectorized::MutableBlock::merge_impl<>()
    @     0x5584ceac4b1d  doris::vectorized::MutableBlock::merge<>()
    @     0x5584d4dd7de3  doris::vectorized::VUnionNode::get_next_const()
    @     0x5584d4dd9a45  doris::vectorized::VUnionNode::get_next()
    @     0x5584bce469bd  std::__invoke_impl<>()
    @     0x5584bce466d0  std::__invoke<>()
    @     0x5584bce465c7  _ZNSt5_BindIFMN5doris8ExecNodeEFNS0_6StatusEPNS0_12RuntimeStateEPNS0_10vectorized5BlockEPbEPS1_St12_PlaceholderILi1EESC_ILi2EESC_ILi3EEEE6__callIS2_JOS4_OS7_OS8_EJLm0ELm1ELm2ELm3EEEET_OSt5tupleIJDpT0_EESt12_Index_tupleIJXspT1_EEE
    @     0x5584bce46358  std::_Bind<>::operator()<>()
    @     0x5584bce46208  std::__invoke_impl<>()
    @     0x5584bce46178  _ZSt10__invoke_rIN5doris6StatusERSt5_BindIFMNS0_8ExecNodeEFS1_PNS0_12RuntimeStateEPNS0_10vectorized5BlockEPbEPS3_St12_PlaceholderILi1EESD_ILi2EESD_ILi3EEEEJS5_S8_S9_EENSt9enable_ifIX16is_invocable_r_vIT_T0_DpT1_EESL_E4typeEOSM_DpOSN_
    @     0x5584bce45c18  std::_Function_handler<>::_M_invoke()
    @     0x5584bce6412f  std::function<>::operator()()
    @     0x5584bce56382  doris::ExecNode::get_next_after_projects()
    @     0x5584bce26218  doris::PlanFragmentExecutor::get_vectorized_internal()
    @     0x5584bce2431b  doris::PlanFragmentExecutor::open_vectorized_internal()
    @     0x5584bce22a96  doris::PlanFragmentExecutor::open()
    @     0x5584bce27c9d  doris::PlanFragmentExecutor::execute()
    @     0x5584bcbdb3f8  doris::FragmentMgr::_exec_actual()
    @     0x5584bcbf982f  doris::FragmentMgr::exec_plan_fragment()::$_0::operator()()
    @     0x5584bcbf9715  std::__invoke_impl<>()
    @     0x5584bcbf96b5  _ZSt10__invoke_rIvRZN5doris11FragmentMgr18exec_plan_fragmentERKNS0_23TExecPlanFragmentParamsERKSt8functionIFvPNS0_12RuntimeStateEPNS0_6StatusEEEE3$_0JEENSt9enable_ifIX16is_invocable_r_vIT_T0_DpT1_EESH_E4typeEOSI_DpOSJ_
    @     0x5584bcbf942d  std::_Function_handler<>::_M_invoke()
    @     0x5584b9dfd883  std::function<>::operator()()
    @     0x5584bd6e3929  doris::FunctionRunnable::run()
    @     0x5584bd6cf8ce  doris::ThreadPool::dispatch_thread()
```

* [test](Nereids): add assert debug log for TopnToMaxTest (apache#28755)

* [improve](move-memtable) limit task num in load stream flush token (apache#28748)

* [feature](Nereids) elimite inner join by foreign key (apache#28486)

* [enhancement](backup/restore) support alter s3 repo info about ak/sk/token (apache#27027)

in some cases:

s3.session_token/AWS_TOKEN will be expired after hours, and may be upload snapshot job will failed if data is big large;
as same reason, repo will be expired too when RepositoryMgr exec repo ping
so it need support alter s3 repo properties about ak/sk/token and update upload snapshot job properties to continue backup.

Signed-off-by: nextdreamblue <zxw520blue1@163.com>

* [improve](transaction) extend abort transaction time (apache#28662)

* [regression](p2) fix test cases result (apache#28768)

regression-test/data/external_table_p2/hive/test_hive_hudi.out
regression-test/data/external_table_p2/hive/test_hive_to_array.out
regression-test/suites/external_table_p2/tvf/test_local_tvf_compression.groovy
regression-test/suites/external_table_p2/tvf/test_path_partition_keys.groovy
regression-test/data/external_table_p2/hive/test_hive_text_complex_type.out

* (fix)[meta][export] fix replay export NPE issue (apache#28752)

The ConnectionContext does not exist in replay thread

* [Bug fix][metrics] correct fe collector type for jvm_gc (apache#28784)

Co-authored-by: 胥剑旭 <xujianxu@xujianxudeMacBook-Pro.local>

* [Chore](decimal) set check_overflow_for_decimal to true when alter table(apache#28777)

set check_overflow_for_decimal to true when alter table

* [pipelineX](fix) Fix TPCH Q2 (apache#28783)

* (topN)runtime_predicate is only triggered when the column name is obtained (apache#28419)

Issue Number: close apache#27485

* [fix](planner)fix bug of bound conjunct to wrong tuple (apache#28811)

this fix bug introduced by apache#28656

* [bug](pipelineX) Fix pipelineX bug on multiple BE (apache#28792)

* [opt](inverted index) ignore_above only affects untokenized strings (apache#28819)

* [improve](load) reduce lock scope in MemTableWriter active consumption (apache#28790)

* [opt](Nereids) improve Shape check cases (apache#28124)

* tmplate update
* log tpcds stats when check shape

* [fix](group commit)Fix the issue of duplicate addition of wal path when encouter exception (apache#28691)

* [fix](compaction) compaction should catch exception when vertical block reader read next block (apache#28625)

* [fix](Nereids) join order is not right after sql parsing (apache#28721)

for sql
```
t1, t2 join t3
```

we should generate plan like:
```
t1 join (t2 join t3)
```

but we generate:
```
(t1 join t2) join t3
```
to follow legancy planner.

* [fix](metrics) fix bvar memtable_input_block_allocated_size (apache#28725)

* [enhancement](audit-log) add status code and error msg to audit log for proxy stmt (apache#27607)

* [improvement](external catalog)Change log level to debug for getRowCountFromExternalSource. (apache#28801)

* [fix](partial update) only report error when in strict mode partial update when finding missing rowsets during flushing memtable (apache#28764)

related pr: apache#28062, apache#28674, apache#28677
fix apache#28677

* [fix](function) Fix from_second functions overflow and wrong result (apache#28685)

* [Enhancement](load) Limit the number of incorrect data drops and add documents (apache#27727)

In the load process, if there are problems with the original data, we will store the error data in an error_log file on the disk for subsequent debugging. However, if there are many error data, it will occupy a lot of disk space. Now we want to limit the number of error data that is saved to the disk.

Be familiar with the usage of doris' import function and internal implementation process
Add a new be configuration item load_error_log_limit_bytes = default value 200MB
Use the newly added threshold to limit the amount of data that RuntimeState::append_error_msg_to_file writes to disk
Write regression cases for testing and verification

Co-authored-by: xy720 <22125576+xy720@users.noreply.github.com>

* [test](partial update) add complex type regression cases for partial update (apache#28758)

NOTE: There's some issue for MAP type to work with row store, so in this PR we don't have cases for MAP type
Will add the support for MAP type in future.

* [fix](test)fix test_create_table test case for nereids (apache#28693)

* [improve](config) set mutable and masterOnly in FE config stream_load_default_memtable_on_sink_node (apache#28835)

* [fix](group-commit) check if wal need recovery is abnormal (apache#28769)

* [Fix](Variant) fix variant predicate rewrite OrToIn with wrong plan (apache#28695)

using the name without paths info will lead to wrong In plan, e.g.
```
where cast(v:a as text) = 'hello' or cast(v:b as text) = 'world'
```
will be rewrite to:
```
where cast(v as text) in ('hello', 'world')
``
This is wrong, because they are different slots

* [refactor](buffer) remove download buffer since it is no longer useful (apache#28832)

remove download buffer since it is no longer useful

* [Feature](Variant) Implement variant new sub column access method (apache#28484)

* [Feature](Variant) Implement variant new sub column access method

The query SELECT v["a"]["b"] from simple_var WHERE cast(v["a"]["b"] as int) = 1 encompasses three primary testing scenarios:

```
1. A basic test involving the variant data type.
2. A scenario dealing with GitHub event data in the context of a variant.
3. A case related to the TPC-H benchmark using a variant.
```

* [fix](memory) Add thread asynchronous purge jemalloc dirty pages (apache#28655)

jemallctl purge all arena dirty pages may take several seconds, which will block memory GC and cause OOM.
So purge asynchronously in a thread.

* [fix](regression) fix regression error of test_compress_type (apache#28826)

* [improvement](executor) Add tvf and regression test for Workload Scheduler (apache#28733)

1 Add select workload schedule policy tvf
2 Add reg test

* [chore](error msg) print type info when colocate with ddl failed due to type mismatch (apache#28773)

* [opt](query cancel) optimization for query cancel apache#28778

* [Fix](multi-catalog) skip hms events if hms table is not supported. (apache#28644)

Co-authored-by: wangxiangyu <wangxiangyu@360shuke.com>

* [Enhancement](job) No need to query some backends which are not alive. (apache#28608)

No need to execute some jobs if backend is not alive

* [fix](paimon)fix type convert for paimon (apache#28774)

fix type convert for paimon

* [fix](stream load)add test case and doc for arrow type of stream load (apache#28098)

add test case and doc for arrow type of stream load

* [feature](mtmv)mtmv partition refresh case (apache#28787)

* (enhance)(InternalQuery) Support to collect profile for intenal query (apache#28762)

* [optimize](count) optimize pk exact query without reading data (apache#28494)

* [opt](sessionVar)show changed sessoin var first apache#28840

“show variables” command list changed vars before not changed vars,

* check  stats and log memo for ds46 (apache#28396)

* [bug](sharedscan) Fix shared scan bug (apache#28841)

* [fix](hash join) fix stack overflow caused by evaluate case expr on huge build block (apache#28851)

* [refactor](executor)remove scan group apache#28847

* [pipelineX](refactor) rename functions (apache#28846)

* [Feature](inverted index) add lowercase option for inverted index analyzer (apache#28704)

* [feature](Nereids) Pull up join from union all (apache#28682)

* [fix](ci) tpch pipeline should not re-load data (apache#28874)

* [fix](ci) tpch pipeline should not re-load data

* 2

---------

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

* [exec](compress) use FragmentTransmissionCompressionCodec control the exchange compress behavior (apache#28818)

* [improve](move-memtable) tweak load stream flush token num and max tasks (apache#28884)

* [improve](load) remove extra layer of heavy work pool in tablet_writer_add_block (apache#28550)

* [improve](load) limit delta writer flush task parallelism (apache#28883)

* [fix](multi-catalog)filter impala generated path (apache#28786)

file impala generated dir _imapala_insert_staging

* [enhancement](udf) add prepare function for java-udf (apache#28750)

* [refactor](test)Refactor workload group/schedule policy test apache#28888

[refactor](test)Refactor workload group/schedule policy test
apache#28888

* [improve](move-memtable) avoid using heavy work pool during append data (apache#28745)

* [enhancement](broker-load) fix-move-memtable-session-var-for-s3 (apache#28894)

* [exec](load) change default parallel num from 1 to 8 in no pipeline exec engine (apache#28864)

* [fix](segcompaction) disable segcompaction by default (apache#28906)

Signed-off-by: freemandealer <freeman.zhang1992@gmail.com>

* [fix](pipelineX) fix cannot runtime obtain profile on pipelineX apache#28795

* [fix](mtmv) fix failed to specify the number of buckets when bucket auto (apache#28854)

Issue Number: close #xxx

- fix failed to specify the number of buckets when bucket auto
- delete unused SessionVariable
- if mtmv used external table ,check `isMaterializedViewRewriteEnableContainForeignTable`

* [bugfix](scannercore) scanner will core in deconstructor during collect profile (apache#28727)

* [FIX](map)fix map with rowstore table (apache#28877)

* [feature](mtmv)MTMV pause and resume (apache#28887)

- PAUSE MATERIALIZED VIEW JOB ON mv1
- RESUME MATERIALIZED VIEW JOB ON mv1
- fix when drop db,not drop job
- add lock for one materialized view can only run one task at a time

* [feature](mtmv)add more test case1 (apache#28910)

* [fix](block) add block columns size dcheck (apache#28539)

* [fix](chore) update dcheck to avoid core during stress test (apache#28895)

* [fix](doc) Add the usage example of bos to the documentation of s3 tvf (apache#28899)

* [fix](mtmv)fix can not create mtmv all use default value (apache#28922)

* [fix](parquet) the end offset of column chunk may be wrong in parquet metadata (apache#28891)

* [fix](paimon)fix `like` predicate (apache#28803)

fix like predict

* [fix](merge-on-write) migration may cause duplicate keys for mow table (apache#28923)

* [fix](mtmv) Related partition exclude null generate column when increment build materialized view (apache#28855)

Infer partition column by materialized view partition column, exclude null generate column in join when increment build materialized view

* [nereids] fix join fd computing bug (apache#28849)

* [Fix](statistics) Fix partition name NPE and sample for all table during auto analyze (apache#28916)

Fix partition name NPE and sample for all table during auto analyze.
Sample for all tables because getData may have latency, which may cause full analyze a huge table and use too much resource. Sample for all tables to avoid this. Will improve the strategy later.

* [fix](nereids) Fix query mv rewrite fail when mv cache build quickly (apache#28876)

* [optimize](zonemap) skip zonemap if predicate does not support_zonemap (apache#28595)

* [optimize](zonemap) skip zonemap if predicate does not support_zonemap apache#27608 (apache#28506)

* Revert "[bugfix](scannercore) scanner will core in deconstructor during collect profile (apache#28727)" (apache#28931)

This reverts commit 4066de3.

* [fix] (nereids) Catch exception when mv fail and fix the npe (apache#28932)

* [fix](regression-test) test_partial_update_native_insert_stmt_complex is flaky (apache#28927)

* [improvement](group commit) make get column function more reliable when replaying wal (apache#28900)

* [opt](nereids) convert or to inpredicate and optimize inpredicate partition prune (apache#28316)

* [enhancement](bulk-load) cancel loading tasks directly without retrying when timeout exceeded (apache#28666)

* [chore](test) Add testing util sync point (apache#28924)

* [chore](prompt) Optimize tablet and replica prompt by pointing out what the numbers mean (apache#28925)

* [fix](join) incorrect result of left semi/anti join with empty build side (apache#28898)

* [docs] (DebugPoints) Update docs about Debug Points (apache#28347)


---------

Co-authored-by: qinhao <qinhao@newland.com.cn>

* [feature](api) add profile text api (apache#28697)

* [opt](invert index) Empty strings are not written to the index in the case of TOKENIZED (apache#28822)

* [feature](pipelineX) control exchange sink by memory usage (apache#28814)

* [fix](pipelineX) fix use global rf when there no shared_scans (apache#28869)

* [refactor](pipelineX)do not override dependency() function in pipelineX (apache#28848)

* [fix](log) regularise some BE error type and fix a load task check apache#28729

* [chore](test) correct create table statement (apache#28863)

* [fix](nereids)subquery unnest need handle subquery in Not expr correnctly (apache#28713)

* [feature](nereids)support decimalv2 (apache#28726)

* [fix](nereids)group by expr may be bound twice in bind agg slot (apache#28771)

* [doc](insert) Add group commit docs (apache#25949)

* [performance](variant) support topn 2phase read for variant column (apache#28318)

 [performance](variant) support topn 2phase read for variant column

* return residual expr of join (apache#28760)

* [fix](load) fix nullptr when getting memtable flush running count (apache#28942)

* [fix](load) fix nullptr when getting memtable flush running count

* style

* (enhance)(regression) Support `force_olap_table_replication_num=3` run test_insert_random_distribution_table case (apache#28903)

* [Test](Job)Add test case (apache#28481)

* [fix](doc) typo fix in auto-partition page (apache#28512)

* [feature](load) enable memtable on sink node by default (apache#28963)

* [Chore](Job)print log before task execute (apache#28962)

* [fix](hdfs) Fix HdfsFileSystem::exists_impl crash (apache#28952)

Calling hdfsGetLastExceptionRootCause without initializing ThreadLocalState
will crash. This PR modifies the condition for determining the existence of
a hdfs file, because hdfsExists will set errno to ENOENT when the file does
not exist, we can use this condition to check whether a file existence rather
than check the existence of the root cause.

* [fix](block) fix be core while mutable block merge may cause different row size between columns in origin block (apache#27943)

* [fix](doc) typo fix in dynamic-partition page (apache#28511)

* [fix](hash join) fix column ref DCHECK failure of hash join node block mem reuse (apache#28991)

Introduced by apache#28851, after evaluating build side expr, some columns in resulting block may be referenced more than once in the same block.

e.g. coalesce(col_a, 'string') if col_a is nullable but actually contains no null values, in this case funcition coalesce will insert a new nullable column which references the original col_a.

* [opt](assert_num_rows) support filter in AssertNumRows operator and fix some explain (apache#28935)

* NEED

* Update pipeline x

* fix pipelinex compile

* [fix](parquet_reader) misused bool pointer (apache#28986)

Signed-off-by: pengyu <pengyu@selectdb.com>

* [doc](multi-catalog)add krb and some ertificates FAQs (apache#28858)

add some security docs

* [fix](planner)should save original select list item before analyze (apache#28187)

* [fix](planner)should save original select list item before analyze

* fix test case

* fix failed case

* [bug](storage) Fix gc rowset bug (apache#28979)

* [fix](mtmv)add log for resolve pending task (apache#28999)

* add lock for resolve pending task

* add lock for resolve pending task

* [improvement](nereids) Get partition related table disable nullable field and complete agg matched pattern mv rules. (apache#28973)

* [improvement] (nereids) Get partition related table disable nullable field and modify regression test, complete agg mv rules.

* make filed not null to create partition mv

* [chore](config) modify `tablet_schema_cache_recycle_interval` from 24h to 1h (apache#28980)

To prevent from too many tablet schema cache in memory and lead to performance issue when hold lock
to erase item

* [opt](scanner) optimize the number of threads of scanners (apache#28640)

1. Remove `doris_max_remote_scanner_thread_pool_thread_num`, use `doris_scanner_thread_pool_thread_num` only.
2. Set the default value `doris_scanner_thread_pool_thread_num` as `std::max(48, CpuInfo::num_cores() * 4)`

* [chore](config) modify `variant_ratio_of_defaults_as_sparse_column` from 0.95 to 1 (apache#28984)

since sparse column is not stable at present

* [feature](nereids)support partition property in nereids (apache#28982)

* [feature](Nereids) support table valued function http_stream (apache#29004)

* [feature](Load)(step2)support nereids load job schedule (apache#26356)

We will  Integrate new load job manager into  new job scheduling framework so that the insert into task can be scheduled after the broker load sql  is converted to insert into TVF(table value function) sql.

issue: apache#24221

Now support:
1. load data by tvf insert into sql, but just for simple load(columns need to be defined in the table)
2. show load stmt
- job id, label name, job state, time info
- simple progress
3. cancel load from db
4. support that enable new load through Config.enable_nereids_load
5. can replay job after restarting doris

TODO:
- support partition insert job
- support show statistics from BE
- support multiple task and collect task statistic
- support transactional task
- need add ut case

* [enhance](tablet) Reduce log in tablet meta (apache#28719)

* [fix](case) Add sync to test case (apache#29034)

* [opt](compound) Optimize by deleting the compound expr after obtaining the final result (apache#28934)

* [hotfix](jdbc catalog) fix load table and column names npe (apache#28865)

This fix is for the npe situation that occurs when FE of non-Master nodes initializes Jdbc Catalog metadata.

* [opt](Nereids) support cast bewteen numeric and  boolean in FE (apache#29006)

* [improvement](jdbc catalog) Optimize connection pool caching logic (apache#28859)

In the old caching logic, we only used jdbcurl, user, and password as cache keys. This may cause the old link to be still used when replacing the jar package, so we should concatenate all the parameters required for the connection pool as the key.

* [fix](Nereids) runtime filter push down failed (apache#28997)

project child not always NamedExpression

failed msg
```
org.apache.doris.common.AnalysisException: errCode = 2, detailMessage = class org.apache.doris.nereids.trees.expressions.literal.VarcharLiteral cannot be cast to class org.apache.doris.nereids.trees.expressions.NamedExpression (org.apache.doris.nereids.trees.expressions.literal.VarcharLiteral and org.apache.doris.nereids.trees.expressions.NamedExpression are in unnamed module of loader 'app')
    at org.apache.doris.qe.StmtExecutor.executeByNereids(StmtExecutor.java:623) ~[classes/:?]
    at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:478) ~[classes/:?]
    at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:457) ~[classes/:?]
    at org.apache.doris.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:245) ~[classes/:?]
    at org.apache.doris.qe.MysqlConnectProcessor.handleQuery(MysqlConnectProcessor.java:166) ~[classes/:?]
    at org.apache.doris.qe.MysqlConnectProcessor.dispatch(MysqlConnectProcessor.java:193) ~[classes/:?]
    at org.apache.doris.qe.MysqlConnectProcessor.processOnce(MysqlConnectProcessor.java:246) ~[classes/:?]
    at org.apache.doris.mysql.ReadListener.lambda$handleEvent$0(ReadListener.java:52) ~[classes/:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
    at java.lang.Thread.run(Thread.java:829) ~[?:?]
Caused by: java.lang.ClassCastException: class org.apache.doris.nereids.trees.expressions.literal.VarcharLiteral cannot be cast to class org.apache.doris.nereids.trees.expressions.NamedExpression (org.apache.doris.nereids.trees.expressions.literal.VarcharLiteral and org.apache.doris.nereids.trees.expressions.NamedExpression are in unnamed module of loader 'app')
    at org.apache.doris.nereids.trees.plans.physical.PhysicalSetOperation.pushDownRuntimeFilter(PhysicalSetOperation.java:178) ~[classes/:?]
    at org.apache.doris.nereids.trees.plans.physical.PhysicalHashJoin.pushDownRuntimeFilter(PhysicalHashJoin.java:229) ~[classes/:?]
    at org.apache.doris.nereids.processor.post.RuntimeFilterGenerator.pushDownRuntimeFilterCommon(RuntimeFilterGenerator.java:386) ~[classes/:?]
```

* [fix](Nereids) generating function should not folding to NullLiteral (apache#29003)

should not fold table generating function to null when do constant folding.
we should remove Generate node and replaced it by project later.

* [improve](load) add profile for WaitFlushLimitTime (apache#29013)

* [opt](Nereids) let inverted index work with top opt (apache#29000)

* [feature](Nereids) support values inline table in query (apache#28972)

* [enhencement](config) change default memtable size & loadStreamPerNode & default load parallelism (apache#28977)

We change memtable size from 200MB to 100MB to achieve smoother flush
performance. We change loadStreamPerNode from 20 to 60 to avoid stream
rpc to be the bottleneck when enable memtable_on_sink_node. We change
default s3&broker load parallelsim to make the most of CPUs on moderm
multi-core systems.

Signed-off-by: freemandealer <freeman.zhang1992@gmail.com>

* [improve](move-memtable) increase load_stream_flush_token_max_tasks (apache#29011)

* [feature](scan) Implement parallel scanning by dividing the tablets based on the row range (apache#28967)

* [feature](scan) parallel scann on dup/mow mode

* fix bugs

* [refactor](create tablet) default create tablet round robin  (apache#28911)

* [Bug] optimize the collection import Lists dependency packge apache#28523 (apache#28579)

* [fix](regression) Fix flaky test test_partial_update_2pc_schema_change (apache#29037)

* [Bug](security) BE download_files function exists log print sensitive msg apache#28592 (apache#28594)

* Revert "[feature](load) enable memtable on sink node by default (apache#28963)" (apache#29090)

This reverts commit 17917a0.

* [improvement](statistics)Remove retry load when load stats cache fail (apache#28904)

Remove retry load when load stats cache fail. This case usually happens when BE is down or BE OOM, retry doesn't work in these cases and may increase BE work load.

* [fix](pipeline) sort_merge should throw exception in has_next_block if got failed status (apache#29076)

Test in regression-test/suites/datatype_p0/decimalv3/test_decimalv3_overflow.groovy::249 sometimes failed when there are multiple BEs and FE process report status slowly for some reason.

explain select k1, k2, k1 * k2 from test_decimal128_overflow2 order by 1,2,3
--------------

+----------------------------------------------------------------------------------------------------------------------------+
| Explain String(Nereids Planner)                                                                                            |
+----------------------------------------------------------------------------------------------------------------------------+
| PLAN FRAGMENT 0                                                                                                            |
|   OUTPUT EXPRS:                                                                                                            |
|     k1[#5]                                                                                                                 |
|     k2[#6]                                                                                                                 |
|     (k1 * k2)[#7]                                                                                                          |
|   PARTITION: UNPARTITIONED                                                                                                 |
|                                                                                                                            |
|   HAS_COLO_PLAN_NODE: false                                                                                                |
|                                                                                                                            |
|   VRESULT SINK                                                                                                             |
|      MYSQL_PROTOCAL                                                                                                        |
|                                                                                                                            |
|   111:VMERGING-EXCHANGE                                                                                                    |
|      offset: 0                                                                                                             |
|                                                                                                                            |
| PLAN FRAGMENT 1                                                                                                            |
|                                                                                                                            |
|   PARTITION: HASH_PARTITIONED: k1[#0], k2[#1]                                                                              |
|                                                                                                                            |
|   HAS_COLO_PLAN_NODE: false                                                                                                |
|                                                                                                                            |
|   STREAM DATA SINK                                                                                                         |
|     EXCHANGE ID: 111                                                                                                       |
|     UNPARTITIONED                                                                                                          |
|                                                                                                                            |
|   108:VSORT                                                                                                                |
|   |  order by: k1[#5] ASC, k2[#6] ASC, (k1 * k2)[#7] ASC                                                                   |
|   |  offset: 0                                                                                                             |
|   |                                                                                                                        |
|   102:VOlapScanNode                                                                                                        |
|      TABLE: regression_test_datatype_p0_decimalv3.test_decimal128_overflow2(test_decimal128_overflow2), PREAGGREGATION: ON |
|      partitions=1/1 (test_decimal128_overflow2), tablets=8/8, tabletList=22841,22843,22845 ...                             |
|      cardinality=6, avgRowSize=0.0, numNodes=1                                                                             |
|      pushAggOp=NONE                                                                                                        |
|      projections: k1[#0], k2[#1], (k1[#0] * k2[#1])                                                                        |
|      project output tuple id: 1                                                                                            |
+----------------------------------------------------------------------------------------------------------------------------+
36 rows in set (0.03 sec)
Why failed:

Multiple BEs
Fragments 0 and 1 are MUST on different BEs
Pipeline task of VOlapScanNode which executes k1*k2 failed sets query status to cancelled
Pipeline task of VSort call try close, send Cancelled status to VMergeExchange
sort_curso did not throw exception when it meets error

* [feature](Nereids): support infer join when comapring mv (apache#28988)

* [fix](nereids) "not is null" stats estimation fix (apache#28860)

* fix not is null stats

* [opt](nereids)expr normalize after filter pushdown (apache#28743)

normalize expression after filter push down

* [Enhancement](Wal)Support dynamic wal space limit (apache#27726)

* [fix](doc) spell errors fixes query profile docs (apache#28437)

* [opt](Nerieds) add infer props to expression (apache#28953)

* [fix](read) remove logic of estimating count of rows to read in segment iterator to avoid wrong result of unique key. (apache#29109)

* [fix](paimon) read batch by doris' batch size (apache#29039)

* [fix](mtmv)add log for resolve pending task (apache#29078)

* [Refact](inverted index) refactor inverted index writer init (apache#29072)

* [fix](paimon)Remove the static attribute of the source for paimon (apache#29032)

* [fix](planner) Fix delete statement on MOR unique table (apache#28968)

add conditions for mor table removed in apache#26776

* [fix][compile]unused variable (apache#28992)

* [Fix](WorkFlow)Auto replay not work

* [Fix](WorkFlow)Auto replay not work

* [Fix](WorkFlow)Auto replay not work

---------

Signed-off-by: nextdreamblue <zxw520blue1@163.com>
Signed-off-by: freemandealer <freeman.zhang1992@gmail.com>
Signed-off-by: pengyu <pengyu@selectdb.com>
Co-authored-by: lihangyu <15605149486@163.com>
Co-authored-by: Kang <kxiao.tiger@gmail.com>
Co-authored-by: jakevin <jakevingoo@gmail.com>
Co-authored-by: morrySnow <101034200+morrySnow@users.noreply.github.com>
Co-authored-by: xueweizhang <zxw520blue1@163.com>
Co-authored-by: zhangguoqiang <18372634969@163.com>
Co-authored-by: zhangdong <493738387@qq.com>
Co-authored-by: airborne12 <airborne08@gmail.com>
Co-authored-by: Ma1oneZhang <73012001+Ma1oneZhang@users.noreply.github.com>
Co-authored-by: ziyang zhang <zhangziyang@stu.cdut.edu.cn>
Co-authored-by: Siyang Tang <82279870+TangSiyang2001@users.noreply.github.com>
Co-authored-by: Kaijie Chen <ckj@apache.org>
Co-authored-by: Yongqiang YANG <98214048+dataroaring@users.noreply.github.com>
Co-authored-by: yiguolei <676222867@qq.com>
Co-authored-by: minghong <englefly@gmail.com>
Co-authored-by: Jibing-Li <64681310+Jibing-Li@users.noreply.github.com>
Co-authored-by: Gavin Chou <gavineaglechou@gmail.com>
Co-authored-by: plat1ko <platonekosama@gmail.com>
Co-authored-by: wudongliang <46414265+DongLiang-0@users.noreply.github.com>
Co-authored-by: Nitin-Kashyap <66766227+Nitin-Kashyap@users.noreply.github.com>
Co-authored-by: yiguolei <yiguolei@gmail.com>
Co-authored-by: wangbo <wangbo@apache.org>
Co-authored-by: nanfeng <42513321+nanfeng1999@users.noreply.github.com>
Co-authored-by: Xinyi Zou <zouxinyi02@gmail.com>
Co-authored-by: qiye <jianliang5669@gmail.com>
Co-authored-by: DuRipeng <453243496@qq.com>
Co-authored-by: wuwenchi <wuwenchihdu@hotmail.com>
Co-authored-by: Qi Chen <kaka11.chen@gmail.com>
Co-authored-by: Mingyu Chen <morningman@163.com>
Co-authored-by: Xin Liao <liaoxinbit@126.com>
Co-authored-by: yujun <yu.jun.reach@gmail.com>
Co-authored-by: walter <w41ter.l@gmail.com>
Co-authored-by: xy <whuxingying@163.com>
Co-authored-by: xingying01 <xingying01@corp.netease.com>
Co-authored-by: seawinde <149132972+seawinde@users.noreply.github.com>
Co-authored-by: Mryange <59914473+Mryange@users.noreply.github.com>
Co-authored-by: starocean999 <40539150+starocean999@users.noreply.github.com>
Co-authored-by: bobhan1 <bh2444151092@outlook.com>
Co-authored-by: zzzxl <33418555+zzzxl1993@users.noreply.github.com>
Co-authored-by: yangshijie <sjyang2022@zju.edu.cn>
Co-authored-by: zclllyybb <zhaochangle@selectdb.com>
Co-authored-by: amory <wangqiannan@selectdb.com>
Co-authored-by: zhiqiang <seuhezhiqiang@163.com>
Co-authored-by: xy720 <22125576+xy720@users.noreply.github.com>
Co-authored-by: Gabriel <gabrielleebuaa@gmail.com>
Co-authored-by: htyoung <hty551020@hotmail.com>
Co-authored-by: Pxl <pxl290@qq.com>
Co-authored-by: Luwei <814383175@qq.com>
Co-authored-by: meiyi <myimeiyi@gmail.com>
Co-authored-by: Ashin Gau <AshinGau@users.noreply.github.com>
Co-authored-by: HHoflittlefish777 <77738092+HHoflittlefish777@users.noreply.github.com>
Co-authored-by: 谢健 <jianxie0@gmail.com>
Co-authored-by: XuJianxu <xjxlzlpzl@163.com>
Co-authored-by: 胥剑旭 <xujianxu@xujianxudeMacBook-Pro.local>
Co-authored-by: Yoko <53637394+TomaYoko@users.noreply.github.com>
Co-authored-by: huanghaibin <284824253@qq.com>
Co-authored-by: lw112 <131352377+felixwluo@users.noreply.github.com>
Co-authored-by: zhannngchen <48427519+zhannngchen@users.noreply.github.com>
Co-authored-by: Xiangyu Wang <dut.xiangyu@gmail.com>
Co-authored-by: wangxiangyu <wangxiangyu@360shuke.com>
Co-authored-by: AlexYue <yj976240184@gmail.com>
Co-authored-by: TengJianPing <18241664+jacktengg@users.noreply.github.com>
Co-authored-by: xzj7019 <131111794+xzj7019@users.noreply.github.com>
Co-authored-by: Dongyang Li <hello_stephen@qq.com>
Co-authored-by: stephen <hello-stephen@qq.com>
Co-authored-by: HappenLee <happenlee@hotmail.com>
Co-authored-by: slothever <18522955+wsjz@users.noreply.github.com>
Co-authored-by: zhangstar333 <87313068+zhangstar333@users.noreply.github.com>
Co-authored-by: zhengyu <freeman.zhang1992@gmail.com>
Co-authored-by: Jerry Hu <mrhhsg@gmail.com>
Co-authored-by: HowardQin <hao.qin@esgyn.cn>
Co-authored-by: qinhao <qinhao@newland.com.cn>
Co-authored-by: deardeng <565620795@qq.com>
Co-authored-by: caiconghui <55968745+caiconghui@users.noreply.github.com>
Co-authored-by: py023 <137761033+py023@users.noreply.github.com>
Co-authored-by: zy-kkk <zhongyk10@gmail.com>
Co-authored-by: Guangming Lu <71873108+LuGuangming@users.noreply.github.com>
Co-authored-by: abmdocrt <Yukang.Lian2022@gmail.com>
hello-stephen pushed a commit to hello-stephen/doris that referenced this pull request Dec 28, 2023
yiguolei pushed a commit that referenced this pull request Dec 29, 2023
#28702)

* [fix](partition) Comment out some exceptions with partition equal to 0 and return

In some scenarios, the partition id in the table meta is 0, but the rowset meta partition is not 0, (#28055) PR check partition id will caused be failed to start when upgrade

meta like this

```
{
    "table_id": 1266302,
    "partition_id": 0,
    "tablet_id": 1289222,
    "schema_hash": 816078096,
    "shard_id": 949,
    "creation_time": 1684805433,
    "cumulative_layer_point": -1,
    "tablet_state": "PB_RUNNING",
    "schema": {
        "keys_type": "DUP_KEYS",
        "column": [
	    ...
        ],
        "num_short_key_columns": 1,
        "num_rows_per_row_block": 1024,
	...
        "skip_write_index_on_load": false
    },
    "rs_metas": [
        {
            "rowset_id": 0,
            "partition_id": 1289193,
            "tablet_id": 1289222,
            "tablet_schema_hash": 816078096,
            "newest_write_timestamp": 1684805433,
	    ...
            "segments_overlap_pb": "NONOVERLAPPING"
        }
    ],
    "in_restore_mode": false,
    "tablet_uid": {
        "hi": -4301918259617109775,
        "lo": 2820124814688031668
    },
    "preferred_rowset_type": "BETA_ROWSET",
    "tablet_type": "TABLET_TYPE_DISK",
    "replica_id": 1812028,
    "enable_unique_key_merge_on_write": false,
    "binlog_config": {
        "enable": false,
        "ttl_seconds": 9223372036854775807,
        "max_bytes": 9223372036854775807,
        "max_history_nums": 9223372036854775807
    },
    "compaction_policy": "size_based",
    "time_series_compaction_goal_size_mbytes": 1024,
    "time_series_compaction_file_count_threshold": 2000,
    "time_series_compaction_time_threshold_seconds": 3600
}
```

* fix
HappenLee pushed a commit to HappenLee/incubator-doris that referenced this pull request Jan 12, 2024
HappenLee pushed a commit to HappenLee/incubator-doris that referenced this pull request Jan 12, 2024
apache#28702)

* [fix](partition) Comment out some exceptions with partition equal to 0 and return

In some scenarios, the partition id in the table meta is 0, but the rowset meta partition is not 0, (apache#28055) PR check partition id will caused be failed to start when upgrade

meta like this

```
{
    "table_id": 1266302,
    "partition_id": 0,
    "tablet_id": 1289222,
    "schema_hash": 816078096,
    "shard_id": 949,
    "creation_time": 1684805433,
    "cumulative_layer_point": -1,
    "tablet_state": "PB_RUNNING",
    "schema": {
        "keys_type": "DUP_KEYS",
        "column": [
	    ...
        ],
        "num_short_key_columns": 1,
        "num_rows_per_row_block": 1024,
	...
        "skip_write_index_on_load": false
    },
    "rs_metas": [
        {
            "rowset_id": 0,
            "partition_id": 1289193,
            "tablet_id": 1289222,
            "tablet_schema_hash": 816078096,
            "newest_write_timestamp": 1684805433,
	    ...
            "segments_overlap_pb": "NONOVERLAPPING"
        }
    ],
    "in_restore_mode": false,
    "tablet_uid": {
        "hi": -4301918259617109775,
        "lo": 2820124814688031668
    },
    "preferred_rowset_type": "BETA_ROWSET",
    "tablet_type": "TABLET_TYPE_DISK",
    "replica_id": 1812028,
    "enable_unique_key_merge_on_write": false,
    "binlog_config": {
        "enable": false,
        "ttl_seconds": 9223372036854775807,
        "max_bytes": 9223372036854775807,
        "max_history_nums": 9223372036854775807
    },
    "compaction_policy": "size_based",
    "time_series_compaction_goal_size_mbytes": 1024,
    "time_series_compaction_file_count_threshold": 2000,
    "time_series_compaction_time_threshold_seconds": 3600
}
```

* fix
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.0.3-merged p0_c reviewed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants