Coverage Report

Created: 2026-01-04 14:40

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