Coverage Report

Created: 2026-10-18 23:11

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/root/doris/be/src/cloud/pb_convert.cpp
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#include "cloud/pb_convert.h"
19
20
#include <gen_cpp/olap_file.pb.h>
21
22
#include <utility>
23
24
#include "common/logging.h"
25
26
namespace doris::cloud {
27
#include "common/compile_check_begin.h"
28
29
0
RowsetMetaCloudPB doris_rowset_meta_to_cloud(const RowsetMetaPB& in) {
30
0
    RowsetMetaCloudPB out;
31
0
    doris_rowset_meta_to_cloud(&out, in);
32
0
    return out;
33
0
}
34
35
112
RowsetMetaCloudPB doris_rowset_meta_to_cloud(RowsetMetaPB&& in) {
36
112
    RowsetMetaCloudPB out;
37
112
    doris_rowset_meta_to_cloud(&out, std::move(in));
38
112
    return out;
39
112
}
40
41
5
void doris_rowset_meta_to_cloud(RowsetMetaCloudPB* out, const RowsetMetaPB& in) {
42
    // ATTN: please keep the set order aligned with the definition of proto `TabletSchemaCloudPB`.
43
5
    out->set_rowset_id(in.rowset_id());
44
5
    out->set_partition_id(in.partition_id());
45
5
    out->set_tablet_id(in.tablet_id());
46
5
    out->set_txn_id(in.txn_id());
47
5
    out->set_tablet_schema_hash(in.tablet_schema_hash());
48
5
    out->set_rowset_type(in.rowset_type());
49
5
    out->set_rowset_state(in.rowset_state());
50
5
    out->set_start_version(in.start_version());
51
5
    out->set_end_version(in.end_version());
52
5
    out->set_version_hash(in.version_hash());
53
5
    out->set_num_rows(in.num_rows());
54
5
    out->set_total_disk_size(in.total_disk_size());
55
5
    out->set_data_disk_size(in.data_disk_size());
56
5
    out->set_index_disk_size(in.index_disk_size());
57
5
    out->mutable_zone_maps()->CopyFrom(in.zone_maps());
58
5
    if (in.has_delete_predicate()) {
59
1
        out->mutable_delete_predicate()->CopyFrom(in.delete_predicate());
60
1
    }
61
5
    out->set_empty(in.empty());
62
5
    if (in.has_load_id()) {
63
1
        out->mutable_load_id()->CopyFrom(in.load_id());
64
1
    }
65
5
    out->set_delete_flag(in.delete_flag());
66
5
    out->set_creation_time(in.creation_time());
67
5
    if (in.has_tablet_uid()) {
68
1
        out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
69
1
    }
70
5
    out->set_num_segments(in.num_segments());
71
5
    out->set_rowset_id_v2(in.rowset_id_v2());
72
5
    out->set_resource_id(in.resource_id());
73
5
    out->set_newest_write_timestamp(in.newest_write_timestamp());
74
5
    out->mutable_segments_key_bounds()->CopyFrom(in.segments_key_bounds());
75
5
    if (in.has_tablet_schema()) {
76
1
        doris_tablet_schema_to_cloud(out->mutable_tablet_schema(), in.tablet_schema());
77
1
    }
78
5
    if (in.has_schema_dict_key_list()) {
79
1
        out->mutable_schema_dict_key_list()->CopyFrom(in.schema_dict_key_list());
80
1
    }
81
5
    out->set_txn_expiration(in.txn_expiration());
82
5
    out->set_segments_overlap_pb(in.segments_overlap_pb());
83
5
    out->mutable_segment_group_sizes()->CopyFrom(in.segment_group_sizes());
84
5
    if (in.has_segments_key_bounds_truncated()) {
85
1
        out->set_segments_key_bounds_truncated(in.segments_key_bounds_truncated());
86
1
    }
87
5
    if (in.has_segments_key_bounds_aggregated()) {
88
1
        out->set_segments_key_bounds_aggregated(in.segments_key_bounds_aggregated());
89
1
    }
90
5
    out->mutable_num_segment_rows()->CopyFrom(in.num_segment_rows());
91
5
    out->mutable_segments_file_size()->CopyFrom(in.segments_file_size());
92
5
    out->set_index_id(in.index_id());
93
5
    if (in.has_schema_version()) {
94
        // See cloud/src/meta-service/meta_service_schema.cpp for details.
95
1
        out->set_schema_version(in.schema_version());
96
1
    }
97
5
    out->set_enable_segments_file_size(in.enable_segments_file_size());
98
5
    out->set_has_variant_type_in_schema(in.has_variant_type_in_schema());
99
5
    out->set_enable_inverted_index_file_info(in.enable_inverted_index_file_info());
100
5
    out->set_compaction_level(in.compaction_level());
101
5
    out->mutable_inverted_index_file_info()->CopyFrom(in.inverted_index_file_info());
102
5
    out->set_source_rowset_id(in.source_rowset_id());
103
5
    out->set_source_tablet_id(in.source_tablet_id());
104
5
    if (in.has___split_schema()) {
105
1
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
106
1
    }
107
5
    if (in.has_visible_ts_ms()) {
108
1
        out->set_visible_ts_ms(in.visible_ts_ms());
109
1
    }
110
5
    if (in.has_reference_instance_id()) {
111
1
        out->set_reference_instance_id(in.reference_instance_id());
112
1
    }
113
5
    auto* slice_locations = out->mutable_packed_slice_locations();
114
5
    slice_locations->clear();
115
5
    slice_locations->insert(in.packed_slice_locations().begin(), in.packed_slice_locations().end());
116
5
    if (in.has_is_recycled()) {
117
1
        out->set_is_recycled(in.is_recycled());
118
1
    }
119
5
    if (in.has_job_id()) {
120
1
        out->set_job_id(in.job_id());
121
1
    }
122
5
}
123
124
115
void doris_rowset_meta_to_cloud(RowsetMetaCloudPB* out, RowsetMetaPB&& in) {
125
    // ATTN: please keep the set order aligned with the definition of proto `TabletSchemaCloudPB`.
126
115
    out->set_rowset_id(in.rowset_id());
127
115
    out->set_partition_id(in.partition_id());
128
115
    out->set_tablet_id(in.tablet_id());
129
115
    out->set_txn_id(in.txn_id());
130
115
    out->set_tablet_schema_hash(in.tablet_schema_hash());
131
115
    out->set_rowset_type(in.rowset_type());
132
115
    out->set_rowset_state(in.rowset_state());
133
115
    out->set_start_version(in.start_version());
134
115
    out->set_end_version(in.end_version());
135
115
    out->set_version_hash(in.version_hash());
136
115
    out->set_num_rows(in.num_rows());
137
115
    out->set_total_disk_size(in.total_disk_size());
138
115
    out->set_data_disk_size(in.data_disk_size());
139
115
    out->set_index_disk_size(in.index_disk_size());
140
115
    out->mutable_zone_maps()->Swap(in.mutable_zone_maps());
141
115
    if (in.has_delete_predicate()) {
142
2
        out->mutable_delete_predicate()->Swap(in.mutable_delete_predicate());
143
2
    }
144
115
    out->set_empty(in.empty());
145
115
    if (in.has_load_id()) {
146
10
        out->mutable_load_id()->CopyFrom(in.load_id());
147
10
    }
148
115
    out->set_delete_flag(in.delete_flag());
149
115
    out->set_creation_time(in.creation_time());
150
115
    if (in.has_tablet_uid()) {
151
2
        out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
152
2
    }
153
115
    out->set_num_segments(in.num_segments());
154
115
    out->set_rowset_id_v2(in.rowset_id_v2());
155
115
    out->set_resource_id(in.resource_id());
156
115
    out->set_newest_write_timestamp(in.newest_write_timestamp());
157
115
    out->mutable_segments_key_bounds()->Swap(in.mutable_segments_key_bounds());
158
115
    if (in.has_tablet_schema()) {
159
33
        doris_tablet_schema_to_cloud(out->mutable_tablet_schema(),
160
33
                                     std::move(*in.mutable_tablet_schema()));
161
33
    }
162
115
    if (in.has_schema_dict_key_list()) {
163
2
        out->mutable_schema_dict_key_list()->Swap(in.mutable_schema_dict_key_list());
164
2
    }
165
115
    out->set_txn_expiration(in.txn_expiration());
166
115
    out->set_segments_overlap_pb(in.segments_overlap_pb());
167
115
    out->mutable_segment_group_sizes()->Swap(in.mutable_segment_group_sizes());
168
115
    if (in.has_segments_key_bounds_truncated()) {
169
2
        out->set_segments_key_bounds_truncated(in.segments_key_bounds_truncated());
170
2
    }
171
115
    if (in.has_segments_key_bounds_aggregated()) {
172
2
        out->set_segments_key_bounds_aggregated(in.segments_key_bounds_aggregated());
173
2
    }
174
115
    out->mutable_num_segment_rows()->Swap(in.mutable_num_segment_rows());
175
115
    out->mutable_segments_file_size()->Swap(in.mutable_segments_file_size());
176
115
    out->set_index_id(in.index_id());
177
115
    if (in.has_schema_version()) {
178
        // See cloud/src/meta-service/meta_service_schema.cpp for details.
179
110
        out->set_schema_version(in.schema_version());
180
110
    }
181
115
    out->set_enable_segments_file_size(in.enable_segments_file_size());
182
115
    out->set_has_variant_type_in_schema(in.has_variant_type_in_schema());
183
115
    out->set_enable_inverted_index_file_info(in.enable_inverted_index_file_info());
184
115
    out->set_compaction_level(in.compaction_level());
185
115
    out->mutable_inverted_index_file_info()->Swap(in.mutable_inverted_index_file_info());
186
115
    out->set_source_rowset_id(in.source_rowset_id());
187
115
    out->set_source_tablet_id(in.source_tablet_id());
188
189
115
    if (in.has___split_schema()) {
190
2
        out->mutable___split_schema()->Swap(in.mutable___split_schema());
191
2
    }
192
115
    if (in.has_visible_ts_ms()) {
193
2
        out->set_visible_ts_ms(in.visible_ts_ms());
194
2
    }
195
115
    if (in.has_reference_instance_id()) {
196
2
        out->set_reference_instance_id(in.reference_instance_id());
197
2
    }
198
115
    auto* slice_locations = out->mutable_packed_slice_locations();
199
115
    slice_locations->clear();
200
115
    slice_locations->insert(in.packed_slice_locations().begin(), in.packed_slice_locations().end());
201
115
    if (in.has_is_recycled()) {
202
2
        out->set_is_recycled(in.is_recycled());
203
2
    }
204
115
    if (in.has_job_id()) {
205
2
        out->set_job_id(in.job_id());
206
2
    }
207
115
}
208
209
0
RowsetMetaPB cloud_rowset_meta_to_doris(const RowsetMetaCloudPB& in) {
210
0
    RowsetMetaPB out;
211
0
    cloud_rowset_meta_to_doris(&out, in);
212
0
    return out;
213
0
}
214
215
2
RowsetMetaPB cloud_rowset_meta_to_doris(RowsetMetaCloudPB&& in) {
216
2
    RowsetMetaPB out;
217
2
    cloud_rowset_meta_to_doris(&out, std::move(in));
218
2
    return out;
219
2
}
220
221
5
void cloud_rowset_meta_to_doris(RowsetMetaPB* out, const RowsetMetaCloudPB& in) {
222
    // ATTN: please keep the set order aligned with the definition of proto `TabletSchemaCloudPB`.
223
5
    out->set_rowset_id(in.rowset_id());
224
5
    out->set_partition_id(in.partition_id());
225
5
    out->set_tablet_id(in.tablet_id());
226
5
    out->set_txn_id(in.txn_id());
227
5
    out->set_tablet_schema_hash(in.tablet_schema_hash());
228
5
    out->set_rowset_type(in.rowset_type());
229
5
    out->set_rowset_state(in.rowset_state());
230
5
    out->set_start_version(in.start_version());
231
5
    out->set_end_version(in.end_version());
232
5
    out->set_version_hash(in.version_hash());
233
5
    out->set_num_rows(in.num_rows());
234
5
    out->set_total_disk_size(in.total_disk_size());
235
5
    out->set_data_disk_size(in.data_disk_size());
236
5
    out->set_index_disk_size(in.index_disk_size());
237
5
    out->mutable_zone_maps()->CopyFrom(in.zone_maps());
238
5
    if (in.has_delete_predicate()) {
239
1
        out->mutable_delete_predicate()->CopyFrom(in.delete_predicate());
240
1
    }
241
5
    out->set_empty(in.empty());
242
5
    if (in.has_load_id()) {
243
1
        out->mutable_load_id()->CopyFrom(in.load_id());
244
1
    }
245
5
    out->set_delete_flag(in.delete_flag());
246
5
    out->set_creation_time(in.creation_time());
247
5
    if (in.has_tablet_uid()) {
248
1
        out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
249
1
    }
250
5
    out->set_num_segments(in.num_segments());
251
5
    out->set_rowset_id_v2(in.rowset_id_v2());
252
5
    out->set_resource_id(in.resource_id());
253
5
    out->set_newest_write_timestamp(in.newest_write_timestamp());
254
5
    out->mutable_segments_key_bounds()->CopyFrom(in.segments_key_bounds());
255
5
    if (in.has_tablet_schema()) {
256
1
        cloud_tablet_schema_to_doris(out->mutable_tablet_schema(), in.tablet_schema());
257
1
    }
258
5
    if (in.has_schema_dict_key_list()) {
259
1
        out->mutable_schema_dict_key_list()->CopyFrom(in.schema_dict_key_list());
260
1
    }
261
5
    out->set_txn_expiration(in.txn_expiration());
262
5
    out->set_segments_overlap_pb(in.segments_overlap_pb());
263
5
    out->mutable_segment_group_sizes()->CopyFrom(in.segment_group_sizes());
264
5
    if (in.has_segments_key_bounds_truncated()) {
265
1
        out->set_segments_key_bounds_truncated(in.segments_key_bounds_truncated());
266
1
    }
267
5
    if (in.has_segments_key_bounds_aggregated()) {
268
1
        out->set_segments_key_bounds_aggregated(in.segments_key_bounds_aggregated());
269
1
    }
270
5
    out->mutable_num_segment_rows()->CopyFrom(in.num_segment_rows());
271
5
    out->mutable_segments_file_size()->CopyFrom(in.segments_file_size());
272
5
    out->set_index_id(in.index_id());
273
5
    if (in.has_schema_version()) {
274
        // See cloud/src/meta-service/meta_service_schema.cpp for details.
275
1
        out->set_schema_version(in.schema_version());
276
1
    }
277
5
    out->set_enable_segments_file_size(in.enable_segments_file_size());
278
5
    out->set_has_variant_type_in_schema(in.has_variant_type_in_schema());
279
5
    out->set_enable_inverted_index_file_info(in.enable_inverted_index_file_info());
280
5
    out->set_compaction_level(in.compaction_level());
281
5
    out->mutable_inverted_index_file_info()->CopyFrom(in.inverted_index_file_info());
282
5
    out->set_source_rowset_id(in.source_rowset_id());
283
5
    out->set_source_tablet_id(in.source_tablet_id());
284
5
    if (in.has___split_schema()) {
285
1
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
286
1
    }
287
5
    if (in.has_visible_ts_ms()) {
288
1
        out->set_visible_ts_ms(in.visible_ts_ms());
289
1
    }
290
5
    if (in.has_reference_instance_id()) {
291
1
        out->set_reference_instance_id(in.reference_instance_id());
292
1
    }
293
5
    auto* slice_locations = out->mutable_packed_slice_locations();
294
5
    slice_locations->clear();
295
5
    slice_locations->insert(in.packed_slice_locations().begin(), in.packed_slice_locations().end());
296
5
    if (in.has_is_recycled()) {
297
1
        out->set_is_recycled(in.is_recycled());
298
1
    }
299
5
    if (in.has_job_id()) {
300
1
        out->set_job_id(in.job_id());
301
1
    }
302
5
}
303
304
5
void cloud_rowset_meta_to_doris(RowsetMetaPB* out, RowsetMetaCloudPB&& in) {
305
    // ATTN: please keep the set order aligned with the definition of proto `TabletSchemaCloudPB`.
306
5
    out->set_rowset_id(in.rowset_id());
307
5
    out->set_partition_id(in.partition_id());
308
5
    out->set_tablet_id(in.tablet_id());
309
5
    out->set_txn_id(in.txn_id());
310
5
    out->set_tablet_schema_hash(in.tablet_schema_hash());
311
5
    out->set_rowset_type(in.rowset_type());
312
5
    out->set_rowset_state(in.rowset_state());
313
5
    out->set_start_version(in.start_version());
314
5
    out->set_end_version(in.end_version());
315
5
    out->set_version_hash(in.version_hash());
316
5
    out->set_num_rows(in.num_rows());
317
5
    out->set_total_disk_size(in.total_disk_size());
318
5
    out->set_data_disk_size(in.data_disk_size());
319
5
    out->set_index_disk_size(in.index_disk_size());
320
5
    out->mutable_zone_maps()->Swap(in.mutable_zone_maps());
321
5
    if (in.has_delete_predicate()) {
322
2
        out->mutable_delete_predicate()->Swap(in.mutable_delete_predicate());
323
2
    }
324
5
    out->set_empty(in.empty());
325
5
    if (in.has_load_id()) {
326
2
        out->mutable_load_id()->CopyFrom(in.load_id());
327
2
    }
328
5
    out->set_delete_flag(in.delete_flag());
329
5
    out->set_creation_time(in.creation_time());
330
5
    if (in.has_tablet_uid()) {
331
2
        out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
332
2
    }
333
5
    out->set_num_segments(in.num_segments());
334
5
    out->set_rowset_id_v2(in.rowset_id_v2());
335
5
    out->set_resource_id(in.resource_id());
336
5
    out->set_newest_write_timestamp(in.newest_write_timestamp());
337
5
    out->mutable_segments_key_bounds()->Swap(in.mutable_segments_key_bounds());
338
5
    if (in.has_tablet_schema()) {
339
2
        cloud_tablet_schema_to_doris(out->mutable_tablet_schema(),
340
2
                                     std::move(*in.mutable_tablet_schema()));
341
2
    }
342
5
    if (in.has_schema_dict_key_list()) {
343
2
        out->mutable_schema_dict_key_list()->Swap(in.mutable_schema_dict_key_list());
344
2
    }
345
5
    out->set_txn_expiration(in.txn_expiration());
346
5
    out->set_segments_overlap_pb(in.segments_overlap_pb());
347
5
    out->mutable_segment_group_sizes()->Swap(in.mutable_segment_group_sizes());
348
5
    if (in.has_segments_key_bounds_truncated()) {
349
2
        out->set_segments_key_bounds_truncated(in.segments_key_bounds_truncated());
350
2
    }
351
5
    if (in.has_segments_key_bounds_aggregated()) {
352
2
        out->set_segments_key_bounds_aggregated(in.segments_key_bounds_aggregated());
353
2
    }
354
5
    out->mutable_num_segment_rows()->Swap(in.mutable_num_segment_rows());
355
5
    out->mutable_segments_file_size()->Swap(in.mutable_segments_file_size());
356
5
    out->set_index_id(in.index_id());
357
5
    if (in.has_schema_version()) {
358
        // See cloud/src/meta-service/meta_service_schema.cpp for details.
359
2
        out->set_schema_version(in.schema_version());
360
2
    }
361
5
    out->set_enable_segments_file_size(in.enable_segments_file_size());
362
5
    out->set_has_variant_type_in_schema(in.has_variant_type_in_schema());
363
5
    out->set_enable_inverted_index_file_info(in.enable_inverted_index_file_info());
364
5
    out->set_compaction_level(in.compaction_level());
365
5
    out->mutable_inverted_index_file_info()->Swap(in.mutable_inverted_index_file_info());
366
5
    out->set_source_rowset_id(in.source_rowset_id());
367
5
    out->set_source_tablet_id(in.source_tablet_id());
368
5
    if (in.has___split_schema()) {
369
2
        out->mutable___split_schema()->Swap(in.mutable___split_schema());
370
2
    }
371
5
    if (in.has_visible_ts_ms()) {
372
2
        out->set_visible_ts_ms(in.visible_ts_ms());
373
2
    }
374
5
    if (in.has_reference_instance_id()) {
375
2
        out->set_reference_instance_id(in.reference_instance_id());
376
2
    }
377
5
    auto* slice_locations = out->mutable_packed_slice_locations();
378
5
    slice_locations->clear();
379
5
    slice_locations->insert(in.packed_slice_locations().begin(), in.packed_slice_locations().end());
380
5
    if (in.has_is_recycled()) {
381
2
        out->set_is_recycled(in.is_recycled());
382
2
    }
383
5
    if (in.has_job_id()) {
384
2
        out->set_job_id(in.job_id());
385
2
    }
386
5
}
387
388
0
TabletSchemaCloudPB doris_tablet_schema_to_cloud(const TabletSchemaPB& in) {
389
0
    TabletSchemaCloudPB out;
390
0
    doris_tablet_schema_to_cloud(&out, in);
391
0
    return out;
392
0
}
393
394
2
TabletSchemaCloudPB doris_tablet_schema_to_cloud(TabletSchemaPB&& in) {
395
    // ATTN: please keep the set order aligned with the definition of proto.
396
2
    TabletSchemaCloudPB out;
397
2
    doris_tablet_schema_to_cloud(&out, std::move(in));
398
2
    return out;
399
2
}
400
401
3
void doris_tablet_schema_to_cloud(TabletSchemaCloudPB* out, const TabletSchemaPB& in) {
402
    // ATTN: please keep the set order aligned with the definition of proto.
403
3
    out->set_keys_type(in.keys_type());
404
3
    out->mutable_column()->CopyFrom(in.column());
405
3
    out->set_num_short_key_columns(in.num_short_key_columns());
406
3
    out->set_num_rows_per_row_block(in.num_rows_per_row_block());
407
3
    out->set_compress_kind(in.compress_kind());
408
3
    out->set_bf_fpp(in.bf_fpp());
409
3
    out->set_next_column_unique_id(in.next_column_unique_id());
410
3
    out->set_delete_sign_idx(in.delete_sign_idx());
411
3
    out->set_sequence_col_idx(in.sequence_col_idx());
412
3
    out->set_sort_type(in.sort_type());
413
3
    out->set_sort_col_num(in.sort_col_num());
414
3
    out->set_compression_type(in.compression_type());
415
3
    out->set_schema_version(in.schema_version());
416
3
    out->set_disable_auto_compaction(in.disable_auto_compaction());
417
3
    out->mutable_index()->CopyFrom(in.index());
418
3
    out->set_version_col_idx(in.version_col_idx());
419
3
    out->set_store_row_column(in.store_row_column());
420
3
    out->set_skip_write_index_on_load(in.skip_write_index_on_load());
421
3
    out->mutable_cluster_key_uids()->CopyFrom(in.cluster_key_uids());
422
3
    out->set_is_dynamic_schema(in.is_dynamic_schema());
423
3
    out->set_is_external_segment_column_meta_used(in.is_external_segment_column_meta_used());
424
3
    out->mutable_row_store_column_unique_ids()->CopyFrom(in.row_store_column_unique_ids());
425
3
    out->set_inverted_index_storage_format(in.inverted_index_storage_format());
426
3
    out->set_enable_variant_flatten_nested(in.enable_variant_flatten_nested());
427
3
    out->set_skip_bitmap_col_idx(in.skip_bitmap_col_idx());
428
3
    out->set_storage_page_size(in.storage_page_size());
429
3
    out->set_storage_dict_page_size(in.storage_dict_page_size());
430
3
    out->set_is_in_memory(in.is_in_memory());
431
3
    out->set_row_store_page_size(in.row_store_page_size());
432
3
    if (in.has_integer_type_default_use_plain_encoding()) {
433
3
        out->set_integer_type_default_use_plain_encoding(
434
3
                in.integer_type_default_use_plain_encoding());
435
3
    }
436
3
    if (in.has_binary_plain_encoding_default_impl()) {
437
3
        out->set_binary_plain_encoding_default_impl(in.binary_plain_encoding_default_impl());
438
3
    }
439
3
    if (in.has_storage_format()) {
440
3
        out->set_storage_format(in.storage_format());
441
3
    }
442
443
3
    if (in.has___split_schema()) {
444
3
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
445
3
    }
446
3
}
447
448
36
void doris_tablet_schema_to_cloud(TabletSchemaCloudPB* out, TabletSchemaPB&& in) {
449
36
    out->set_keys_type(in.keys_type());
450
36
    out->mutable_column()->Swap(in.mutable_column());
451
36
    out->set_num_short_key_columns(in.num_short_key_columns());
452
36
    out->set_num_rows_per_row_block(in.num_rows_per_row_block());
453
36
    out->set_compress_kind(in.compress_kind());
454
36
    out->set_bf_fpp(in.bf_fpp());
455
36
    out->set_next_column_unique_id(in.next_column_unique_id());
456
36
    out->set_delete_sign_idx(in.delete_sign_idx());
457
36
    out->set_sequence_col_idx(in.sequence_col_idx());
458
36
    out->set_sort_type(in.sort_type());
459
36
    out->set_sort_col_num(in.sort_col_num());
460
36
    out->set_compression_type(in.compression_type());
461
36
    out->set_schema_version(in.schema_version());
462
36
    out->set_disable_auto_compaction(in.disable_auto_compaction());
463
36
    out->mutable_index()->Swap(in.mutable_index());
464
36
    out->set_version_col_idx(in.version_col_idx());
465
36
    out->set_store_row_column(in.store_row_column());
466
36
    out->set_skip_write_index_on_load(in.skip_write_index_on_load());
467
36
    out->mutable_cluster_key_uids()->Swap(in.mutable_cluster_key_uids());
468
36
    out->set_is_dynamic_schema(in.is_dynamic_schema());
469
36
    out->set_is_external_segment_column_meta_used(in.is_external_segment_column_meta_used());
470
36
    out->mutable_row_store_column_unique_ids()->Swap(in.mutable_row_store_column_unique_ids());
471
36
    out->set_inverted_index_storage_format(in.inverted_index_storage_format());
472
36
    out->set_enable_variant_flatten_nested(in.enable_variant_flatten_nested());
473
36
    out->set_skip_bitmap_col_idx(in.skip_bitmap_col_idx());
474
36
    out->set_storage_page_size(in.storage_page_size());
475
36
    out->set_storage_dict_page_size(in.storage_dict_page_size());
476
36
    out->set_is_in_memory(in.is_in_memory());
477
36
    out->set_row_store_page_size(in.row_store_page_size());
478
36
    if (in.has_integer_type_default_use_plain_encoding()) {
479
5
        out->set_integer_type_default_use_plain_encoding(
480
5
                in.integer_type_default_use_plain_encoding());
481
5
    }
482
36
    if (in.has_binary_plain_encoding_default_impl()) {
483
5
        out->set_binary_plain_encoding_default_impl(in.binary_plain_encoding_default_impl());
484
5
    }
485
36
    if (in.has_storage_format()) {
486
36
        out->set_storage_format(in.storage_format());
487
36
    }
488
489
36
    if (in.has___split_schema()) {
490
5
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
491
5
    }
492
36
}
493
494
0
TabletSchemaPB cloud_tablet_schema_to_doris(const TabletSchemaCloudPB& in) {
495
0
    TabletSchemaPB out;
496
0
    cloud_tablet_schema_to_doris(&out, in);
497
0
    return out;
498
0
}
499
500
2
TabletSchemaPB cloud_tablet_schema_to_doris(TabletSchemaCloudPB&& in) {
501
2
    TabletSchemaPB out;
502
2
    cloud_tablet_schema_to_doris(&out, std::move(in));
503
2
    return out;
504
2
}
505
506
3
void cloud_tablet_schema_to_doris(TabletSchemaPB* out, const TabletSchemaCloudPB& in) {
507
    // ATTN: please keep the set order aligned with the definition of proto.
508
3
    out->set_keys_type(in.keys_type());
509
3
    out->mutable_column()->CopyFrom(in.column());
510
3
    out->set_num_short_key_columns(in.num_short_key_columns());
511
3
    out->set_num_rows_per_row_block(in.num_rows_per_row_block());
512
3
    out->set_compress_kind(in.compress_kind());
513
3
    out->set_bf_fpp(in.bf_fpp());
514
3
    out->set_next_column_unique_id(in.next_column_unique_id());
515
3
    out->set_delete_sign_idx(in.delete_sign_idx());
516
3
    out->set_sequence_col_idx(in.sequence_col_idx());
517
3
    out->set_sort_type(in.sort_type());
518
3
    out->set_sort_col_num(in.sort_col_num());
519
3
    out->set_compression_type(in.compression_type());
520
3
    out->set_schema_version(in.schema_version());
521
3
    out->set_disable_auto_compaction(in.disable_auto_compaction());
522
3
    out->mutable_index()->CopyFrom(in.index());
523
3
    out->set_version_col_idx(in.version_col_idx());
524
3
    out->set_store_row_column(in.store_row_column());
525
3
    out->set_skip_write_index_on_load(in.skip_write_index_on_load());
526
3
    out->mutable_cluster_key_uids()->CopyFrom(in.cluster_key_uids());
527
3
    out->set_is_dynamic_schema(in.is_dynamic_schema());
528
3
    out->set_is_external_segment_column_meta_used(in.is_external_segment_column_meta_used());
529
3
    out->mutable_row_store_column_unique_ids()->CopyFrom(in.row_store_column_unique_ids());
530
3
    out->set_inverted_index_storage_format(in.inverted_index_storage_format());
531
3
    out->set_enable_variant_flatten_nested(in.enable_variant_flatten_nested());
532
3
    out->set_skip_bitmap_col_idx(in.skip_bitmap_col_idx());
533
3
    out->set_storage_page_size(in.storage_page_size());
534
3
    out->set_storage_dict_page_size(in.storage_dict_page_size());
535
3
    out->set_is_in_memory(in.is_in_memory());
536
3
    out->set_row_store_page_size(in.row_store_page_size());
537
3
    if (in.has_integer_type_default_use_plain_encoding()) {
538
3
        out->set_integer_type_default_use_plain_encoding(
539
3
                in.integer_type_default_use_plain_encoding());
540
3
    }
541
3
    if (in.has_binary_plain_encoding_default_impl()) {
542
3
        out->set_binary_plain_encoding_default_impl(in.binary_plain_encoding_default_impl());
543
3
    }
544
3
    if (in.has_storage_format()) {
545
3
        out->set_storage_format(in.storage_format());
546
3
    }
547
548
3
    if (in.has___split_schema()) {
549
3
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
550
3
    }
551
3
}
552
553
5
void cloud_tablet_schema_to_doris(TabletSchemaPB* out, TabletSchemaCloudPB&& in) {
554
    // ATTN: please keep the set order aligned with the definition of proto.
555
5
    out->set_keys_type(in.keys_type());
556
5
    out->mutable_column()->Swap(in.mutable_column());
557
5
    out->set_num_short_key_columns(in.num_short_key_columns());
558
5
    out->set_num_rows_per_row_block(in.num_rows_per_row_block());
559
5
    out->set_compress_kind(in.compress_kind());
560
5
    out->set_bf_fpp(in.bf_fpp());
561
5
    out->set_next_column_unique_id(in.next_column_unique_id());
562
5
    out->set_delete_sign_idx(in.delete_sign_idx());
563
5
    out->set_sequence_col_idx(in.sequence_col_idx());
564
5
    out->set_sort_type(in.sort_type());
565
5
    out->set_sort_col_num(in.sort_col_num());
566
5
    out->set_compression_type(in.compression_type());
567
5
    out->set_schema_version(in.schema_version());
568
5
    out->set_disable_auto_compaction(in.disable_auto_compaction());
569
5
    out->mutable_index()->Swap(in.mutable_index());
570
5
    out->set_version_col_idx(in.version_col_idx());
571
5
    out->set_store_row_column(in.store_row_column());
572
5
    out->set_skip_write_index_on_load(in.skip_write_index_on_load());
573
5
    out->mutable_cluster_key_uids()->Swap(in.mutable_cluster_key_uids());
574
5
    out->set_is_dynamic_schema(in.is_dynamic_schema());
575
5
    out->set_is_external_segment_column_meta_used(in.is_external_segment_column_meta_used());
576
5
    out->mutable_row_store_column_unique_ids()->Swap(in.mutable_row_store_column_unique_ids());
577
5
    out->set_inverted_index_storage_format(in.inverted_index_storage_format());
578
5
    out->set_enable_variant_flatten_nested(in.enable_variant_flatten_nested());
579
5
    out->set_skip_bitmap_col_idx(in.skip_bitmap_col_idx());
580
5
    out->set_storage_page_size(in.storage_page_size());
581
5
    out->set_storage_dict_page_size(in.storage_dict_page_size());
582
5
    out->set_is_in_memory(in.is_in_memory());
583
5
    out->set_row_store_page_size(in.row_store_page_size());
584
5
    if (in.has_integer_type_default_use_plain_encoding()) {
585
5
        out->set_integer_type_default_use_plain_encoding(
586
5
                in.integer_type_default_use_plain_encoding());
587
5
    }
588
5
    if (in.has_binary_plain_encoding_default_impl()) {
589
5
        out->set_binary_plain_encoding_default_impl(in.binary_plain_encoding_default_impl());
590
5
    }
591
5
    if (in.has_storage_format()) {
592
5
        out->set_storage_format(in.storage_format());
593
5
    }
594
595
5
    if (in.has___split_schema()) {
596
5
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
597
5
    }
598
5
}
599
600
0
TabletMetaCloudPB doris_tablet_meta_to_cloud(const TabletMetaPB& in) {
601
0
    TabletMetaCloudPB out;
602
0
    doris_tablet_meta_to_cloud(&out, in);
603
0
    return out;
604
0
}
605
606
1
TabletMetaCloudPB doris_tablet_meta_to_cloud(TabletMetaPB&& in) {
607
1
    TabletMetaCloudPB out;
608
1
    doris_tablet_meta_to_cloud(&out, std::move(in));
609
1
    return out;
610
1
}
611
612
1
void doris_tablet_meta_to_cloud(TabletMetaCloudPB* out, const TabletMetaPB& in) {
613
    // ATTN: please keep the set order aligned with the definition of proto.
614
1
    out->set_table_id(in.table_id());
615
1
    out->set_partition_id(in.partition_id());
616
1
    out->set_tablet_id(in.tablet_id());
617
1
    out->set_schema_hash(in.schema_hash());
618
1
    out->set_shard_id(in.shard_id());
619
1
    out->set_creation_time(in.creation_time());
620
1
    out->set_cumulative_layer_point(in.cumulative_layer_point());
621
1
    out->set_tablet_state(in.tablet_state());
622
1
    if (in.has_schema()) {
623
1
        doris_tablet_schema_to_cloud(out->mutable_schema(), in.schema());
624
1
    }
625
1
    if (in.rs_metas_size()) {
626
1
        out->mutable_rs_metas()->Reserve(in.rs_metas_size());
627
1
        for (const auto& rs_meta : in.rs_metas()) {
628
1
            doris_rowset_meta_to_cloud(out->add_rs_metas(), rs_meta);
629
1
        }
630
1
    }
631
    // ATTN: inc_rs_metas are deprecated, here is for conversion check
632
1
    if (in.inc_rs_metas_size()) {
633
1
        out->mutable_inc_rs_metas()->Reserve(in.inc_rs_metas_size());
634
1
        for (const auto& rs_meta : in.inc_rs_metas()) {
635
1
            doris_rowset_meta_to_cloud(out->add_inc_rs_metas(), rs_meta);
636
1
        }
637
1
    }
638
1
    if (in.has_alter_task()) {
639
1
        out->mutable_alter_task()->CopyFrom(in.alter_task());
640
1
    }
641
1
    out->set_in_restore_mode(in.in_restore_mode());
642
1
    out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
643
1
    out->set_end_rowset_id(in.end_rowset_id());
644
1
    out->set_preferred_rowset_type(in.preferred_rowset_type());
645
1
    out->set_tablet_type(in.tablet_type());
646
1
    if (in.stale_rs_metas_size()) {
647
1
        out->mutable_stale_rs_metas()->Reserve(in.stale_rs_metas_size());
648
1
        for (const auto& rs_meta : in.stale_rs_metas()) {
649
1
            doris_rowset_meta_to_cloud(out->add_stale_rs_metas(), rs_meta);
650
1
        }
651
1
    }
652
1
    out->set_replica_id(in.replica_id());
653
1
    if (in.has_delete_bitmap()) {
654
1
        out->mutable_delete_bitmap()->CopyFrom(in.delete_bitmap());
655
1
    }
656
1
    out->set_enable_unique_key_merge_on_write(in.enable_unique_key_merge_on_write());
657
1
    out->set_storage_policy_id(in.storage_policy_id());
658
1
    out->mutable_cooldown_meta_id()->CopyFrom(in.cooldown_meta_id());
659
1
    if (in.has_binlog_config()) {
660
1
        out->mutable_binlog_config()->CopyFrom(in.binlog_config());
661
1
    }
662
1
    out->set_compaction_policy(in.compaction_policy());
663
1
    out->set_time_series_compaction_goal_size_mbytes(in.time_series_compaction_goal_size_mbytes());
664
1
    out->set_time_series_compaction_file_count_threshold(
665
1
            in.time_series_compaction_file_count_threshold());
666
1
    out->set_time_series_compaction_time_threshold_seconds(
667
1
            in.time_series_compaction_time_threshold_seconds());
668
1
    out->set_time_series_compaction_empty_rowsets_threshold(
669
1
            in.time_series_compaction_empty_rowsets_threshold());
670
1
    out->set_time_series_compaction_level_threshold(in.time_series_compaction_level_threshold());
671
1
    out->set_vertical_compaction_num_columns_per_group(
672
1
            in.vertical_compaction_num_columns_per_group());
673
1
    out->set_index_id(in.index_id());
674
1
    out->set_is_in_memory(in.is_in_memory());
675
1
    out->set_is_persistent(in.is_persistent());
676
1
    out->set_table_name(in.table_name());
677
1
    out->set_ttl_seconds(in.ttl_seconds());
678
1
    if (in.has_schema_version()) {
679
1
        out->set_schema_version(in.schema_version());
680
1
    }
681
1
    if (in.has_encryption_algorithm()) {
682
1
        out->set_encryption_algorithm(in.encryption_algorithm());
683
1
    }
684
1
}
685
686
1
void doris_tablet_meta_to_cloud(TabletMetaCloudPB* out, TabletMetaPB&& in) {
687
    // ATTN: please keep the set order aligned with the definition of proto.
688
1
    out->set_table_id(in.table_id());
689
1
    out->set_partition_id(in.partition_id());
690
1
    out->set_tablet_id(in.tablet_id());
691
1
    out->set_schema_hash(in.schema_hash());
692
1
    out->set_shard_id(in.shard_id());
693
1
    out->set_creation_time(in.creation_time());
694
1
    out->set_cumulative_layer_point(in.cumulative_layer_point());
695
1
    out->set_tablet_state(in.tablet_state());
696
1
    if (in.has_schema()) {
697
1
        doris_tablet_schema_to_cloud(out->mutable_schema(), std::move(*in.mutable_schema()));
698
1
    }
699
1
    if (in.rs_metas_size()) {
700
1
        int32_t rs_metas_size = in.rs_metas_size();
701
1
        out->mutable_rs_metas()->Reserve(rs_metas_size);
702
2
        for (int i = 0; i < rs_metas_size; ++i) {
703
1
            doris_rowset_meta_to_cloud(out->add_rs_metas(), std::move(*in.mutable_rs_metas(i)));
704
1
        }
705
1
    }
706
    // ATTN: inc_rs_metas are deprecated, here is for conversion check
707
1
    if (in.inc_rs_metas_size()) {
708
1
        int rs_metas_size = in.inc_rs_metas_size();
709
1
        out->mutable_inc_rs_metas()->Reserve(rs_metas_size);
710
2
        for (int i = 0; i < rs_metas_size; ++i) {
711
1
            doris_rowset_meta_to_cloud(out->add_inc_rs_metas(),
712
1
                                       std::move(*in.mutable_inc_rs_metas(i)));
713
1
        }
714
1
    }
715
1
    if (in.has_alter_task()) {
716
1
        out->mutable_alter_task()->Swap(in.mutable_alter_task());
717
1
    }
718
1
    out->set_in_restore_mode(in.in_restore_mode());
719
1
    out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
720
1
    out->set_end_rowset_id(in.end_rowset_id());
721
1
    out->set_preferred_rowset_type(in.preferred_rowset_type());
722
1
    out->set_tablet_type(in.tablet_type());
723
1
    if (in.stale_rs_metas_size()) {
724
1
        int rs_metas_size = in.stale_rs_metas_size();
725
1
        out->mutable_stale_rs_metas()->Reserve(rs_metas_size);
726
2
        for (int i = 0; i < rs_metas_size; i++) {
727
1
            doris_rowset_meta_to_cloud(out->add_stale_rs_metas(),
728
1
                                       std::move(*in.mutable_stale_rs_metas(i)));
729
1
        }
730
1
    }
731
1
    out->set_replica_id(in.replica_id());
732
1
    if (in.has_delete_bitmap()) {
733
1
        out->mutable_delete_bitmap()->Swap(in.mutable_delete_bitmap());
734
1
    }
735
1
    out->set_enable_unique_key_merge_on_write(in.enable_unique_key_merge_on_write());
736
1
    out->set_storage_policy_id(in.storage_policy_id());
737
1
    out->mutable_cooldown_meta_id()->CopyFrom(in.cooldown_meta_id());
738
1
    if (in.has_binlog_config()) {
739
1
        out->mutable_binlog_config()->Swap(in.mutable_binlog_config());
740
1
    }
741
1
    out->set_compaction_policy(in.compaction_policy());
742
1
    out->set_time_series_compaction_goal_size_mbytes(in.time_series_compaction_goal_size_mbytes());
743
1
    out->set_time_series_compaction_file_count_threshold(
744
1
            in.time_series_compaction_file_count_threshold());
745
1
    out->set_time_series_compaction_time_threshold_seconds(
746
1
            in.time_series_compaction_time_threshold_seconds());
747
1
    out->set_time_series_compaction_empty_rowsets_threshold(
748
1
            in.time_series_compaction_empty_rowsets_threshold());
749
1
    out->set_time_series_compaction_level_threshold(in.time_series_compaction_level_threshold());
750
1
    out->set_vertical_compaction_num_columns_per_group(
751
1
            in.vertical_compaction_num_columns_per_group());
752
1
    out->set_index_id(in.index_id());
753
1
    out->set_is_in_memory(in.is_in_memory());
754
1
    out->set_is_persistent(in.is_persistent());
755
1
    out->set_table_name(in.table_name());
756
1
    out->set_ttl_seconds(in.ttl_seconds());
757
1
    if (in.has_schema_version()) {
758
1
        out->set_schema_version(in.schema_version());
759
1
    }
760
1
    if (in.has_encryption_algorithm()) {
761
1
        out->set_encryption_algorithm(in.encryption_algorithm());
762
1
    }
763
1
}
764
765
0
TabletMetaPB cloud_tablet_meta_to_doris(const TabletMetaCloudPB& in) {
766
0
    TabletMetaPB out;
767
0
    cloud_tablet_meta_to_doris(&out, in);
768
0
    return out;
769
0
}
770
771
1
TabletMetaPB cloud_tablet_meta_to_doris(TabletMetaCloudPB&& in) {
772
1
    TabletMetaPB out;
773
1
    cloud_tablet_meta_to_doris(&out, std::move(in));
774
1
    return out;
775
1
}
776
777
1
void cloud_tablet_meta_to_doris(TabletMetaPB* out, const TabletMetaCloudPB& in) {
778
    // ATTN: please keep the set order aligned with the definition of proto.
779
1
    out->set_table_id(in.table_id());
780
1
    out->set_partition_id(in.partition_id());
781
1
    out->set_tablet_id(in.tablet_id());
782
1
    out->set_schema_hash(in.schema_hash());
783
1
    out->set_shard_id(in.shard_id());
784
1
    out->set_creation_time(in.creation_time());
785
1
    out->set_cumulative_layer_point(in.cumulative_layer_point());
786
1
    out->set_tablet_state(in.tablet_state());
787
1
    if (in.has_schema()) {
788
1
        cloud_tablet_schema_to_doris(out->mutable_schema(), in.schema());
789
1
    }
790
1
    if (in.rs_metas_size()) {
791
1
        out->mutable_rs_metas()->Reserve(in.rs_metas_size());
792
1
        for (const auto& rs_meta : in.rs_metas()) {
793
1
            cloud_rowset_meta_to_doris(out->add_rs_metas(), rs_meta);
794
1
        }
795
1
    }
796
    // ATTN: inc_rs_metas are deprecated, here is for conversion check
797
1
    if (in.inc_rs_metas_size()) {
798
1
        out->mutable_inc_rs_metas()->Reserve(in.inc_rs_metas_size());
799
1
        for (const auto& rs_meta : in.inc_rs_metas()) {
800
1
            cloud_rowset_meta_to_doris(out->add_inc_rs_metas(), rs_meta);
801
1
        }
802
1
    }
803
1
    if (in.has_alter_task()) {
804
1
        out->mutable_alter_task()->CopyFrom(in.alter_task());
805
1
    }
806
1
    out->set_in_restore_mode(in.in_restore_mode());
807
1
    out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
808
1
    out->set_end_rowset_id(in.end_rowset_id());
809
1
    out->set_preferred_rowset_type(in.preferred_rowset_type());
810
1
    out->set_tablet_type(in.tablet_type());
811
1
    if (in.stale_rs_metas_size()) {
812
1
        out->mutable_stale_rs_metas()->Reserve(in.stale_rs_metas_size());
813
1
        for (const auto& rs_meta : in.stale_rs_metas()) {
814
1
            cloud_rowset_meta_to_doris(out->add_stale_rs_metas(), rs_meta);
815
1
        }
816
1
    }
817
1
    out->set_replica_id(in.replica_id());
818
1
    if (in.has_delete_bitmap()) {
819
1
        out->mutable_delete_bitmap()->CopyFrom(in.delete_bitmap());
820
1
    }
821
1
    out->set_enable_unique_key_merge_on_write(in.enable_unique_key_merge_on_write());
822
1
    out->set_storage_policy_id(in.storage_policy_id());
823
1
    out->mutable_cooldown_meta_id()->CopyFrom(in.cooldown_meta_id());
824
1
    if (in.has_binlog_config()) {
825
1
        out->mutable_binlog_config()->CopyFrom(in.binlog_config());
826
1
    }
827
1
    out->set_compaction_policy(in.compaction_policy());
828
1
    out->set_time_series_compaction_goal_size_mbytes(in.time_series_compaction_goal_size_mbytes());
829
1
    out->set_time_series_compaction_file_count_threshold(
830
1
            in.time_series_compaction_file_count_threshold());
831
1
    out->set_time_series_compaction_time_threshold_seconds(
832
1
            in.time_series_compaction_time_threshold_seconds());
833
1
    out->set_time_series_compaction_empty_rowsets_threshold(
834
1
            in.time_series_compaction_empty_rowsets_threshold());
835
1
    out->set_time_series_compaction_level_threshold(in.time_series_compaction_level_threshold());
836
1
    out->set_vertical_compaction_num_columns_per_group(
837
1
            in.vertical_compaction_num_columns_per_group());
838
1
    out->set_index_id(in.index_id());
839
1
    out->set_is_in_memory(in.is_in_memory());
840
1
    out->set_is_persistent(in.is_persistent());
841
1
    out->set_table_name(in.table_name());
842
1
    out->set_ttl_seconds(in.ttl_seconds());
843
1
    if (in.has_schema_version()) {
844
1
        out->set_schema_version(in.schema_version());
845
1
    }
846
1
    if (in.has_encryption_algorithm()) {
847
1
        out->set_encryption_algorithm(in.encryption_algorithm());
848
1
    }
849
1
}
850
851
1
void cloud_tablet_meta_to_doris(TabletMetaPB* out, TabletMetaCloudPB&& in) {
852
    // ATTN: please keep the set order aligned with the definition of proto.
853
1
    out->set_table_id(in.table_id());
854
1
    out->set_partition_id(in.partition_id());
855
1
    out->set_tablet_id(in.tablet_id());
856
1
    out->set_schema_hash(in.schema_hash());
857
1
    out->set_shard_id(in.shard_id());
858
1
    out->set_creation_time(in.creation_time());
859
1
    out->set_cumulative_layer_point(in.cumulative_layer_point());
860
1
    out->set_tablet_state(in.tablet_state());
861
1
    if (in.has_schema()) {
862
1
        cloud_tablet_schema_to_doris(out->mutable_schema(), std::move(*in.mutable_schema()));
863
1
    }
864
1
    if (in.rs_metas_size()) {
865
1
        int rs_metas_size = in.rs_metas_size();
866
1
        out->mutable_rs_metas()->Reserve(rs_metas_size);
867
2
        for (int i = 0; i < rs_metas_size; ++i) {
868
1
            cloud_rowset_meta_to_doris(out->add_rs_metas(), std::move(*in.mutable_rs_metas(i)));
869
1
        }
870
1
    }
871
    // ATTN: inc_rs_metas are deprecated, here is for conversion check
872
1
    if (in.inc_rs_metas_size()) {
873
1
        int rs_metas_size = in.inc_rs_metas_size();
874
1
        out->mutable_inc_rs_metas()->Reserve(rs_metas_size);
875
2
        for (int i = 0; i < rs_metas_size; i++) {
876
1
            cloud_rowset_meta_to_doris(out->add_inc_rs_metas(),
877
1
                                       std::move(*in.mutable_inc_rs_metas(i)));
878
1
        }
879
1
    }
880
1
    if (in.has_alter_task()) {
881
1
        out->mutable_alter_task()->Swap(in.mutable_alter_task());
882
1
    }
883
1
    out->set_in_restore_mode(in.in_restore_mode());
884
1
    out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
885
1
    out->set_end_rowset_id(in.end_rowset_id());
886
1
    out->set_preferred_rowset_type(in.preferred_rowset_type());
887
1
    out->set_tablet_type(in.tablet_type());
888
1
    if (in.stale_rs_metas_size()) {
889
1
        int rs_metas_size = in.stale_rs_metas_size();
890
1
        out->mutable_stale_rs_metas()->Reserve(rs_metas_size);
891
2
        for (int i = 0; i < rs_metas_size; i++) {
892
1
            cloud_rowset_meta_to_doris(out->add_stale_rs_metas(),
893
1
                                       std::move(*in.mutable_stale_rs_metas(i)));
894
1
        }
895
1
    }
896
1
    out->set_replica_id(in.replica_id());
897
1
    if (in.has_delete_bitmap()) {
898
1
        out->mutable_delete_bitmap()->Swap(in.mutable_delete_bitmap());
899
1
    }
900
1
    out->set_enable_unique_key_merge_on_write(in.enable_unique_key_merge_on_write());
901
1
    out->set_storage_policy_id(in.storage_policy_id());
902
1
    out->mutable_cooldown_meta_id()->CopyFrom(in.cooldown_meta_id());
903
1
    if (in.has_binlog_config()) {
904
1
        out->mutable_binlog_config()->Swap(in.mutable_binlog_config());
905
1
    }
906
1
    out->set_compaction_policy(in.compaction_policy());
907
1
    out->set_time_series_compaction_goal_size_mbytes(in.time_series_compaction_goal_size_mbytes());
908
1
    out->set_time_series_compaction_file_count_threshold(
909
1
            in.time_series_compaction_file_count_threshold());
910
1
    out->set_time_series_compaction_time_threshold_seconds(
911
1
            in.time_series_compaction_time_threshold_seconds());
912
1
    out->set_time_series_compaction_empty_rowsets_threshold(
913
1
            in.time_series_compaction_empty_rowsets_threshold());
914
1
    out->set_time_series_compaction_level_threshold(in.time_series_compaction_level_threshold());
915
1
    out->set_vertical_compaction_num_columns_per_group(
916
1
            in.vertical_compaction_num_columns_per_group());
917
1
    out->set_index_id(in.index_id());
918
1
    out->set_is_in_memory(in.is_in_memory());
919
1
    out->set_is_persistent(in.is_persistent());
920
1
    out->set_table_name(in.table_name());
921
1
    out->set_ttl_seconds(in.ttl_seconds());
922
1
    if (in.has_schema_version()) {
923
1
        out->set_schema_version(in.schema_version());
924
1
    }
925
1
    if (in.has_encryption_algorithm()) {
926
1
        out->set_encryption_algorithm(in.encryption_algorithm());
927
1
    }
928
1
}
929
#include "common/compile_check_end.h"
930
931
} // namespace doris::cloud