Coverage Report

Created: 2026-08-07 19:40

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
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
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
57.0k
RowsetMetaCloudPB doris_rowset_meta_to_cloud(RowsetMetaPB&& in) {
35
57.0k
    RowsetMetaCloudPB out;
36
57.0k
    doris_rowset_meta_to_cloud(&out, std::move(in));
37
57.0k
    return out;
38
57.0k
}
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
    if (in.has_segments_key_bounds_truncated()) {
83
1
        out->set_segments_key_bounds_truncated(in.segments_key_bounds_truncated());
84
1
    }
85
4
    if (in.has_segments_key_bounds_aggregated()) {
86
1
        out->set_segments_key_bounds_aggregated(in.segments_key_bounds_aggregated());
87
1
    }
88
4
    out->mutable_num_segment_rows()->CopyFrom(in.num_segment_rows());
89
4
    out->mutable_segments_file_size()->CopyFrom(in.segments_file_size());
90
4
    out->set_index_id(in.index_id());
91
4
    if (in.has_schema_version()) {
92
        // See cloud/src/meta-service/meta_service_schema.cpp for details.
93
1
        out->set_schema_version(in.schema_version());
94
1
    }
95
4
    out->set_enable_segments_file_size(in.enable_segments_file_size());
96
4
    out->set_has_variant_type_in_schema(in.has_variant_type_in_schema());
97
4
    out->set_enable_inverted_index_file_info(in.enable_inverted_index_file_info());
98
4
    out->set_compaction_level(in.compaction_level());
99
4
    out->mutable_inverted_index_file_info()->CopyFrom(in.inverted_index_file_info());
100
4
    out->set_source_rowset_id(in.source_rowset_id());
101
4
    out->set_source_tablet_id(in.source_tablet_id());
102
4
    if (in.has___split_schema()) {
103
1
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
104
1
    }
105
4
    if (in.has_visible_ts_ms()) {
106
1
        out->set_visible_ts_ms(in.visible_ts_ms());
107
1
    }
108
4
    if (in.has_reference_instance_id()) {
109
1
        out->set_reference_instance_id(in.reference_instance_id());
110
1
    }
111
4
    auto* slice_locations = out->mutable_packed_slice_locations();
112
4
    slice_locations->clear();
113
4
    slice_locations->insert(in.packed_slice_locations().begin(), in.packed_slice_locations().end());
114
4
    if (in.has_is_recycled()) {
115
1
        out->set_is_recycled(in.is_recycled());
116
1
    }
117
4
    if (in.has_job_id()) {
118
1
        out->set_job_id(in.job_id());
119
1
    }
120
4
    if (in.has_commit_tso()) {
121
1
        out->mutable_commit_tso()->CopyFrom(in.commit_tso());
122
1
    }
123
4
    if (in.has_is_row_binlog()) {
124
1
        out->set_is_row_binlog(in.is_row_binlog());
125
1
    }
126
4
    if (in.has_db_id()) {
127
1
        out->set_db_id(in.db_id());
128
1
    }
129
4
    if (in.has_table_id()) {
130
1
        out->set_table_id(in.table_id());
131
1
    }
132
4
}
133
134
204k
void doris_rowset_meta_to_cloud(RowsetMetaCloudPB* out, RowsetMetaPB&& in) {
135
    // ATTN: please keep the set order aligned with the definition of proto `TabletSchemaCloudPB`.
136
204k
    out->set_rowset_id(in.rowset_id());
137
204k
    out->set_partition_id(in.partition_id());
138
204k
    out->set_tablet_id(in.tablet_id());
139
204k
    out->set_txn_id(in.txn_id());
140
204k
    out->set_tablet_schema_hash(in.tablet_schema_hash());
141
204k
    out->set_rowset_type(in.rowset_type());
142
204k
    out->set_rowset_state(in.rowset_state());
143
204k
    out->set_start_version(in.start_version());
144
204k
    out->set_end_version(in.end_version());
145
204k
    out->set_version_hash(in.version_hash());
146
204k
    out->set_num_rows(in.num_rows());
147
204k
    out->set_total_disk_size(in.total_disk_size());
148
204k
    out->set_data_disk_size(in.data_disk_size());
149
204k
    out->set_index_disk_size(in.index_disk_size());
150
204k
    out->mutable_zone_maps()->Swap(in.mutable_zone_maps());
151
204k
    if (in.has_delete_predicate()) {
152
6.47k
        out->mutable_delete_predicate()->Swap(in.mutable_delete_predicate());
153
6.47k
    }
154
204k
    out->set_empty(in.empty());
155
204k
    if (in.has_load_id()) {
156
163k
        out->mutable_load_id()->CopyFrom(in.load_id());
157
163k
    }
158
204k
    out->set_delete_flag(in.delete_flag());
159
204k
    out->set_creation_time(in.creation_time());
160
204k
    if (in.has_tablet_uid()) {
161
29.2k
        out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
162
29.2k
    }
163
204k
    out->set_num_segments(in.num_segments());
164
204k
    out->set_rowset_id_v2(in.rowset_id_v2());
165
204k
    out->set_resource_id(in.resource_id());
166
204k
    out->set_newest_write_timestamp(in.newest_write_timestamp());
167
204k
    out->mutable_segments_key_bounds()->Swap(in.mutable_segments_key_bounds());
168
204k
    if (in.has_tablet_schema()) {
169
73.4k
        doris_tablet_schema_to_cloud(out->mutable_tablet_schema(),
170
73.4k
                                     std::move(*in.mutable_tablet_schema()));
171
73.4k
    }
172
204k
    if (in.has_schema_dict_key_list()) {
173
26
        out->mutable_schema_dict_key_list()->Swap(in.mutable_schema_dict_key_list());
174
26
    }
175
204k
    out->set_txn_expiration(in.txn_expiration());
176
204k
    out->set_segments_overlap_pb(in.segments_overlap_pb());
177
204k
    if (in.has_segments_key_bounds_truncated()) {
178
103k
        out->set_segments_key_bounds_truncated(in.segments_key_bounds_truncated());
179
103k
    }
180
204k
    if (in.has_segments_key_bounds_aggregated()) {
181
104k
        out->set_segments_key_bounds_aggregated(in.segments_key_bounds_aggregated());
182
104k
    }
183
204k
    out->mutable_num_segment_rows()->Swap(in.mutable_num_segment_rows());
184
204k
    out->mutable_segments_file_size()->Swap(in.mutable_segments_file_size());
185
204k
    out->set_index_id(in.index_id());
186
204k
    if (in.has_schema_version()) {
187
        // See cloud/src/meta-service/meta_service_schema.cpp for details.
188
204k
        out->set_schema_version(in.schema_version());
189
204k
    }
190
204k
    out->set_enable_segments_file_size(in.enable_segments_file_size());
191
204k
    out->set_has_variant_type_in_schema(in.has_variant_type_in_schema());
192
204k
    out->set_enable_inverted_index_file_info(in.enable_inverted_index_file_info());
193
204k
    out->set_compaction_level(in.compaction_level());
194
204k
    out->mutable_inverted_index_file_info()->Swap(in.mutable_inverted_index_file_info());
195
204k
    out->set_source_rowset_id(in.source_rowset_id());
196
204k
    out->set_source_tablet_id(in.source_tablet_id());
197
198
204k
    if (in.has___split_schema()) {
199
2
        out->mutable___split_schema()->Swap(in.mutable___split_schema());
200
2
    }
201
204k
    if (in.has_visible_ts_ms()) {
202
36.2k
        out->set_visible_ts_ms(in.visible_ts_ms());
203
36.2k
    }
204
204k
    if (in.has_reference_instance_id()) {
205
2
        out->set_reference_instance_id(in.reference_instance_id());
206
2
    }
207
204k
    auto* slice_locations = out->mutable_packed_slice_locations();
208
204k
    slice_locations->clear();
209
204k
    slice_locations->insert(in.packed_slice_locations().begin(), in.packed_slice_locations().end());
210
204k
    if (in.has_is_recycled()) {
211
2
        out->set_is_recycled(in.is_recycled());
212
2
    }
213
204k
    if (in.has_job_id()) {
214
174k
        out->set_job_id(in.job_id());
215
174k
    }
216
204k
    if (in.has_commit_tso()) {
217
11.4k
        out->mutable_commit_tso()->CopyFrom(in.commit_tso());
218
11.4k
    }
219
204k
    if (in.has_is_row_binlog()) {
220
2
        out->set_is_row_binlog(in.is_row_binlog());
221
2
    }
222
204k
    if (in.has_db_id()) {
223
174k
        out->set_db_id(in.db_id());
224
174k
    }
225
204k
    if (in.has_table_id()) {
226
174k
        out->set_table_id(in.table_id());
227
174k
    }
228
204k
}
229
230
127k
RowsetMetaPB cloud_rowset_meta_to_doris(const RowsetMetaCloudPB& in) {
231
127k
    RowsetMetaPB out;
232
127k
    cloud_rowset_meta_to_doris(&out, in);
233
127k
    return out;
234
127k
}
235
236
2
RowsetMetaPB cloud_rowset_meta_to_doris(RowsetMetaCloudPB&& in) {
237
2
    RowsetMetaPB out;
238
2
    cloud_rowset_meta_to_doris(&out, std::move(in));
239
2
    return out;
240
2
}
241
242
127k
void cloud_rowset_meta_to_doris(RowsetMetaPB* out, const RowsetMetaCloudPB& in) {
243
    // ATTN: please keep the set order aligned with the definition of proto `TabletSchemaCloudPB`.
244
127k
    out->set_rowset_id(in.rowset_id());
245
127k
    out->set_partition_id(in.partition_id());
246
127k
    out->set_tablet_id(in.tablet_id());
247
127k
    out->set_txn_id(in.txn_id());
248
127k
    out->set_tablet_schema_hash(in.tablet_schema_hash());
249
127k
    out->set_rowset_type(in.rowset_type());
250
127k
    out->set_rowset_state(in.rowset_state());
251
127k
    out->set_start_version(in.start_version());
252
127k
    out->set_end_version(in.end_version());
253
127k
    out->set_version_hash(in.version_hash());
254
127k
    out->set_num_rows(in.num_rows());
255
127k
    out->set_total_disk_size(in.total_disk_size());
256
127k
    out->set_data_disk_size(in.data_disk_size());
257
127k
    out->set_index_disk_size(in.index_disk_size());
258
127k
    out->mutable_zone_maps()->CopyFrom(in.zone_maps());
259
127k
    if (in.has_delete_predicate()) {
260
74
        out->mutable_delete_predicate()->CopyFrom(in.delete_predicate());
261
74
    }
262
127k
    out->set_empty(in.empty());
263
127k
    if (in.has_load_id()) {
264
5.93k
        out->mutable_load_id()->CopyFrom(in.load_id());
265
5.93k
    }
266
127k
    out->set_delete_flag(in.delete_flag());
267
127k
    out->set_creation_time(in.creation_time());
268
127k
    if (in.has_tablet_uid()) {
269
1
        out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
270
1
    }
271
127k
    out->set_num_segments(in.num_segments());
272
127k
    out->set_rowset_id_v2(in.rowset_id_v2());
273
127k
    out->set_resource_id(in.resource_id());
274
127k
    out->set_newest_write_timestamp(in.newest_write_timestamp());
275
127k
    out->mutable_segments_key_bounds()->CopyFrom(in.segments_key_bounds());
276
127k
    if (in.has_tablet_schema()) {
277
127k
        cloud_tablet_schema_to_doris(out->mutable_tablet_schema(), in.tablet_schema());
278
127k
    }
279
127k
    if (in.has_schema_dict_key_list()) {
280
754
        out->mutable_schema_dict_key_list()->CopyFrom(in.schema_dict_key_list());
281
754
    }
282
127k
    out->set_txn_expiration(in.txn_expiration());
283
127k
    out->set_segments_overlap_pb(in.segments_overlap_pb());
284
127k
    if (in.has_segments_key_bounds_truncated()) {
285
6.67k
        out->set_segments_key_bounds_truncated(in.segments_key_bounds_truncated());
286
6.67k
    }
287
127k
    if (in.has_segments_key_bounds_aggregated()) {
288
6.67k
        out->set_segments_key_bounds_aggregated(in.segments_key_bounds_aggregated());
289
6.67k
    }
290
127k
    out->mutable_num_segment_rows()->CopyFrom(in.num_segment_rows());
291
127k
    out->mutable_segments_file_size()->CopyFrom(in.segments_file_size());
292
127k
    out->set_index_id(in.index_id());
293
127k
    if (in.has_schema_version()) {
294
        // See cloud/src/meta-service/meta_service_schema.cpp for details.
295
127k
        out->set_schema_version(in.schema_version());
296
127k
    }
297
127k
    out->set_enable_segments_file_size(in.enable_segments_file_size());
298
127k
    out->set_has_variant_type_in_schema(in.has_variant_type_in_schema());
299
127k
    out->set_enable_inverted_index_file_info(in.enable_inverted_index_file_info());
300
127k
    out->set_compaction_level(in.compaction_level());
301
127k
    out->mutable_inverted_index_file_info()->CopyFrom(in.inverted_index_file_info());
302
127k
    out->set_source_rowset_id(in.source_rowset_id());
303
127k
    out->set_source_tablet_id(in.source_tablet_id());
304
127k
    if (in.has___split_schema()) {
305
1
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
306
1
    }
307
127k
    if (in.has_visible_ts_ms()) {
308
6.67k
        out->set_visible_ts_ms(in.visible_ts_ms());
309
6.67k
    }
310
127k
    if (in.has_reference_instance_id()) {
311
1
        out->set_reference_instance_id(in.reference_instance_id());
312
1
    }
313
127k
    auto* slice_locations = out->mutable_packed_slice_locations();
314
127k
    slice_locations->clear();
315
127k
    slice_locations->insert(in.packed_slice_locations().begin(), in.packed_slice_locations().end());
316
127k
    if (in.has_is_recycled()) {
317
1
        out->set_is_recycled(in.is_recycled());
318
1
    }
319
127k
    if (in.has_job_id()) {
320
6.67k
        out->set_job_id(in.job_id());
321
6.67k
    }
322
127k
    if (in.has_commit_tso()) {
323
6.55k
        out->mutable_commit_tso()->CopyFrom(in.commit_tso());
324
6.55k
    }
325
127k
    if (in.has_is_row_binlog()) {
326
1
        out->set_is_row_binlog(in.is_row_binlog());
327
1
    }
328
127k
    if (in.has_db_id()) {
329
6.67k
        out->set_db_id(in.db_id());
330
6.67k
    }
331
127k
    if (in.has_table_id()) {
332
6.67k
        out->set_table_id(in.table_id());
333
6.67k
    }
334
127k
}
335
336
5
void cloud_rowset_meta_to_doris(RowsetMetaPB* out, RowsetMetaCloudPB&& in) {
337
    // ATTN: please keep the set order aligned with the definition of proto `TabletSchemaCloudPB`.
338
5
    out->set_rowset_id(in.rowset_id());
339
5
    out->set_partition_id(in.partition_id());
340
5
    out->set_tablet_id(in.tablet_id());
341
5
    out->set_txn_id(in.txn_id());
342
5
    out->set_tablet_schema_hash(in.tablet_schema_hash());
343
5
    out->set_rowset_type(in.rowset_type());
344
5
    out->set_rowset_state(in.rowset_state());
345
5
    out->set_start_version(in.start_version());
346
5
    out->set_end_version(in.end_version());
347
5
    out->set_version_hash(in.version_hash());
348
5
    out->set_num_rows(in.num_rows());
349
5
    out->set_total_disk_size(in.total_disk_size());
350
5
    out->set_data_disk_size(in.data_disk_size());
351
5
    out->set_index_disk_size(in.index_disk_size());
352
5
    out->mutable_zone_maps()->Swap(in.mutable_zone_maps());
353
5
    if (in.has_delete_predicate()) {
354
2
        out->mutable_delete_predicate()->Swap(in.mutable_delete_predicate());
355
2
    }
356
5
    out->set_empty(in.empty());
357
5
    if (in.has_load_id()) {
358
2
        out->mutable_load_id()->CopyFrom(in.load_id());
359
2
    }
360
5
    out->set_delete_flag(in.delete_flag());
361
5
    out->set_creation_time(in.creation_time());
362
5
    if (in.has_tablet_uid()) {
363
2
        out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
364
2
    }
365
5
    out->set_num_segments(in.num_segments());
366
5
    out->set_rowset_id_v2(in.rowset_id_v2());
367
5
    out->set_resource_id(in.resource_id());
368
5
    out->set_newest_write_timestamp(in.newest_write_timestamp());
369
5
    out->mutable_segments_key_bounds()->Swap(in.mutable_segments_key_bounds());
370
5
    if (in.has_tablet_schema()) {
371
2
        cloud_tablet_schema_to_doris(out->mutable_tablet_schema(),
372
2
                                     std::move(*in.mutable_tablet_schema()));
373
2
    }
374
5
    if (in.has_schema_dict_key_list()) {
375
2
        out->mutable_schema_dict_key_list()->Swap(in.mutable_schema_dict_key_list());
376
2
    }
377
5
    out->set_txn_expiration(in.txn_expiration());
378
5
    out->set_segments_overlap_pb(in.segments_overlap_pb());
379
5
    if (in.has_segments_key_bounds_truncated()) {
380
2
        out->set_segments_key_bounds_truncated(in.segments_key_bounds_truncated());
381
2
    }
382
5
    if (in.has_segments_key_bounds_aggregated()) {
383
2
        out->set_segments_key_bounds_aggregated(in.segments_key_bounds_aggregated());
384
2
    }
385
5
    out->mutable_num_segment_rows()->Swap(in.mutable_num_segment_rows());
386
5
    out->mutable_segments_file_size()->Swap(in.mutable_segments_file_size());
387
5
    out->set_index_id(in.index_id());
388
5
    if (in.has_schema_version()) {
389
        // See cloud/src/meta-service/meta_service_schema.cpp for details.
390
2
        out->set_schema_version(in.schema_version());
391
2
    }
392
5
    out->set_enable_segments_file_size(in.enable_segments_file_size());
393
5
    out->set_has_variant_type_in_schema(in.has_variant_type_in_schema());
394
5
    out->set_enable_inverted_index_file_info(in.enable_inverted_index_file_info());
395
5
    out->set_compaction_level(in.compaction_level());
396
5
    out->mutable_inverted_index_file_info()->Swap(in.mutable_inverted_index_file_info());
397
5
    out->set_source_rowset_id(in.source_rowset_id());
398
5
    out->set_source_tablet_id(in.source_tablet_id());
399
5
    if (in.has___split_schema()) {
400
2
        out->mutable___split_schema()->Swap(in.mutable___split_schema());
401
2
    }
402
5
    if (in.has_visible_ts_ms()) {
403
2
        out->set_visible_ts_ms(in.visible_ts_ms());
404
2
    }
405
5
    if (in.has_reference_instance_id()) {
406
2
        out->set_reference_instance_id(in.reference_instance_id());
407
2
    }
408
5
    auto* slice_locations = out->mutable_packed_slice_locations();
409
5
    slice_locations->clear();
410
5
    slice_locations->insert(in.packed_slice_locations().begin(), in.packed_slice_locations().end());
411
5
    if (in.has_is_recycled()) {
412
2
        out->set_is_recycled(in.is_recycled());
413
2
    }
414
5
    if (in.has_job_id()) {
415
2
        out->set_job_id(in.job_id());
416
2
    }
417
5
    if (in.has_commit_tso()) {
418
2
        out->mutable_commit_tso()->CopyFrom(in.commit_tso());
419
2
    }
420
5
    if (in.has_is_row_binlog()) {
421
2
        out->set_is_row_binlog(in.is_row_binlog());
422
2
    }
423
5
    if (in.has_db_id()) {
424
2
        out->set_db_id(in.db_id());
425
2
    }
426
5
    if (in.has_table_id()) {
427
2
        out->set_table_id(in.table_id());
428
2
    }
429
5
}
430
431
0
TabletSchemaCloudPB doris_tablet_schema_to_cloud(const TabletSchemaPB& in) {
432
0
    TabletSchemaCloudPB out;
433
0
    doris_tablet_schema_to_cloud(&out, in);
434
0
    return out;
435
0
}
436
437
2
TabletSchemaCloudPB doris_tablet_schema_to_cloud(TabletSchemaPB&& in) {
438
    // ATTN: please keep the set order aligned with the definition of proto.
439
2
    TabletSchemaCloudPB out;
440
2
    doris_tablet_schema_to_cloud(&out, std::move(in));
441
2
    return out;
442
2
}
443
444
3
void doris_tablet_schema_to_cloud(TabletSchemaCloudPB* out, const TabletSchemaPB& in) {
445
    // ATTN: please keep the set order aligned with the definition of proto.
446
3
    out->set_keys_type(in.keys_type());
447
3
    out->mutable_column()->CopyFrom(in.column());
448
3
    out->set_num_short_key_columns(in.num_short_key_columns());
449
3
    out->set_num_rows_per_row_block(in.num_rows_per_row_block());
450
3
    out->set_compress_kind(in.compress_kind());
451
3
    out->set_bf_fpp(in.bf_fpp());
452
3
    out->set_next_column_unique_id(in.next_column_unique_id());
453
3
    out->set_delete_sign_idx(in.delete_sign_idx());
454
3
    out->set_sequence_col_idx(in.sequence_col_idx());
455
3
    out->set_sort_type(in.sort_type());
456
3
    out->set_sort_col_num(in.sort_col_num());
457
3
    out->set_compression_type(in.compression_type());
458
3
    out->set_schema_version(in.schema_version());
459
3
    out->set_disable_auto_compaction(in.disable_auto_compaction());
460
3
    out->mutable_index()->CopyFrom(in.index());
461
3
    out->set_version_col_idx(in.version_col_idx());
462
3
    out->set_store_row_column(in.store_row_column());
463
3
    out->set_skip_write_index_on_load(in.skip_write_index_on_load());
464
3
    out->mutable_cluster_key_uids()->CopyFrom(in.cluster_key_uids());
465
3
    out->set_is_dynamic_schema(in.is_dynamic_schema());
466
3
    out->set_is_external_segment_column_meta_used(in.is_external_segment_column_meta_used());
467
3
    out->mutable_row_store_column_unique_ids()->CopyFrom(in.row_store_column_unique_ids());
468
3
    out->set_inverted_index_storage_format(in.inverted_index_storage_format());
469
3
    out->set_enable_variant_flatten_nested(in.enable_variant_flatten_nested());
470
3
    out->set_skip_bitmap_col_idx(in.skip_bitmap_col_idx());
471
3
    out->set_storage_page_size(in.storage_page_size());
472
3
    out->set_storage_dict_page_size(in.storage_dict_page_size());
473
3
    out->set_is_in_memory(in.is_in_memory());
474
3
    out->set_row_store_page_size(in.row_store_page_size());
475
3
    if (in.has_integer_type_default_use_plain_encoding()) {
476
3
        out->set_integer_type_default_use_plain_encoding(
477
3
                in.integer_type_default_use_plain_encoding());
478
3
    }
479
3
    if (in.has_binary_plain_encoding_default_impl()) {
480
3
        out->set_binary_plain_encoding_default_impl(in.binary_plain_encoding_default_impl());
481
3
    }
482
3
    if (in.has_storage_format()) {
483
3
        out->set_storage_format(in.storage_format());
484
3
    }
485
3
    if (in.has_seq_map()) {
486
3
        out->mutable_seq_map()->CopyFrom(in.seq_map());
487
3
    }
488
3
    if (in.has_commit_tso_col_idx()) {
489
3
        out->set_commit_tso_col_idx(in.commit_tso_col_idx());
490
3
    }
491
3
    if (in.has_binlog_tso_col_idx()) {
492
3
        out->set_binlog_tso_col_idx(in.binlog_tso_col_idx());
493
3
    }
494
3
    if (in.has_binlog_lsn_col_idx()) {
495
3
        out->set_binlog_lsn_col_idx(in.binlog_lsn_col_idx());
496
3
    }
497
3
    if (in.has_binlog_op_col_idx()) {
498
3
        out->set_binlog_op_col_idx(in.binlog_op_col_idx());
499
3
    }
500
501
3
    if (in.has___split_schema()) {
502
3
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
503
3
    }
504
3
}
505
506
73.5k
void doris_tablet_schema_to_cloud(TabletSchemaCloudPB* out, TabletSchemaPB&& in) {
507
73.5k
    out->set_keys_type(in.keys_type());
508
73.5k
    out->mutable_column()->Swap(in.mutable_column());
509
73.5k
    out->set_num_short_key_columns(in.num_short_key_columns());
510
73.5k
    out->set_num_rows_per_row_block(in.num_rows_per_row_block());
511
73.5k
    out->set_compress_kind(in.compress_kind());
512
73.5k
    out->set_bf_fpp(in.bf_fpp());
513
73.5k
    out->set_next_column_unique_id(in.next_column_unique_id());
514
73.5k
    out->set_delete_sign_idx(in.delete_sign_idx());
515
73.5k
    out->set_sequence_col_idx(in.sequence_col_idx());
516
73.5k
    out->set_sort_type(in.sort_type());
517
73.5k
    out->set_sort_col_num(in.sort_col_num());
518
73.5k
    out->set_compression_type(in.compression_type());
519
73.5k
    out->set_schema_version(in.schema_version());
520
73.5k
    out->set_disable_auto_compaction(in.disable_auto_compaction());
521
73.5k
    out->mutable_index()->Swap(in.mutable_index());
522
73.5k
    out->set_version_col_idx(in.version_col_idx());
523
73.5k
    out->set_store_row_column(in.store_row_column());
524
73.5k
    out->set_skip_write_index_on_load(in.skip_write_index_on_load());
525
73.5k
    out->mutable_cluster_key_uids()->Swap(in.mutable_cluster_key_uids());
526
73.5k
    out->set_is_dynamic_schema(in.is_dynamic_schema());
527
73.5k
    out->set_is_external_segment_column_meta_used(in.is_external_segment_column_meta_used());
528
73.5k
    out->mutable_row_store_column_unique_ids()->Swap(in.mutable_row_store_column_unique_ids());
529
73.5k
    out->set_inverted_index_storage_format(in.inverted_index_storage_format());
530
73.5k
    out->set_enable_variant_flatten_nested(in.enable_variant_flatten_nested());
531
73.5k
    out->set_skip_bitmap_col_idx(in.skip_bitmap_col_idx());
532
73.5k
    out->set_storage_page_size(in.storage_page_size());
533
73.5k
    out->set_storage_dict_page_size(in.storage_dict_page_size());
534
73.5k
    out->set_is_in_memory(in.is_in_memory());
535
73.5k
    out->set_row_store_page_size(in.row_store_page_size());
536
73.5k
    if (in.has_integer_type_default_use_plain_encoding()) {
537
30.9k
        out->set_integer_type_default_use_plain_encoding(
538
30.9k
                in.integer_type_default_use_plain_encoding());
539
30.9k
    }
540
73.5k
    if (in.has_binary_plain_encoding_default_impl()) {
541
30.9k
        out->set_binary_plain_encoding_default_impl(in.binary_plain_encoding_default_impl());
542
30.9k
    }
543
73.5k
    if (in.has_storage_format()) {
544
73.1k
        out->set_storage_format(in.storage_format());
545
73.1k
    }
546
73.5k
    if (in.has_seq_map()) {
547
72.7k
        out->mutable_seq_map()->CopyFrom(in.seq_map());
548
72.7k
    }
549
73.5k
    if (in.has_commit_tso_col_idx()) {
550
73.1k
        out->set_commit_tso_col_idx(in.commit_tso_col_idx());
551
73.1k
    }
552
73.5k
    if (in.has_binlog_tso_col_idx()) {
553
73.0k
        out->set_binlog_tso_col_idx(in.binlog_tso_col_idx());
554
73.0k
    }
555
73.5k
    if (in.has_binlog_lsn_col_idx()) {
556
73.3k
        out->set_binlog_lsn_col_idx(in.binlog_lsn_col_idx());
557
73.3k
    }
558
73.5k
    if (in.has_binlog_op_col_idx()) {
559
73.3k
        out->set_binlog_op_col_idx(in.binlog_op_col_idx());
560
73.3k
    }
561
562
73.5k
    if (in.has___split_schema()) {
563
5
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
564
5
    }
565
73.5k
}
566
567
0
TabletSchemaPB cloud_tablet_schema_to_doris(const TabletSchemaCloudPB& in) {
568
0
    TabletSchemaPB out;
569
0
    cloud_tablet_schema_to_doris(&out, in);
570
0
    return out;
571
0
}
572
573
2
TabletSchemaPB cloud_tablet_schema_to_doris(TabletSchemaCloudPB&& in) {
574
2
    TabletSchemaPB out;
575
2
    cloud_tablet_schema_to_doris(&out, std::move(in));
576
2
    return out;
577
2
}
578
579
127k
void cloud_tablet_schema_to_doris(TabletSchemaPB* out, const TabletSchemaCloudPB& in) {
580
    // ATTN: please keep the set order aligned with the definition of proto.
581
127k
    out->set_keys_type(in.keys_type());
582
127k
    out->mutable_column()->CopyFrom(in.column());
583
127k
    out->set_num_short_key_columns(in.num_short_key_columns());
584
127k
    out->set_num_rows_per_row_block(in.num_rows_per_row_block());
585
127k
    out->set_compress_kind(in.compress_kind());
586
127k
    out->set_bf_fpp(in.bf_fpp());
587
127k
    out->set_next_column_unique_id(in.next_column_unique_id());
588
127k
    out->set_delete_sign_idx(in.delete_sign_idx());
589
127k
    out->set_sequence_col_idx(in.sequence_col_idx());
590
127k
    out->set_sort_type(in.sort_type());
591
127k
    out->set_sort_col_num(in.sort_col_num());
592
127k
    out->set_compression_type(in.compression_type());
593
127k
    out->set_schema_version(in.schema_version());
594
127k
    out->set_disable_auto_compaction(in.disable_auto_compaction());
595
127k
    out->mutable_index()->CopyFrom(in.index());
596
127k
    out->set_version_col_idx(in.version_col_idx());
597
127k
    out->set_store_row_column(in.store_row_column());
598
127k
    out->set_skip_write_index_on_load(in.skip_write_index_on_load());
599
127k
    out->mutable_cluster_key_uids()->CopyFrom(in.cluster_key_uids());
600
127k
    out->set_is_dynamic_schema(in.is_dynamic_schema());
601
127k
    out->set_is_external_segment_column_meta_used(in.is_external_segment_column_meta_used());
602
127k
    out->mutable_row_store_column_unique_ids()->CopyFrom(in.row_store_column_unique_ids());
603
127k
    out->set_inverted_index_storage_format(in.inverted_index_storage_format());
604
127k
    out->set_enable_variant_flatten_nested(in.enable_variant_flatten_nested());
605
127k
    out->set_skip_bitmap_col_idx(in.skip_bitmap_col_idx());
606
127k
    out->set_storage_page_size(in.storage_page_size());
607
127k
    out->set_storage_dict_page_size(in.storage_dict_page_size());
608
127k
    out->set_is_in_memory(in.is_in_memory());
609
127k
    out->set_row_store_page_size(in.row_store_page_size());
610
127k
    if (in.has_integer_type_default_use_plain_encoding()) {
611
62.4k
        out->set_integer_type_default_use_plain_encoding(
612
62.4k
                in.integer_type_default_use_plain_encoding());
613
62.4k
    }
614
127k
    if (in.has_binary_plain_encoding_default_impl()) {
615
62.5k
        out->set_binary_plain_encoding_default_impl(in.binary_plain_encoding_default_impl());
616
62.5k
    }
617
127k
    if (in.has_storage_format()) {
618
127k
        out->set_storage_format(in.storage_format());
619
127k
    }
620
127k
    if (in.has_seq_map()) {
621
127k
        out->mutable_seq_map()->CopyFrom(in.seq_map());
622
127k
    }
623
127k
    if (in.has_commit_tso_col_idx()) {
624
127k
        out->set_commit_tso_col_idx(in.commit_tso_col_idx());
625
127k
    }
626
127k
    if (in.has_binlog_tso_col_idx()) {
627
242
        out->set_binlog_tso_col_idx(in.binlog_tso_col_idx());
628
242
    }
629
127k
    if (in.has_binlog_lsn_col_idx()) {
630
242
        out->set_binlog_lsn_col_idx(in.binlog_lsn_col_idx());
631
242
    }
632
127k
    if (in.has_binlog_op_col_idx()) {
633
242
        out->set_binlog_op_col_idx(in.binlog_op_col_idx());
634
242
    }
635
636
127k
    if (in.has___split_schema()) {
637
3
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
638
3
    }
639
127k
}
640
641
323k
void cloud_tablet_schema_to_doris(TabletSchemaPB* out, TabletSchemaCloudPB&& in) {
642
    // ATTN: please keep the set order aligned with the definition of proto.
643
323k
    out->set_keys_type(in.keys_type());
644
323k
    out->mutable_column()->Swap(in.mutable_column());
645
323k
    out->set_num_short_key_columns(in.num_short_key_columns());
646
323k
    out->set_num_rows_per_row_block(in.num_rows_per_row_block());
647
323k
    out->set_compress_kind(in.compress_kind());
648
323k
    out->set_bf_fpp(in.bf_fpp());
649
323k
    out->set_next_column_unique_id(in.next_column_unique_id());
650
323k
    out->set_delete_sign_idx(in.delete_sign_idx());
651
323k
    out->set_sequence_col_idx(in.sequence_col_idx());
652
323k
    out->set_sort_type(in.sort_type());
653
323k
    out->set_sort_col_num(in.sort_col_num());
654
323k
    out->set_compression_type(in.compression_type());
655
323k
    out->set_schema_version(in.schema_version());
656
323k
    out->set_disable_auto_compaction(in.disable_auto_compaction());
657
323k
    out->mutable_index()->Swap(in.mutable_index());
658
323k
    out->set_version_col_idx(in.version_col_idx());
659
323k
    out->set_store_row_column(in.store_row_column());
660
323k
    out->set_skip_write_index_on_load(in.skip_write_index_on_load());
661
323k
    out->mutable_cluster_key_uids()->Swap(in.mutable_cluster_key_uids());
662
323k
    out->set_is_dynamic_schema(in.is_dynamic_schema());
663
323k
    out->set_is_external_segment_column_meta_used(in.is_external_segment_column_meta_used());
664
323k
    out->mutable_row_store_column_unique_ids()->Swap(in.mutable_row_store_column_unique_ids());
665
323k
    out->set_inverted_index_storage_format(in.inverted_index_storage_format());
666
323k
    out->set_enable_variant_flatten_nested(in.enable_variant_flatten_nested());
667
323k
    out->set_skip_bitmap_col_idx(in.skip_bitmap_col_idx());
668
323k
    out->set_storage_page_size(in.storage_page_size());
669
323k
    out->set_storage_dict_page_size(in.storage_dict_page_size());
670
323k
    out->set_is_in_memory(in.is_in_memory());
671
323k
    out->set_row_store_page_size(in.row_store_page_size());
672
323k
    if (in.has_integer_type_default_use_plain_encoding()) {
673
150k
        out->set_integer_type_default_use_plain_encoding(
674
150k
                in.integer_type_default_use_plain_encoding());
675
150k
    }
676
323k
    if (in.has_binary_plain_encoding_default_impl()) {
677
150k
        out->set_binary_plain_encoding_default_impl(in.binary_plain_encoding_default_impl());
678
150k
    }
679
323k
    if (in.has_storage_format()) {
680
323k
        out->set_storage_format(in.storage_format());
681
323k
    }
682
323k
    if (in.has_seq_map()) {
683
322k
        out->mutable_seq_map()->CopyFrom(in.seq_map());
684
322k
    }
685
323k
    if (in.has_commit_tso_col_idx()) {
686
323k
        out->set_commit_tso_col_idx(in.commit_tso_col_idx());
687
323k
    }
688
323k
    if (in.has_binlog_tso_col_idx()) {
689
22
        out->set_binlog_tso_col_idx(in.binlog_tso_col_idx());
690
22
    }
691
323k
    if (in.has_binlog_lsn_col_idx()) {
692
22
        out->set_binlog_lsn_col_idx(in.binlog_lsn_col_idx());
693
22
    }
694
323k
    if (in.has_binlog_op_col_idx()) {
695
22
        out->set_binlog_op_col_idx(in.binlog_op_col_idx());
696
22
    }
697
698
323k
    if (in.has___split_schema()) {
699
5
        out->mutable___split_schema()->CopyFrom(in.__split_schema());
700
5
    }
701
323k
}
702
703
0
TabletMetaCloudPB doris_tablet_meta_to_cloud(const TabletMetaPB& in) {
704
0
    TabletMetaCloudPB out;
705
0
    doris_tablet_meta_to_cloud(&out, in);
706
0
    return out;
707
0
}
708
709
1
TabletMetaCloudPB doris_tablet_meta_to_cloud(TabletMetaPB&& in) {
710
1
    TabletMetaCloudPB out;
711
1
    doris_tablet_meta_to_cloud(&out, std::move(in));
712
1
    return out;
713
1
}
714
715
1
void doris_tablet_meta_to_cloud(TabletMetaCloudPB* out, const TabletMetaPB& in) {
716
    // ATTN: please keep the set order aligned with the definition of proto.
717
1
    out->set_table_id(in.table_id());
718
1
    out->set_partition_id(in.partition_id());
719
1
    out->set_tablet_id(in.tablet_id());
720
1
    out->set_schema_hash(in.schema_hash());
721
1
    out->set_shard_id(in.shard_id());
722
1
    out->set_creation_time(in.creation_time());
723
1
    out->set_cumulative_layer_point(in.cumulative_layer_point());
724
1
    out->set_tablet_state(in.tablet_state());
725
1
    if (in.has_schema()) {
726
1
        doris_tablet_schema_to_cloud(out->mutable_schema(), in.schema());
727
1
    }
728
1
    if (in.rs_metas_size()) {
729
1
        out->mutable_rs_metas()->Reserve(in.rs_metas_size());
730
1
        for (const auto& rs_meta : in.rs_metas()) {
731
1
            doris_rowset_meta_to_cloud(out->add_rs_metas(), rs_meta);
732
1
        }
733
1
    }
734
    // ATTN: inc_rs_metas are deprecated, here is for conversion check
735
1
    if (in.inc_rs_metas_size()) {
736
1
        out->mutable_inc_rs_metas()->Reserve(in.inc_rs_metas_size());
737
1
        for (const auto& rs_meta : in.inc_rs_metas()) {
738
1
            doris_rowset_meta_to_cloud(out->add_inc_rs_metas(), rs_meta);
739
1
        }
740
1
    }
741
1
    if (in.has_alter_task()) {
742
1
        out->mutable_alter_task()->CopyFrom(in.alter_task());
743
1
    }
744
1
    out->set_in_restore_mode(in.in_restore_mode());
745
1
    out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
746
1
    out->set_end_rowset_id(in.end_rowset_id());
747
1
    out->set_preferred_rowset_type(in.preferred_rowset_type());
748
1
    out->set_tablet_type(in.tablet_type());
749
1
    if (in.stale_rs_metas_size()) {
750
1
        out->mutable_stale_rs_metas()->Reserve(in.stale_rs_metas_size());
751
1
        for (const auto& rs_meta : in.stale_rs_metas()) {
752
1
            doris_rowset_meta_to_cloud(out->add_stale_rs_metas(), rs_meta);
753
1
        }
754
1
    }
755
1
    out->set_replica_id(in.replica_id());
756
1
    if (in.has_delete_bitmap()) {
757
1
        out->mutable_delete_bitmap()->CopyFrom(in.delete_bitmap());
758
1
    }
759
1
    out->set_enable_unique_key_merge_on_write(in.enable_unique_key_merge_on_write());
760
1
    out->set_storage_policy_id(in.storage_policy_id());
761
1
    out->mutable_cooldown_meta_id()->CopyFrom(in.cooldown_meta_id());
762
1
    if (in.has_binlog_config()) {
763
1
        out->mutable_binlog_config()->CopyFrom(in.binlog_config());
764
1
    }
765
1
    if (in.has_tablet_role()) {
766
1
        out->set_tablet_role(in.tablet_role());
767
1
    }
768
1
    if (in.has_binlog_tablet_id()) {
769
1
        out->set_binlog_tablet_id(in.binlog_tablet_id());
770
1
    }
771
1
    out->set_compaction_policy(in.compaction_policy());
772
1
    out->set_time_series_compaction_goal_size_mbytes(in.time_series_compaction_goal_size_mbytes());
773
1
    out->set_time_series_compaction_file_count_threshold(
774
1
            in.time_series_compaction_file_count_threshold());
775
1
    out->set_time_series_compaction_time_threshold_seconds(
776
1
            in.time_series_compaction_time_threshold_seconds());
777
1
    out->set_time_series_compaction_empty_rowsets_threshold(
778
1
            in.time_series_compaction_empty_rowsets_threshold());
779
1
    out->set_time_series_compaction_level_threshold(in.time_series_compaction_level_threshold());
780
1
    out->set_vertical_compaction_num_columns_per_group(
781
1
            in.vertical_compaction_num_columns_per_group());
782
1
    out->set_index_id(in.index_id());
783
1
    out->set_is_in_memory(in.is_in_memory());
784
1
    out->set_is_persistent(in.is_persistent());
785
1
    out->set_table_name(in.table_name());
786
1
    out->set_ttl_seconds(in.ttl_seconds());
787
1
    if (in.has_schema_version()) {
788
1
        out->set_schema_version(in.schema_version());
789
1
    }
790
1
    if (in.has_encryption_algorithm()) {
791
1
        out->set_encryption_algorithm(in.encryption_algorithm());
792
1
    }
793
1
}
794
795
1
void doris_tablet_meta_to_cloud(TabletMetaCloudPB* out, TabletMetaPB&& in) {
796
    // ATTN: please keep the set order aligned with the definition of proto.
797
1
    out->set_table_id(in.table_id());
798
1
    out->set_partition_id(in.partition_id());
799
1
    out->set_tablet_id(in.tablet_id());
800
1
    out->set_schema_hash(in.schema_hash());
801
1
    out->set_shard_id(in.shard_id());
802
1
    out->set_creation_time(in.creation_time());
803
1
    out->set_cumulative_layer_point(in.cumulative_layer_point());
804
1
    out->set_tablet_state(in.tablet_state());
805
1
    if (in.has_schema()) {
806
1
        doris_tablet_schema_to_cloud(out->mutable_schema(), std::move(*in.mutable_schema()));
807
1
    }
808
1
    if (in.rs_metas_size()) {
809
1
        int32_t rs_metas_size = in.rs_metas_size();
810
1
        out->mutable_rs_metas()->Reserve(rs_metas_size);
811
2
        for (int i = 0; i < rs_metas_size; ++i) {
812
1
            doris_rowset_meta_to_cloud(out->add_rs_metas(), std::move(*in.mutable_rs_metas(i)));
813
1
        }
814
1
    }
815
    // ATTN: inc_rs_metas are deprecated, here is for conversion check
816
1
    if (in.inc_rs_metas_size()) {
817
1
        int rs_metas_size = in.inc_rs_metas_size();
818
1
        out->mutable_inc_rs_metas()->Reserve(rs_metas_size);
819
2
        for (int i = 0; i < rs_metas_size; ++i) {
820
1
            doris_rowset_meta_to_cloud(out->add_inc_rs_metas(),
821
1
                                       std::move(*in.mutable_inc_rs_metas(i)));
822
1
        }
823
1
    }
824
1
    if (in.has_alter_task()) {
825
1
        out->mutable_alter_task()->Swap(in.mutable_alter_task());
826
1
    }
827
1
    out->set_in_restore_mode(in.in_restore_mode());
828
1
    out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
829
1
    out->set_end_rowset_id(in.end_rowset_id());
830
1
    out->set_preferred_rowset_type(in.preferred_rowset_type());
831
1
    out->set_tablet_type(in.tablet_type());
832
1
    if (in.stale_rs_metas_size()) {
833
1
        int rs_metas_size = in.stale_rs_metas_size();
834
1
        out->mutable_stale_rs_metas()->Reserve(rs_metas_size);
835
2
        for (int i = 0; i < rs_metas_size; i++) {
836
1
            doris_rowset_meta_to_cloud(out->add_stale_rs_metas(),
837
1
                                       std::move(*in.mutable_stale_rs_metas(i)));
838
1
        }
839
1
    }
840
1
    out->set_replica_id(in.replica_id());
841
1
    if (in.has_delete_bitmap()) {
842
1
        out->mutable_delete_bitmap()->Swap(in.mutable_delete_bitmap());
843
1
    }
844
1
    out->set_enable_unique_key_merge_on_write(in.enable_unique_key_merge_on_write());
845
1
    out->set_storage_policy_id(in.storage_policy_id());
846
1
    out->mutable_cooldown_meta_id()->CopyFrom(in.cooldown_meta_id());
847
1
    if (in.has_binlog_config()) {
848
1
        out->mutable_binlog_config()->Swap(in.mutable_binlog_config());
849
1
    }
850
1
    if (in.has_tablet_role()) {
851
1
        out->set_tablet_role(in.tablet_role());
852
1
    }
853
1
    if (in.has_binlog_tablet_id()) {
854
1
        out->set_binlog_tablet_id(in.binlog_tablet_id());
855
1
    }
856
1
    out->set_compaction_policy(in.compaction_policy());
857
1
    out->set_time_series_compaction_goal_size_mbytes(in.time_series_compaction_goal_size_mbytes());
858
1
    out->set_time_series_compaction_file_count_threshold(
859
1
            in.time_series_compaction_file_count_threshold());
860
1
    out->set_time_series_compaction_time_threshold_seconds(
861
1
            in.time_series_compaction_time_threshold_seconds());
862
1
    out->set_time_series_compaction_empty_rowsets_threshold(
863
1
            in.time_series_compaction_empty_rowsets_threshold());
864
1
    out->set_time_series_compaction_level_threshold(in.time_series_compaction_level_threshold());
865
1
    out->set_vertical_compaction_num_columns_per_group(
866
1
            in.vertical_compaction_num_columns_per_group());
867
1
    out->set_index_id(in.index_id());
868
1
    out->set_is_in_memory(in.is_in_memory());
869
1
    out->set_is_persistent(in.is_persistent());
870
1
    out->set_table_name(in.table_name());
871
1
    out->set_ttl_seconds(in.ttl_seconds());
872
1
    if (in.has_schema_version()) {
873
1
        out->set_schema_version(in.schema_version());
874
1
    }
875
1
    if (in.has_encryption_algorithm()) {
876
1
        out->set_encryption_algorithm(in.encryption_algorithm());
877
1
    }
878
1
}
879
880
0
TabletMetaPB cloud_tablet_meta_to_doris(const TabletMetaCloudPB& in) {
881
0
    TabletMetaPB out;
882
0
    cloud_tablet_meta_to_doris(&out, in);
883
0
    return out;
884
0
}
885
886
323k
TabletMetaPB cloud_tablet_meta_to_doris(TabletMetaCloudPB&& in) {
887
323k
    TabletMetaPB out;
888
323k
    cloud_tablet_meta_to_doris(&out, std::move(in));
889
323k
    return out;
890
323k
}
891
892
1
void cloud_tablet_meta_to_doris(TabletMetaPB* out, const TabletMetaCloudPB& in) {
893
    // ATTN: please keep the set order aligned with the definition of proto.
894
1
    out->set_table_id(in.table_id());
895
1
    out->set_partition_id(in.partition_id());
896
1
    out->set_tablet_id(in.tablet_id());
897
1
    out->set_schema_hash(in.schema_hash());
898
1
    out->set_shard_id(in.shard_id());
899
1
    out->set_creation_time(in.creation_time());
900
1
    out->set_cumulative_layer_point(in.cumulative_layer_point());
901
1
    out->set_tablet_state(in.tablet_state());
902
1
    if (in.has_schema()) {
903
1
        cloud_tablet_schema_to_doris(out->mutable_schema(), in.schema());
904
1
    }
905
1
    if (in.rs_metas_size()) {
906
1
        out->mutable_rs_metas()->Reserve(in.rs_metas_size());
907
1
        for (const auto& rs_meta : in.rs_metas()) {
908
1
            cloud_rowset_meta_to_doris(out->add_rs_metas(), rs_meta);
909
1
        }
910
1
    }
911
    // ATTN: inc_rs_metas are deprecated, here is for conversion check
912
1
    if (in.inc_rs_metas_size()) {
913
1
        out->mutable_inc_rs_metas()->Reserve(in.inc_rs_metas_size());
914
1
        for (const auto& rs_meta : in.inc_rs_metas()) {
915
1
            cloud_rowset_meta_to_doris(out->add_inc_rs_metas(), rs_meta);
916
1
        }
917
1
    }
918
1
    if (in.has_alter_task()) {
919
1
        out->mutable_alter_task()->CopyFrom(in.alter_task());
920
1
    }
921
1
    out->set_in_restore_mode(in.in_restore_mode());
922
1
    out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
923
1
    out->set_end_rowset_id(in.end_rowset_id());
924
1
    out->set_preferred_rowset_type(in.preferred_rowset_type());
925
1
    out->set_tablet_type(in.tablet_type());
926
1
    if (in.stale_rs_metas_size()) {
927
1
        out->mutable_stale_rs_metas()->Reserve(in.stale_rs_metas_size());
928
1
        for (const auto& rs_meta : in.stale_rs_metas()) {
929
1
            cloud_rowset_meta_to_doris(out->add_stale_rs_metas(), rs_meta);
930
1
        }
931
1
    }
932
1
    out->set_replica_id(in.replica_id());
933
1
    if (in.has_delete_bitmap()) {
934
1
        out->mutable_delete_bitmap()->CopyFrom(in.delete_bitmap());
935
1
    }
936
1
    out->set_enable_unique_key_merge_on_write(in.enable_unique_key_merge_on_write());
937
1
    out->set_storage_policy_id(in.storage_policy_id());
938
1
    out->mutable_cooldown_meta_id()->CopyFrom(in.cooldown_meta_id());
939
1
    if (in.has_binlog_config()) {
940
1
        out->mutable_binlog_config()->CopyFrom(in.binlog_config());
941
1
    }
942
1
    if (in.has_tablet_role()) {
943
1
        out->set_tablet_role(in.tablet_role());
944
1
    }
945
1
    if (in.has_binlog_tablet_id()) {
946
1
        out->set_binlog_tablet_id(in.binlog_tablet_id());
947
1
    }
948
1
    out->set_compaction_policy(in.compaction_policy());
949
1
    out->set_time_series_compaction_goal_size_mbytes(in.time_series_compaction_goal_size_mbytes());
950
1
    out->set_time_series_compaction_file_count_threshold(
951
1
            in.time_series_compaction_file_count_threshold());
952
1
    out->set_time_series_compaction_time_threshold_seconds(
953
1
            in.time_series_compaction_time_threshold_seconds());
954
1
    out->set_time_series_compaction_empty_rowsets_threshold(
955
1
            in.time_series_compaction_empty_rowsets_threshold());
956
1
    out->set_time_series_compaction_level_threshold(in.time_series_compaction_level_threshold());
957
1
    out->set_vertical_compaction_num_columns_per_group(
958
1
            in.vertical_compaction_num_columns_per_group());
959
1
    out->set_index_id(in.index_id());
960
1
    out->set_is_in_memory(in.is_in_memory());
961
1
    out->set_is_persistent(in.is_persistent());
962
1
    out->set_table_name(in.table_name());
963
1
    out->set_ttl_seconds(in.ttl_seconds());
964
1
    if (in.has_schema_version()) {
965
1
        out->set_schema_version(in.schema_version());
966
1
    }
967
1
    if (in.has_encryption_algorithm()) {
968
1
        out->set_encryption_algorithm(in.encryption_algorithm());
969
1
    }
970
1
}
971
972
323k
void cloud_tablet_meta_to_doris(TabletMetaPB* out, TabletMetaCloudPB&& in) {
973
    // ATTN: please keep the set order aligned with the definition of proto.
974
323k
    out->set_table_id(in.table_id());
975
323k
    out->set_partition_id(in.partition_id());
976
323k
    out->set_tablet_id(in.tablet_id());
977
323k
    out->set_schema_hash(in.schema_hash());
978
323k
    out->set_shard_id(in.shard_id());
979
323k
    out->set_creation_time(in.creation_time());
980
323k
    out->set_cumulative_layer_point(in.cumulative_layer_point());
981
323k
    out->set_tablet_state(in.tablet_state());
982
323k
    if (in.has_schema()) {
983
323k
        cloud_tablet_schema_to_doris(out->mutable_schema(), std::move(*in.mutable_schema()));
984
323k
    }
985
323k
    if (in.rs_metas_size()) {
986
1
        int rs_metas_size = in.rs_metas_size();
987
1
        out->mutable_rs_metas()->Reserve(rs_metas_size);
988
2
        for (int i = 0; i < rs_metas_size; ++i) {
989
1
            cloud_rowset_meta_to_doris(out->add_rs_metas(), std::move(*in.mutable_rs_metas(i)));
990
1
        }
991
1
    }
992
    // ATTN: inc_rs_metas are deprecated, here is for conversion check
993
323k
    if (in.inc_rs_metas_size()) {
994
1
        int rs_metas_size = in.inc_rs_metas_size();
995
1
        out->mutable_inc_rs_metas()->Reserve(rs_metas_size);
996
2
        for (int i = 0; i < rs_metas_size; i++) {
997
1
            cloud_rowset_meta_to_doris(out->add_inc_rs_metas(),
998
1
                                       std::move(*in.mutable_inc_rs_metas(i)));
999
1
        }
1000
1
    }
1001
323k
    if (in.has_alter_task()) {
1002
1
        out->mutable_alter_task()->Swap(in.mutable_alter_task());
1003
1
    }
1004
323k
    out->set_in_restore_mode(in.in_restore_mode());
1005
323k
    out->mutable_tablet_uid()->CopyFrom(in.tablet_uid());
1006
323k
    out->set_end_rowset_id(in.end_rowset_id());
1007
323k
    out->set_preferred_rowset_type(in.preferred_rowset_type());
1008
323k
    out->set_tablet_type(in.tablet_type());
1009
323k
    if (in.stale_rs_metas_size()) {
1010
1
        int rs_metas_size = in.stale_rs_metas_size();
1011
1
        out->mutable_stale_rs_metas()->Reserve(rs_metas_size);
1012
2
        for (int i = 0; i < rs_metas_size; i++) {
1013
1
            cloud_rowset_meta_to_doris(out->add_stale_rs_metas(),
1014
1
                                       std::move(*in.mutable_stale_rs_metas(i)));
1015
1
        }
1016
1
    }
1017
323k
    out->set_replica_id(in.replica_id());
1018
323k
    if (in.has_delete_bitmap()) {
1019
1
        out->mutable_delete_bitmap()->Swap(in.mutable_delete_bitmap());
1020
1
    }
1021
323k
    out->set_enable_unique_key_merge_on_write(in.enable_unique_key_merge_on_write());
1022
323k
    out->set_storage_policy_id(in.storage_policy_id());
1023
323k
    out->mutable_cooldown_meta_id()->CopyFrom(in.cooldown_meta_id());
1024
323k
    if (in.has_binlog_config()) {
1025
287k
        out->mutable_binlog_config()->Swap(in.mutable_binlog_config());
1026
287k
    }
1027
323k
    if (in.has_tablet_role()) {
1028
323k
        out->set_tablet_role(in.tablet_role());
1029
323k
    }
1030
323k
    if (in.has_binlog_tablet_id()) {
1031
1
        out->set_binlog_tablet_id(in.binlog_tablet_id());
1032
1
    }
1033
323k
    out->set_compaction_policy(in.compaction_policy());
1034
323k
    out->set_time_series_compaction_goal_size_mbytes(in.time_series_compaction_goal_size_mbytes());
1035
323k
    out->set_time_series_compaction_file_count_threshold(
1036
323k
            in.time_series_compaction_file_count_threshold());
1037
323k
    out->set_time_series_compaction_time_threshold_seconds(
1038
323k
            in.time_series_compaction_time_threshold_seconds());
1039
323k
    out->set_time_series_compaction_empty_rowsets_threshold(
1040
323k
            in.time_series_compaction_empty_rowsets_threshold());
1041
323k
    out->set_time_series_compaction_level_threshold(in.time_series_compaction_level_threshold());
1042
323k
    out->set_vertical_compaction_num_columns_per_group(
1043
323k
            in.vertical_compaction_num_columns_per_group());
1044
323k
    out->set_index_id(in.index_id());
1045
323k
    out->set_is_in_memory(in.is_in_memory());
1046
323k
    out->set_is_persistent(in.is_persistent());
1047
323k
    out->set_table_name(in.table_name());
1048
323k
    out->set_ttl_seconds(in.ttl_seconds());
1049
323k
    if (in.has_schema_version()) {
1050
323k
        out->set_schema_version(in.schema_version());
1051
323k
    }
1052
323k
    if (in.has_encryption_algorithm()) {
1053
323k
        out->set_encryption_algorithm(in.encryption_algorithm());
1054
323k
    }
1055
323k
}
1056
1057
} // namespace doris::cloud