Coverage Report

Created: 2026-10-30 16:23

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/storage/segment/plain_page.h
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
#pragma once
19
20
#include "common/cast_set.h"
21
#include "storage/olap_common.h"
22
#include "storage/segment/options.h"
23
#include "storage/segment/page_builder.h"
24
#include "storage/segment/page_decoder.h"
25
#include "storage/storage_layout.h"
26
#include "storage/types.h"
27
#include "util/coding.h"
28
#include "util/faststring.h"
29
#include "util/unaligned.h"
30
31
namespace doris {
32
namespace segment_v2 {
33
34
static const size_t PLAIN_PAGE_HEADER_SIZE = sizeof(uint32_t);
35
36
template <FieldType Type>
37
class PlainPageBuilder : public PageBuilderHelper<PlainPageBuilder<Type>> {
38
public:
39
    using Self = PlainPageBuilder<Type>;
40
    friend class PageBuilderHelper<Self>;
41
42
250k
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
250k
        return reset();
46
250k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE1EE4initEv
Line
Count
Source
42
57.0k
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
57.0k
        return reset();
46
57.0k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE3EE4initEv
Line
Count
Source
42
11.3k
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
11.3k
        return reset();
46
11.3k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE5EE4initEv
Line
Count
Source
42
52.8k
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
52.8k
        return reset();
46
52.8k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE7EE4initEv
Line
Count
Source
42
95.8k
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
95.8k
        return reset();
46
95.8k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE9EE4initEv
Line
Count
Source
42
13.5k
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
13.5k
        return reset();
46
13.5k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE10EE4initEv
Line
Count
Source
42
9.17k
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
9.17k
        return reset();
46
9.17k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE11EE4initEv
Line
Count
Source
42
10.4k
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
10.4k
        return reset();
46
10.4k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE24EE4initEv
Line
Count
Source
42
10
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
10
        return reset();
46
10
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE14EE4initEv
Line
Count
Source
42
20
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
20
        return reset();
46
20
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE28EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE29EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE41EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE15EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE40EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE16EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE31EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE32EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE33EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE37EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE38EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE39EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE42EE4initEv
Line
Count
Source
42
4
    Status init() override {
43
        // Reserve enough space for the page, plus a bit of slop since
44
        // we often overrun the page by a few values.
45
4
        return reset();
46
4
    }
47
48
1.50M
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE1EE12is_page_fullEv
Line
Count
Source
48
125k
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE3EE12is_page_fullEv
Line
Count
Source
48
22.3k
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE5EE12is_page_fullEv
Line
Count
Source
48
523k
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE7EE12is_page_fullEv
Line
Count
Source
48
740k
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE9EE12is_page_fullEv
Line
Count
Source
48
27.0k
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE10EE12is_page_fullEv
Line
Count
Source
48
17.6k
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE11EE12is_page_fullEv
Line
Count
Source
48
45.2k
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE24EE12is_page_fullEv
Line
Count
Source
48
782
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE14EE12is_page_fullEv
Line
Count
Source
48
520
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE28EE12is_page_fullEv
Line
Count
Source
48
232
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE29EE12is_page_fullEv
Line
Count
Source
48
240
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE41EE12is_page_fullEv
Line
Count
Source
48
240
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE15EE12is_page_fullEv
Line
Count
Source
48
240
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE40EE12is_page_fullEv
Line
Count
Source
48
240
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE16EE12is_page_fullEv
Line
Count
Source
48
256
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE31EE12is_page_fullEv
Line
Count
Source
48
232
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE32EE12is_page_fullEv
Line
Count
Source
48
240
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE33EE12is_page_fullEv
Line
Count
Source
48
272
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE37EE12is_page_fullEv
Line
Count
Source
48
336
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE38EE12is_page_fullEv
Line
Count
Source
48
232
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE39EE12is_page_fullEv
Line
Count
Source
48
272
    bool is_page_full() override { return _remain_element_capacity == 0; }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE42EE12is_page_fullEv
Line
Count
Source
48
272
    bool is_page_full() override { return _remain_element_capacity == 0; }
49
50
753k
    Status add(const uint8_t* vals, size_t* count) override {
51
753k
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
753k
        size_t old_size = _buffer.size();
56
753k
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
753k
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
753k
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
753k
        _count += to_add;
62
753k
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
753k
        *count = to_add;
65
753k
        _remain_element_capacity -= to_add;
66
753k
        return Status::OK();
67
753k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE1EE3addEPKhPm
Line
Count
Source
50
62.8k
    Status add(const uint8_t* vals, size_t* count) override {
51
62.8k
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
62.8k
        size_t old_size = _buffer.size();
56
62.8k
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
62.8k
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
62.8k
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
62.8k
        _count += to_add;
62
62.8k
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
62.8k
        *count = to_add;
65
62.8k
        _remain_element_capacity -= to_add;
66
62.8k
        return Status::OK();
67
62.8k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE3EE3addEPKhPm
Line
Count
Source
50
11.1k
    Status add(const uint8_t* vals, size_t* count) override {
51
11.1k
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
11.1k
        size_t old_size = _buffer.size();
56
11.1k
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
11.1k
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
11.1k
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
11.1k
        _count += to_add;
62
11.1k
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
11.1k
        *count = to_add;
65
11.1k
        _remain_element_capacity -= to_add;
66
11.1k
        return Status::OK();
67
11.1k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE5EE3addEPKhPm
Line
Count
Source
50
261k
    Status add(const uint8_t* vals, size_t* count) override {
51
261k
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
261k
        size_t old_size = _buffer.size();
56
261k
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
261k
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
262k
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
262k
        _count += to_add;
62
262k
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
262k
        *count = to_add;
65
262k
        _remain_element_capacity -= to_add;
66
262k
        return Status::OK();
67
261k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE7EE3addEPKhPm
Line
Count
Source
50
370k
    Status add(const uint8_t* vals, size_t* count) override {
51
370k
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
370k
        size_t old_size = _buffer.size();
56
370k
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
370k
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
370k
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
370k
        _count += to_add;
62
370k
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
370k
        *count = to_add;
65
370k
        _remain_element_capacity -= to_add;
66
370k
        return Status::OK();
67
370k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE9EE3addEPKhPm
Line
Count
Source
50
13.5k
    Status add(const uint8_t* vals, size_t* count) override {
51
13.5k
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
13.5k
        size_t old_size = _buffer.size();
56
13.5k
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
13.5k
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
13.5k
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
13.5k
        _count += to_add;
62
13.5k
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
13.5k
        *count = to_add;
65
13.5k
        _remain_element_capacity -= to_add;
66
13.5k
        return Status::OK();
67
13.5k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE10EE3addEPKhPm
Line
Count
Source
50
8.83k
    Status add(const uint8_t* vals, size_t* count) override {
51
8.83k
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
8.83k
        size_t old_size = _buffer.size();
56
8.83k
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
8.83k
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
8.83k
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
8.83k
        _count += to_add;
62
8.83k
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
8.83k
        *count = to_add;
65
8.83k
        _remain_element_capacity -= to_add;
66
8.83k
        return Status::OK();
67
8.83k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE11EE3addEPKhPm
Line
Count
Source
50
22.6k
    Status add(const uint8_t* vals, size_t* count) override {
51
22.7k
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
22.6k
        size_t old_size = _buffer.size();
56
22.6k
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
22.6k
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
22.7k
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
22.7k
        _count += to_add;
62
22.7k
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
22.7k
        *count = to_add;
65
22.7k
        _remain_element_capacity -= to_add;
66
22.7k
        return Status::OK();
67
22.6k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE24EE3addEPKhPm
Line
Count
Source
50
394
    Status add(const uint8_t* vals, size_t* count) override {
51
394
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
394
        size_t old_size = _buffer.size();
56
394
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
394
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
394
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
394
        _count += to_add;
62
394
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
394
        *count = to_add;
65
394
        _remain_element_capacity -= to_add;
66
394
        return Status::OK();
67
394
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE14EE3addEPKhPm
Line
Count
Source
50
262
    Status add(const uint8_t* vals, size_t* count) override {
51
262
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
262
        size_t old_size = _buffer.size();
56
262
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
262
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
262
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
262
        _count += to_add;
62
262
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
262
        *count = to_add;
65
262
        _remain_element_capacity -= to_add;
66
262
        return Status::OK();
67
262
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE28EE3addEPKhPm
Line
Count
Source
50
116
    Status add(const uint8_t* vals, size_t* count) override {
51
116
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
116
        size_t old_size = _buffer.size();
56
116
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
116
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
116
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
116
        _count += to_add;
62
116
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
116
        *count = to_add;
65
116
        _remain_element_capacity -= to_add;
66
116
        return Status::OK();
67
116
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE29EE3addEPKhPm
Line
Count
Source
50
120
    Status add(const uint8_t* vals, size_t* count) override {
51
120
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
120
        size_t old_size = _buffer.size();
56
120
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
120
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
120
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
120
        _count += to_add;
62
120
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
120
        *count = to_add;
65
120
        _remain_element_capacity -= to_add;
66
120
        return Status::OK();
67
120
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE41EE3addEPKhPm
Line
Count
Source
50
120
    Status add(const uint8_t* vals, size_t* count) override {
51
120
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
120
        size_t old_size = _buffer.size();
56
120
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
120
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
120
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
120
        _count += to_add;
62
120
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
120
        *count = to_add;
65
120
        _remain_element_capacity -= to_add;
66
120
        return Status::OK();
67
120
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE15EE3addEPKhPm
Line
Count
Source
50
120
    Status add(const uint8_t* vals, size_t* count) override {
51
120
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
120
        size_t old_size = _buffer.size();
56
120
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
120
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
120
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
120
        _count += to_add;
62
120
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
120
        *count = to_add;
65
120
        _remain_element_capacity -= to_add;
66
120
        return Status::OK();
67
120
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE40EE3addEPKhPm
Line
Count
Source
50
120
    Status add(const uint8_t* vals, size_t* count) override {
51
120
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
120
        size_t old_size = _buffer.size();
56
120
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
120
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
120
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
120
        _count += to_add;
62
120
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
120
        *count = to_add;
65
120
        _remain_element_capacity -= to_add;
66
120
        return Status::OK();
67
120
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE16EE3addEPKhPm
Line
Count
Source
50
128
    Status add(const uint8_t* vals, size_t* count) override {
51
128
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
128
        size_t old_size = _buffer.size();
56
128
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
128
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
128
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
128
        _count += to_add;
62
128
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
128
        *count = to_add;
65
128
        _remain_element_capacity -= to_add;
66
128
        return Status::OK();
67
128
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE31EE3addEPKhPm
Line
Count
Source
50
116
    Status add(const uint8_t* vals, size_t* count) override {
51
116
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
116
        size_t old_size = _buffer.size();
56
116
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
116
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
116
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
116
        _count += to_add;
62
116
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
116
        *count = to_add;
65
116
        _remain_element_capacity -= to_add;
66
116
        return Status::OK();
67
116
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE32EE3addEPKhPm
Line
Count
Source
50
120
    Status add(const uint8_t* vals, size_t* count) override {
51
120
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
120
        size_t old_size = _buffer.size();
56
120
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
120
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
120
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
120
        _count += to_add;
62
120
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
120
        *count = to_add;
65
120
        _remain_element_capacity -= to_add;
66
120
        return Status::OK();
67
120
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE33EE3addEPKhPm
Line
Count
Source
50
136
    Status add(const uint8_t* vals, size_t* count) override {
51
136
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
136
        size_t old_size = _buffer.size();
56
136
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
136
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
136
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
136
        _count += to_add;
62
136
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
136
        *count = to_add;
65
136
        _remain_element_capacity -= to_add;
66
136
        return Status::OK();
67
136
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE37EE3addEPKhPm
Line
Count
Source
50
168
    Status add(const uint8_t* vals, size_t* count) override {
51
168
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
168
        size_t old_size = _buffer.size();
56
168
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
168
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
168
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
168
        _count += to_add;
62
168
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
168
        *count = to_add;
65
168
        _remain_element_capacity -= to_add;
66
168
        return Status::OK();
67
168
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE38EE3addEPKhPm
Line
Count
Source
50
116
    Status add(const uint8_t* vals, size_t* count) override {
51
116
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
116
        size_t old_size = _buffer.size();
56
116
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
116
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
116
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
116
        _count += to_add;
62
116
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
116
        *count = to_add;
65
116
        _remain_element_capacity -= to_add;
66
116
        return Status::OK();
67
116
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE39EE3addEPKhPm
Line
Count
Source
50
136
    Status add(const uint8_t* vals, size_t* count) override {
51
136
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
136
        size_t old_size = _buffer.size();
56
136
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
136
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
136
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
136
        _count += to_add;
62
136
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
136
        *count = to_add;
65
136
        _remain_element_capacity -= to_add;
66
136
        return Status::OK();
67
136
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE42EE3addEPKhPm
Line
Count
Source
50
136
    Status add(const uint8_t* vals, size_t* count) override {
51
136
        if (is_page_full() || *count == 0) {
52
0
            *count = 0;
53
0
            return Status::OK();
54
0
        }
55
136
        size_t old_size = _buffer.size();
56
136
        size_t to_add = std::min(_remain_element_capacity, *count);
57
        // This may need a large memory, should return error if could not allocated
58
        // successfully, to avoid BE OOM.
59
136
        RETURN_IF_CATCH_EXCEPTION(_buffer.resize(old_size + to_add * SIZE_OF_TYPE));
60
136
        memcpy(&_buffer[old_size], vals, to_add * SIZE_OF_TYPE);
61
136
        _count += to_add;
62
136
        _raw_data_size += to_add * SIZE_OF_TYPE;
63
64
136
        *count = to_add;
65
136
        _remain_element_capacity -= to_add;
66
136
        return Status::OK();
67
136
    }
68
69
253k
    Status finish(OwnedSlice* slice) override {
70
253k
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
253k
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
253k
        return Status::OK();
73
253k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE1EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
55.6k
    Status finish(OwnedSlice* slice) override {
70
55.6k
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
55.6k
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
55.6k
        return Status::OK();
73
55.6k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE3EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
10.5k
    Status finish(OwnedSlice* slice) override {
70
10.5k
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
10.5k
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
10.5k
        return Status::OK();
73
10.5k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE5EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
54.6k
    Status finish(OwnedSlice* slice) override {
70
54.6k
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
54.6k
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
54.6k
        return Status::OK();
73
54.6k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE7EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
99.7k
    Status finish(OwnedSlice* slice) override {
70
99.7k
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
99.7k
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
99.7k
        return Status::OK();
73
99.7k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE9EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
13.4k
    Status finish(OwnedSlice* slice) override {
70
13.4k
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
13.4k
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
13.4k
        return Status::OK();
73
13.4k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE10EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
8.36k
    Status finish(OwnedSlice* slice) override {
70
8.36k
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
8.36k
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
8.36k
        return Status::OK();
73
8.36k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE11EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
10.1k
    Status finish(OwnedSlice* slice) override {
70
10.1k
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
10.1k
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
10.1k
        return Status::OK();
73
10.1k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE24EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
18
    Status finish(OwnedSlice* slice) override {
70
18
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
18
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
18
        return Status::OK();
73
18
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE14EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
112
    Status finish(OwnedSlice* slice) override {
70
112
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
112
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
112
        return Status::OK();
73
112
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE28EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
12
    Status finish(OwnedSlice* slice) override {
70
12
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
12
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
12
        return Status::OK();
73
12
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE29EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
16
    Status finish(OwnedSlice* slice) override {
70
16
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
16
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
16
        return Status::OK();
73
16
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE41EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
16
    Status finish(OwnedSlice* slice) override {
70
16
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
16
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
16
        return Status::OK();
73
16
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE15EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
16
    Status finish(OwnedSlice* slice) override {
70
16
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
16
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
16
        return Status::OK();
73
16
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE40EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
16
    Status finish(OwnedSlice* slice) override {
70
16
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
16
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
16
        return Status::OK();
73
16
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE16EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
24
    Status finish(OwnedSlice* slice) override {
70
24
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
24
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
24
        return Status::OK();
73
24
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE31EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
12
    Status finish(OwnedSlice* slice) override {
70
12
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
12
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
12
        return Status::OK();
73
12
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE32EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
16
    Status finish(OwnedSlice* slice) override {
70
16
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
16
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
16
        return Status::OK();
73
16
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE33EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
32
    Status finish(OwnedSlice* slice) override {
70
32
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
32
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
32
        return Status::OK();
73
32
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE37EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
64
    Status finish(OwnedSlice* slice) override {
70
64
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
64
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
64
        return Status::OK();
73
64
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE38EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
12
    Status finish(OwnedSlice* slice) override {
70
12
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
12
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
12
        return Status::OK();
73
12
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE39EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
32
    Status finish(OwnedSlice* slice) override {
70
32
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
32
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
32
        return Status::OK();
73
32
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE42EE6finishEPNS_10OwnedSliceE
Line
Count
Source
69
32
    Status finish(OwnedSlice* slice) override {
70
32
        encode_fixed32_le((uint8_t*)&_buffer[0], cast_set<uint32_t>(_count));
71
32
        RETURN_IF_CATCH_EXCEPTION({ *slice = _buffer.build(); });
72
32
        return Status::OK();
73
32
    }
74
75
503k
    Status reset() override {
76
503k
        RETURN_IF_CATCH_EXCEPTION({
77
503k
            _buffer.reserve(_options.data_page_size);
78
503k
            _count = 0;
79
503k
            _raw_data_size = 0;
80
503k
            _buffer.clear();
81
503k
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
503k
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
503k
        });
84
504k
        return Status::OK();
85
503k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE1EE5resetEv
Line
Count
Source
75
112k
    Status reset() override {
76
112k
        RETURN_IF_CATCH_EXCEPTION({
77
112k
            _buffer.reserve(_options.data_page_size);
78
112k
            _count = 0;
79
112k
            _raw_data_size = 0;
80
112k
            _buffer.clear();
81
112k
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
112k
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
112k
        });
84
112k
        return Status::OK();
85
112k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE3EE5resetEv
Line
Count
Source
75
21.9k
    Status reset() override {
76
21.9k
        RETURN_IF_CATCH_EXCEPTION({
77
21.9k
            _buffer.reserve(_options.data_page_size);
78
21.9k
            _count = 0;
79
21.9k
            _raw_data_size = 0;
80
21.9k
            _buffer.clear();
81
21.9k
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
21.9k
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
21.9k
        });
84
21.9k
        return Status::OK();
85
21.9k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE5EE5resetEv
Line
Count
Source
75
107k
    Status reset() override {
76
107k
        RETURN_IF_CATCH_EXCEPTION({
77
107k
            _buffer.reserve(_options.data_page_size);
78
107k
            _count = 0;
79
107k
            _raw_data_size = 0;
80
107k
            _buffer.clear();
81
107k
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
107k
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
107k
        });
84
107k
        return Status::OK();
85
107k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE7EE5resetEv
Line
Count
Source
75
195k
    Status reset() override {
76
195k
        RETURN_IF_CATCH_EXCEPTION({
77
195k
            _buffer.reserve(_options.data_page_size);
78
195k
            _count = 0;
79
195k
            _raw_data_size = 0;
80
195k
            _buffer.clear();
81
195k
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
195k
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
195k
        });
84
195k
        return Status::OK();
85
195k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE9EE5resetEv
Line
Count
Source
75
27.0k
    Status reset() override {
76
27.0k
        RETURN_IF_CATCH_EXCEPTION({
77
27.0k
            _buffer.reserve(_options.data_page_size);
78
27.0k
            _count = 0;
79
27.0k
            _raw_data_size = 0;
80
27.0k
            _buffer.clear();
81
27.0k
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
27.0k
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
27.0k
        });
84
27.1k
        return Status::OK();
85
27.0k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE10EE5resetEv
Line
Count
Source
75
17.5k
    Status reset() override {
76
17.5k
        RETURN_IF_CATCH_EXCEPTION({
77
17.5k
            _buffer.reserve(_options.data_page_size);
78
17.5k
            _count = 0;
79
17.5k
            _raw_data_size = 0;
80
17.5k
            _buffer.clear();
81
17.5k
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
17.5k
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
17.5k
        });
84
17.5k
        return Status::OK();
85
17.5k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE11EE5resetEv
Line
Count
Source
75
20.6k
    Status reset() override {
76
20.6k
        RETURN_IF_CATCH_EXCEPTION({
77
20.6k
            _buffer.reserve(_options.data_page_size);
78
20.6k
            _count = 0;
79
20.6k
            _raw_data_size = 0;
80
20.6k
            _buffer.clear();
81
20.6k
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
20.6k
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
20.6k
        });
84
20.6k
        return Status::OK();
85
20.6k
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE24EE5resetEv
Line
Count
Source
75
22
    Status reset() override {
76
22
        RETURN_IF_CATCH_EXCEPTION({
77
22
            _buffer.reserve(_options.data_page_size);
78
22
            _count = 0;
79
22
            _raw_data_size = 0;
80
22
            _buffer.clear();
81
22
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
22
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
22
        });
84
22
        return Status::OK();
85
22
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE14EE5resetEv
Line
Count
Source
75
128
    Status reset() override {
76
128
        RETURN_IF_CATCH_EXCEPTION({
77
128
            _buffer.reserve(_options.data_page_size);
78
128
            _count = 0;
79
128
            _raw_data_size = 0;
80
128
            _buffer.clear();
81
128
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
128
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
128
        });
84
128
        return Status::OK();
85
128
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE28EE5resetEv
Line
Count
Source
75
16
    Status reset() override {
76
16
        RETURN_IF_CATCH_EXCEPTION({
77
16
            _buffer.reserve(_options.data_page_size);
78
16
            _count = 0;
79
16
            _raw_data_size = 0;
80
16
            _buffer.clear();
81
16
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
16
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
16
        });
84
16
        return Status::OK();
85
16
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE29EE5resetEv
Line
Count
Source
75
20
    Status reset() override {
76
20
        RETURN_IF_CATCH_EXCEPTION({
77
20
            _buffer.reserve(_options.data_page_size);
78
20
            _count = 0;
79
20
            _raw_data_size = 0;
80
20
            _buffer.clear();
81
20
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
20
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
20
        });
84
20
        return Status::OK();
85
20
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE41EE5resetEv
Line
Count
Source
75
20
    Status reset() override {
76
20
        RETURN_IF_CATCH_EXCEPTION({
77
20
            _buffer.reserve(_options.data_page_size);
78
20
            _count = 0;
79
20
            _raw_data_size = 0;
80
20
            _buffer.clear();
81
20
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
20
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
20
        });
84
20
        return Status::OK();
85
20
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE15EE5resetEv
Line
Count
Source
75
20
    Status reset() override {
76
20
        RETURN_IF_CATCH_EXCEPTION({
77
20
            _buffer.reserve(_options.data_page_size);
78
20
            _count = 0;
79
20
            _raw_data_size = 0;
80
20
            _buffer.clear();
81
20
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
20
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
20
        });
84
20
        return Status::OK();
85
20
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE40EE5resetEv
Line
Count
Source
75
20
    Status reset() override {
76
20
        RETURN_IF_CATCH_EXCEPTION({
77
20
            _buffer.reserve(_options.data_page_size);
78
20
            _count = 0;
79
20
            _raw_data_size = 0;
80
20
            _buffer.clear();
81
20
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
20
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
20
        });
84
20
        return Status::OK();
85
20
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE16EE5resetEv
Line
Count
Source
75
28
    Status reset() override {
76
28
        RETURN_IF_CATCH_EXCEPTION({
77
28
            _buffer.reserve(_options.data_page_size);
78
28
            _count = 0;
79
28
            _raw_data_size = 0;
80
28
            _buffer.clear();
81
28
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
28
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
28
        });
84
28
        return Status::OK();
85
28
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE31EE5resetEv
Line
Count
Source
75
16
    Status reset() override {
76
16
        RETURN_IF_CATCH_EXCEPTION({
77
16
            _buffer.reserve(_options.data_page_size);
78
16
            _count = 0;
79
16
            _raw_data_size = 0;
80
16
            _buffer.clear();
81
16
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
16
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
16
        });
84
16
        return Status::OK();
85
16
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE32EE5resetEv
Line
Count
Source
75
20
    Status reset() override {
76
20
        RETURN_IF_CATCH_EXCEPTION({
77
20
            _buffer.reserve(_options.data_page_size);
78
20
            _count = 0;
79
20
            _raw_data_size = 0;
80
20
            _buffer.clear();
81
20
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
20
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
20
        });
84
20
        return Status::OK();
85
20
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE33EE5resetEv
Line
Count
Source
75
36
    Status reset() override {
76
36
        RETURN_IF_CATCH_EXCEPTION({
77
36
            _buffer.reserve(_options.data_page_size);
78
36
            _count = 0;
79
36
            _raw_data_size = 0;
80
36
            _buffer.clear();
81
36
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
36
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
36
        });
84
36
        return Status::OK();
85
36
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE37EE5resetEv
Line
Count
Source
75
68
    Status reset() override {
76
68
        RETURN_IF_CATCH_EXCEPTION({
77
68
            _buffer.reserve(_options.data_page_size);
78
68
            _count = 0;
79
68
            _raw_data_size = 0;
80
68
            _buffer.clear();
81
68
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
68
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
68
        });
84
68
        return Status::OK();
85
68
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE38EE5resetEv
Line
Count
Source
75
16
    Status reset() override {
76
16
        RETURN_IF_CATCH_EXCEPTION({
77
16
            _buffer.reserve(_options.data_page_size);
78
16
            _count = 0;
79
16
            _raw_data_size = 0;
80
16
            _buffer.clear();
81
16
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
16
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
16
        });
84
16
        return Status::OK();
85
16
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE39EE5resetEv
Line
Count
Source
75
36
    Status reset() override {
76
36
        RETURN_IF_CATCH_EXCEPTION({
77
36
            _buffer.reserve(_options.data_page_size);
78
36
            _count = 0;
79
36
            _raw_data_size = 0;
80
36
            _buffer.clear();
81
36
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
36
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
36
        });
84
36
        return Status::OK();
85
36
    }
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE42EE5resetEv
Line
Count
Source
75
36
    Status reset() override {
76
36
        RETURN_IF_CATCH_EXCEPTION({
77
36
            _buffer.reserve(_options.data_page_size);
78
36
            _count = 0;
79
36
            _raw_data_size = 0;
80
36
            _buffer.clear();
81
36
            _buffer.resize(PLAIN_PAGE_HEADER_SIZE);
82
36
            _remain_element_capacity = _options.data_page_size / SIZE_OF_TYPE;
83
36
        });
84
36
        return Status::OK();
85
36
    }
86
87
64
    size_t count() const override { return _count; }
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE1EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE3EE5countEv
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE5EE5countEv
Line
Count
Source
87
10
    size_t count() const override { return _count; }
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE7EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE9EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE10EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE11EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE24EE5countEv
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE14EE5countEv
Line
Count
Source
87
54
    size_t count() const override { return _count; }
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE28EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE29EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE41EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE15EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE40EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE16EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE31EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE32EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE33EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE37EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE38EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE39EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE42EE5countEv
88
89
12.8k
    uint64_t size() const override { return _buffer.size(); }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE1EE4sizeEv
Line
Count
Source
89
2.05k
    uint64_t size() const override { return _buffer.size(); }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE3EE4sizeEv
Line
Count
Source
89
895
    uint64_t size() const override { return _buffer.size(); }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE5EE4sizeEv
Line
Count
Source
89
4.65k
    uint64_t size() const override { return _buffer.size(); }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE7EE4sizeEv
Line
Count
Source
89
2.81k
    uint64_t size() const override { return _buffer.size(); }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE9EE4sizeEv
Line
Count
Source
89
1.27k
    uint64_t size() const override { return _buffer.size(); }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE10EE4sizeEv
Line
Count
Source
89
583
    uint64_t size() const override { return _buffer.size(); }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE11EE4sizeEv
Line
Count
Source
89
570
    uint64_t size() const override { return _buffer.size(); }
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE24EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE14EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE28EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE29EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE41EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE15EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE40EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE16EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE31EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE32EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE33EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE37EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE38EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE39EE4sizeEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE42EE4sizeEv
90
91
253k
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE1EE17get_raw_data_sizeEv
Line
Count
Source
91
55.6k
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE3EE17get_raw_data_sizeEv
Line
Count
Source
91
10.5k
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE5EE17get_raw_data_sizeEv
Line
Count
Source
91
54.6k
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE7EE17get_raw_data_sizeEv
Line
Count
Source
91
99.7k
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE9EE17get_raw_data_sizeEv
Line
Count
Source
91
13.4k
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE10EE17get_raw_data_sizeEv
Line
Count
Source
91
8.36k
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE11EE17get_raw_data_sizeEv
Line
Count
Source
91
10.1k
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE24EE17get_raw_data_sizeEv
Line
Count
Source
91
12
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE14EE17get_raw_data_sizeEv
Line
Count
Source
91
60
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE28EE17get_raw_data_sizeEv
Line
Count
Source
91
12
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE29EE17get_raw_data_sizeEv
Line
Count
Source
91
16
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE41EE17get_raw_data_sizeEv
Line
Count
Source
91
16
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE15EE17get_raw_data_sizeEv
Line
Count
Source
91
16
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE40EE17get_raw_data_sizeEv
Line
Count
Source
91
16
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE16EE17get_raw_data_sizeEv
Line
Count
Source
91
24
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE31EE17get_raw_data_sizeEv
Line
Count
Source
91
12
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE32EE17get_raw_data_sizeEv
Line
Count
Source
91
16
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE33EE17get_raw_data_sizeEv
Line
Count
Source
91
32
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE37EE17get_raw_data_sizeEv
Line
Count
Source
91
64
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE38EE17get_raw_data_sizeEv
Line
Count
Source
91
12
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE39EE17get_raw_data_sizeEv
Line
Count
Source
91
32
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
_ZNK5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE42EE17get_raw_data_sizeEv
Line
Count
Source
91
32
    uint64_t get_raw_data_size() const override { return _raw_data_size; }
92
93
private:
94
250k
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE1EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
57.0k
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE3EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
11.3k
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE5EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
52.7k
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE7EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
95.6k
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE9EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
13.5k
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE10EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
9.16k
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE11EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
10.4k
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE24EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
10
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE14EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
20
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE28EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE29EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE41EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE15EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE40EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE16EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE31EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE32EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE33EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE37EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE38EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE39EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
_ZN5doris10segment_v216PlainPageBuilderILNS_9FieldTypeE42EEC2ERKNS0_18PageBuilderOptionsE
Line
Count
Source
94
4
    PlainPageBuilder(const PageBuilderOptions& options) : _options(options) {}
95
96
    faststring _buffer;
97
    PageBuilderOptions _options;
98
    size_t _count;
99
    size_t _remain_element_capacity {0};
100
    uint64_t _raw_data_size = 0;
101
    typedef typename TypeTraits<Type>::CppType CppType;
102
    static constexpr size_t SIZE_OF_TYPE = TypeTraits<Type>::size;
103
};
104
105
template <FieldType Type>
106
class PlainPageDecoder : public PageDecoder {
107
public:
108
    PlainPageDecoder(Slice data, const PageDecoderOptions& options)
109
433k
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE1EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
89.4k
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE3EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
20.9k
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE5EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
159k
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE7EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
108k
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE9EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
19.8k
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE10EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
14.3k
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE11EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
19.6k
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE24EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
18
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE14EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
16
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE28EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
12
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE29EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
16
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE41EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
16
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE15EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
16
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE40EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
16
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE16EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
24
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE31EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
12
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE32EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
16
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE33EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
32
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE37EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
64
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE38EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
12
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE39EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
32
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE42EEC2ENS_5SliceERKNS0_18PageDecoderOptionsE
Line
Count
Source
109
32
            : _data(data), _options(options), _parsed(false), _num_elems(0), _cur_idx(0) {}
110
111
432k
    Status init() override {
112
432k
        CHECK(!_parsed);
113
114
432k
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
432k
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
432k
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
432k
        _parsed = true;
128
129
432k
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
432k
        return Status::OK();
131
432k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE1EE4initEv
Line
Count
Source
111
89.3k
    Status init() override {
112
89.3k
        CHECK(!_parsed);
113
114
89.3k
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
89.3k
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
89.3k
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
89.3k
        _parsed = true;
128
129
89.3k
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
89.3k
        return Status::OK();
131
89.3k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE3EE4initEv
Line
Count
Source
111
20.9k
    Status init() override {
112
20.9k
        CHECK(!_parsed);
113
114
20.9k
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
20.9k
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
20.9k
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
20.9k
        _parsed = true;
128
129
20.9k
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
20.9k
        return Status::OK();
131
20.9k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE5EE4initEv
Line
Count
Source
111
158k
    Status init() override {
112
158k
        CHECK(!_parsed);
113
114
158k
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
158k
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
158k
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
158k
        _parsed = true;
128
129
158k
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
158k
        return Status::OK();
131
158k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE7EE4initEv
Line
Count
Source
111
108k
    Status init() override {
112
108k
        CHECK(!_parsed);
113
114
108k
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
108k
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
108k
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
108k
        _parsed = true;
128
129
108k
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
108k
        return Status::OK();
131
108k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE9EE4initEv
Line
Count
Source
111
19.7k
    Status init() override {
112
19.7k
        CHECK(!_parsed);
113
114
19.7k
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
19.7k
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
19.7k
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
19.7k
        _parsed = true;
128
129
19.7k
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
19.7k
        return Status::OK();
131
19.7k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE10EE4initEv
Line
Count
Source
111
14.3k
    Status init() override {
112
14.3k
        CHECK(!_parsed);
113
114
14.3k
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
14.3k
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
14.3k
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
14.3k
        _parsed = true;
128
129
14.3k
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
14.3k
        return Status::OK();
131
14.3k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE11EE4initEv
Line
Count
Source
111
19.6k
    Status init() override {
112
19.6k
        CHECK(!_parsed);
113
114
19.6k
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
19.6k
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
19.6k
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
19.6k
        _parsed = true;
128
129
19.6k
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
19.6k
        return Status::OK();
131
19.6k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE24EE4initEv
Line
Count
Source
111
18
    Status init() override {
112
18
        CHECK(!_parsed);
113
114
18
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
18
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
18
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
18
        _parsed = true;
128
129
18
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
18
        return Status::OK();
131
18
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE14EE4initEv
Line
Count
Source
111
16
    Status init() override {
112
16
        CHECK(!_parsed);
113
114
16
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
16
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
16
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
16
        _parsed = true;
128
129
16
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
16
        return Status::OK();
131
16
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE28EE4initEv
Line
Count
Source
111
12
    Status init() override {
112
12
        CHECK(!_parsed);
113
114
12
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
12
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
12
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
12
        _parsed = true;
128
129
12
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
12
        return Status::OK();
131
12
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE29EE4initEv
Line
Count
Source
111
16
    Status init() override {
112
16
        CHECK(!_parsed);
113
114
16
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
16
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
16
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
16
        _parsed = true;
128
129
16
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
16
        return Status::OK();
131
16
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE41EE4initEv
Line
Count
Source
111
16
    Status init() override {
112
16
        CHECK(!_parsed);
113
114
16
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
16
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
16
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
16
        _parsed = true;
128
129
16
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
16
        return Status::OK();
131
16
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE15EE4initEv
Line
Count
Source
111
16
    Status init() override {
112
16
        CHECK(!_parsed);
113
114
16
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
16
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
16
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
16
        _parsed = true;
128
129
16
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
16
        return Status::OK();
131
16
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE40EE4initEv
Line
Count
Source
111
16
    Status init() override {
112
16
        CHECK(!_parsed);
113
114
16
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
16
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
16
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
16
        _parsed = true;
128
129
16
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
16
        return Status::OK();
131
16
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE16EE4initEv
Line
Count
Source
111
24
    Status init() override {
112
24
        CHECK(!_parsed);
113
114
24
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
24
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
24
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
24
        _parsed = true;
128
129
24
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
24
        return Status::OK();
131
24
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE31EE4initEv
Line
Count
Source
111
12
    Status init() override {
112
12
        CHECK(!_parsed);
113
114
12
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
12
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
12
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
12
        _parsed = true;
128
129
12
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
12
        return Status::OK();
131
12
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE32EE4initEv
Line
Count
Source
111
16
    Status init() override {
112
16
        CHECK(!_parsed);
113
114
16
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
16
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
16
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
16
        _parsed = true;
128
129
16
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
16
        return Status::OK();
131
16
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE33EE4initEv
Line
Count
Source
111
32
    Status init() override {
112
32
        CHECK(!_parsed);
113
114
32
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
32
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
32
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
32
        _parsed = true;
128
129
32
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
32
        return Status::OK();
131
32
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE37EE4initEv
Line
Count
Source
111
64
    Status init() override {
112
64
        CHECK(!_parsed);
113
114
64
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
64
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
64
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
64
        _parsed = true;
128
129
64
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
64
        return Status::OK();
131
64
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE38EE4initEv
Line
Count
Source
111
12
    Status init() override {
112
12
        CHECK(!_parsed);
113
114
12
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
12
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
12
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
12
        _parsed = true;
128
129
12
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
12
        return Status::OK();
131
12
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE39EE4initEv
Line
Count
Source
111
32
    Status init() override {
112
32
        CHECK(!_parsed);
113
114
32
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
32
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
32
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
32
        _parsed = true;
128
129
32
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
32
        return Status::OK();
131
32
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE42EE4initEv
Line
Count
Source
111
32
    Status init() override {
112
32
        CHECK(!_parsed);
113
114
32
        if (_data.size < PLAIN_PAGE_HEADER_SIZE) {
115
0
            return Status::InternalError(
116
0
                    "file corruption: not enough bytes for header in PlainPageDecoder ."
117
0
                    "invalid data size:{}, header size:{}",
118
0
                    _data.size, PLAIN_PAGE_HEADER_SIZE);
119
0
        }
120
121
32
        _num_elems = decode_fixed32_le((const uint8_t*)&_data[0]);
122
123
32
        if (_data.size != PLAIN_PAGE_HEADER_SIZE + _num_elems * SIZE_OF_TYPE) {
124
0
            return Status::InternalError("file corruption: unexpected data size.");
125
0
        }
126
127
32
        _parsed = true;
128
129
32
        RETURN_IF_ERROR(seek_to_position_in_page(0));
130
32
        return Status::OK();
131
32
    }
132
133
2.39M
    Status seek_to_position_in_page(size_t pos) override {
134
18.4E
        CHECK(_parsed) << "Must call init()";
135
2.39M
        if (_num_elems == 0) [[unlikely]] {
136
11.7k
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
11.7k
        }
141
142
2.39M
        DCHECK_LE(pos, _num_elems);
143
144
2.39M
        _cur_idx = cast_set<uint32_t>(pos);
145
2.39M
        return Status::OK();
146
2.39M
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE1EE24seek_to_position_in_pageEm
Line
Count
Source
133
369k
    Status seek_to_position_in_page(size_t pos) override {
134
18.4E
        CHECK(_parsed) << "Must call init()";
135
369k
        if (_num_elems == 0) [[unlikely]] {
136
1.61k
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
1.61k
        }
141
142
369k
        DCHECK_LE(pos, _num_elems);
143
144
369k
        _cur_idx = cast_set<uint32_t>(pos);
145
369k
        return Status::OK();
146
369k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE3EE24seek_to_position_in_pageEm
Line
Count
Source
133
256k
    Status seek_to_position_in_page(size_t pos) override {
134
256k
        CHECK(_parsed) << "Must call init()";
135
256k
        if (_num_elems == 0) [[unlikely]] {
136
738
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
738
        }
141
142
256k
        DCHECK_LE(pos, _num_elems);
143
144
256k
        _cur_idx = cast_set<uint32_t>(pos);
145
256k
        return Status::OK();
146
256k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE5EE24seek_to_position_in_pageEm
Line
Count
Source
133
909k
    Status seek_to_position_in_page(size_t pos) override {
134
18.4E
        CHECK(_parsed) << "Must call init()";
135
909k
        if (_num_elems == 0) [[unlikely]] {
136
4.05k
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
4.05k
        }
141
142
909k
        DCHECK_LE(pos, _num_elems);
143
144
909k
        _cur_idx = cast_set<uint32_t>(pos);
145
909k
        return Status::OK();
146
909k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE7EE24seek_to_position_in_pageEm
Line
Count
Source
133
237k
    Status seek_to_position_in_page(size_t pos) override {
134
18.4E
        CHECK(_parsed) << "Must call init()";
135
237k
        if (_num_elems == 0) [[unlikely]] {
136
3.84k
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
3.84k
        }
141
142
237k
        DCHECK_LE(pos, _num_elems);
143
144
237k
        _cur_idx = cast_set<uint32_t>(pos);
145
237k
        return Status::OK();
146
237k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE9EE24seek_to_position_in_pageEm
Line
Count
Source
133
134k
    Status seek_to_position_in_page(size_t pos) override {
134
18.4E
        CHECK(_parsed) << "Must call init()";
135
134k
        if (_num_elems == 0) [[unlikely]] {
136
592
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
592
        }
141
142
134k
        DCHECK_LE(pos, _num_elems);
143
144
134k
        _cur_idx = cast_set<uint32_t>(pos);
145
134k
        return Status::OK();
146
134k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE10EE24seek_to_position_in_pageEm
Line
Count
Source
133
253k
    Status seek_to_position_in_page(size_t pos) override {
134
18.4E
        CHECK(_parsed) << "Must call init()";
135
253k
        if (_num_elems == 0) [[unlikely]] {
136
455
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
455
        }
141
142
253k
        DCHECK_LE(pos, _num_elems);
143
144
253k
        _cur_idx = cast_set<uint32_t>(pos);
145
253k
        return Status::OK();
146
253k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE11EE24seek_to_position_in_pageEm
Line
Count
Source
133
232k
    Status seek_to_position_in_page(size_t pos) override {
134
18.4E
        CHECK(_parsed) << "Must call init()";
135
232k
        if (_num_elems == 0) [[unlikely]] {
136
485
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
485
        }
141
142
232k
        DCHECK_LE(pos, _num_elems);
143
144
232k
        _cur_idx = cast_set<uint32_t>(pos);
145
232k
        return Status::OK();
146
232k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE24EE24seek_to_position_in_pageEm
Line
Count
Source
133
206
    Status seek_to_position_in_page(size_t pos) override {
134
206
        CHECK(_parsed) << "Must call init()";
135
206
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
206
        DCHECK_LE(pos, _num_elems);
143
144
206
        _cur_idx = cast_set<uint32_t>(pos);
145
206
        return Status::OK();
146
206
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE14EE24seek_to_position_in_pageEm
Line
Count
Source
133
90
    Status seek_to_position_in_page(size_t pos) override {
134
90
        CHECK(_parsed) << "Must call init()";
135
90
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
90
        DCHECK_LE(pos, _num_elems);
143
144
90
        _cur_idx = cast_set<uint32_t>(pos);
145
90
        return Status::OK();
146
90
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE28EE24seek_to_position_in_pageEm
Line
Count
Source
133
68
    Status seek_to_position_in_page(size_t pos) override {
134
68
        CHECK(_parsed) << "Must call init()";
135
68
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
68
        DCHECK_LE(pos, _num_elems);
143
144
68
        _cur_idx = cast_set<uint32_t>(pos);
145
68
        return Status::OK();
146
68
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE29EE24seek_to_position_in_pageEm
Line
Count
Source
133
74
    Status seek_to_position_in_page(size_t pos) override {
134
74
        CHECK(_parsed) << "Must call init()";
135
74
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
74
        DCHECK_LE(pos, _num_elems);
143
144
74
        _cur_idx = cast_set<uint32_t>(pos);
145
74
        return Status::OK();
146
74
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE41EE24seek_to_position_in_pageEm
Line
Count
Source
133
74
    Status seek_to_position_in_page(size_t pos) override {
134
74
        CHECK(_parsed) << "Must call init()";
135
74
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
74
        DCHECK_LE(pos, _num_elems);
143
144
74
        _cur_idx = cast_set<uint32_t>(pos);
145
74
        return Status::OK();
146
74
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE15EE24seek_to_position_in_pageEm
Line
Count
Source
133
74
    Status seek_to_position_in_page(size_t pos) override {
134
74
        CHECK(_parsed) << "Must call init()";
135
74
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
74
        DCHECK_LE(pos, _num_elems);
143
144
74
        _cur_idx = cast_set<uint32_t>(pos);
145
74
        return Status::OK();
146
74
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE40EE24seek_to_position_in_pageEm
Line
Count
Source
133
74
    Status seek_to_position_in_page(size_t pos) override {
134
74
        CHECK(_parsed) << "Must call init()";
135
74
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
74
        DCHECK_LE(pos, _num_elems);
143
144
74
        _cur_idx = cast_set<uint32_t>(pos);
145
74
        return Status::OK();
146
74
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE16EE24seek_to_position_in_pageEm
Line
Count
Source
133
78
    Status seek_to_position_in_page(size_t pos) override {
134
78
        CHECK(_parsed) << "Must call init()";
135
78
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
78
        DCHECK_LE(pos, _num_elems);
143
144
78
        _cur_idx = cast_set<uint32_t>(pos);
145
78
        return Status::OK();
146
78
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE31EE24seek_to_position_in_pageEm
Line
Count
Source
133
68
    Status seek_to_position_in_page(size_t pos) override {
134
68
        CHECK(_parsed) << "Must call init()";
135
68
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
68
        DCHECK_LE(pos, _num_elems);
143
144
68
        _cur_idx = cast_set<uint32_t>(pos);
145
68
        return Status::OK();
146
68
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE32EE24seek_to_position_in_pageEm
Line
Count
Source
133
74
    Status seek_to_position_in_page(size_t pos) override {
134
74
        CHECK(_parsed) << "Must call init()";
135
74
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
74
        DCHECK_LE(pos, _num_elems);
143
144
74
        _cur_idx = cast_set<uint32_t>(pos);
145
74
        return Status::OK();
146
74
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE33EE24seek_to_position_in_pageEm
Line
Count
Source
133
94
    Status seek_to_position_in_page(size_t pos) override {
134
94
        CHECK(_parsed) << "Must call init()";
135
94
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
94
        DCHECK_LE(pos, _num_elems);
143
144
94
        _cur_idx = cast_set<uint32_t>(pos);
145
94
        return Status::OK();
146
94
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE37EE24seek_to_position_in_pageEm
Line
Count
Source
133
138
    Status seek_to_position_in_page(size_t pos) override {
134
138
        CHECK(_parsed) << "Must call init()";
135
138
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
138
        DCHECK_LE(pos, _num_elems);
143
144
138
        _cur_idx = cast_set<uint32_t>(pos);
145
138
        return Status::OK();
146
138
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE38EE24seek_to_position_in_pageEm
Line
Count
Source
133
68
    Status seek_to_position_in_page(size_t pos) override {
134
68
        CHECK(_parsed) << "Must call init()";
135
68
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
68
        DCHECK_LE(pos, _num_elems);
143
144
68
        _cur_idx = cast_set<uint32_t>(pos);
145
68
        return Status::OK();
146
68
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE39EE24seek_to_position_in_pageEm
Line
Count
Source
133
94
    Status seek_to_position_in_page(size_t pos) override {
134
94
        CHECK(_parsed) << "Must call init()";
135
94
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
94
        DCHECK_LE(pos, _num_elems);
143
144
94
        _cur_idx = cast_set<uint32_t>(pos);
145
94
        return Status::OK();
146
94
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE42EE24seek_to_position_in_pageEm
Line
Count
Source
133
94
    Status seek_to_position_in_page(size_t pos) override {
134
94
        CHECK(_parsed) << "Must call init()";
135
94
        if (_num_elems == 0) [[unlikely]] {
136
0
            if (pos != 0) {
137
0
                return Status::Error<ErrorCode::INTERNAL_ERROR, false>(
138
0
                        "seek pos {} is larger than total elements  {}", pos, _num_elems);
139
0
            }
140
0
        }
141
142
94
        DCHECK_LE(pos, _num_elems);
143
144
94
        _cur_idx = cast_set<uint32_t>(pos);
145
94
        return Status::OK();
146
94
    }
147
148
42
    Status seek_at_or_after_value(const void* value, bool* exact_match) override {
149
42
        DCHECK(_parsed) << "Must call init() firstly";
150
151
42
        if (_num_elems == 0) {
152
0
            return Status::Error<ErrorCode::ENTRY_NOT_FOUND>("page is empty");
153
0
        }
154
155
42
        uint32_t left = 0;
156
42
        uint32_t right = _num_elems;
157
158
42
        const void* mid_value = nullptr;
159
160
        // find the first value >= target. after loop,
161
        // - left == index of first value >= target when found
162
        // - left == _num_elems when not found (all values < target)
163
266
        while (left < right) {
164
224
            uint32_t mid = left + (right - left) / 2;
165
224
            mid_value = &_data[PLAIN_PAGE_HEADER_SIZE + mid * SIZE_OF_TYPE];
166
224
            if (TypeTraits<Type>::cmp(mid_value, value) < 0) {
167
98
                left = mid + 1;
168
126
            } else {
169
126
                right = mid;
170
126
            }
171
224
        }
172
42
        if (left >= _num_elems) {
173
6
            return Status::Error<ErrorCode::ENTRY_NOT_FOUND>("all value small than the value");
174
6
        }
175
36
        const void* find_value = &_data[PLAIN_PAGE_HEADER_SIZE + left * SIZE_OF_TYPE];
176
36
        if (TypeTraits<Type>::cmp(find_value, value) == 0) {
177
30
            *exact_match = true;
178
30
        } else {
179
6
            *exact_match = false;
180
6
        }
181
182
36
        _cur_idx = left;
183
36
        return Status::OK();
184
42
    }
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE1EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE3EE22seek_at_or_after_valueEPKvPb
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE5EE22seek_at_or_after_valueEPKvPb
Line
Count
Source
148
10
    Status seek_at_or_after_value(const void* value, bool* exact_match) override {
149
10
        DCHECK(_parsed) << "Must call init() firstly";
150
151
10
        if (_num_elems == 0) {
152
0
            return Status::Error<ErrorCode::ENTRY_NOT_FOUND>("page is empty");
153
0
        }
154
155
10
        uint32_t left = 0;
156
10
        uint32_t right = _num_elems;
157
158
10
        const void* mid_value = nullptr;
159
160
        // find the first value >= target. after loop,
161
        // - left == index of first value >= target when found
162
        // - left == _num_elems when not found (all values < target)
163
108
        while (left < right) {
164
98
            uint32_t mid = left + (right - left) / 2;
165
98
            mid_value = &_data[PLAIN_PAGE_HEADER_SIZE + mid * SIZE_OF_TYPE];
166
98
            if (TypeTraits<Type>::cmp(mid_value, value) < 0) {
167
46
                left = mid + 1;
168
52
            } else {
169
52
                right = mid;
170
52
            }
171
98
        }
172
10
        if (left >= _num_elems) {
173
2
            return Status::Error<ErrorCode::ENTRY_NOT_FOUND>("all value small than the value");
174
2
        }
175
8
        const void* find_value = &_data[PLAIN_PAGE_HEADER_SIZE + left * SIZE_OF_TYPE];
176
8
        if (TypeTraits<Type>::cmp(find_value, value) == 0) {
177
6
            *exact_match = true;
178
6
        } else {
179
2
            *exact_match = false;
180
2
        }
181
182
8
        _cur_idx = left;
183
8
        return Status::OK();
184
10
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE7EE22seek_at_or_after_valueEPKvPb
Line
Count
Source
148
10
    Status seek_at_or_after_value(const void* value, bool* exact_match) override {
149
10
        DCHECK(_parsed) << "Must call init() firstly";
150
151
10
        if (_num_elems == 0) {
152
0
            return Status::Error<ErrorCode::ENTRY_NOT_FOUND>("page is empty");
153
0
        }
154
155
10
        uint32_t left = 0;
156
10
        uint32_t right = _num_elems;
157
158
10
        const void* mid_value = nullptr;
159
160
        // find the first value >= target. after loop,
161
        // - left == index of first value >= target when found
162
        // - left == _num_elems when not found (all values < target)
163
108
        while (left < right) {
164
98
            uint32_t mid = left + (right - left) / 2;
165
98
            mid_value = &_data[PLAIN_PAGE_HEADER_SIZE + mid * SIZE_OF_TYPE];
166
98
            if (TypeTraits<Type>::cmp(mid_value, value) < 0) {
167
46
                left = mid + 1;
168
52
            } else {
169
52
                right = mid;
170
52
            }
171
98
        }
172
10
        if (left >= _num_elems) {
173
2
            return Status::Error<ErrorCode::ENTRY_NOT_FOUND>("all value small than the value");
174
2
        }
175
8
        const void* find_value = &_data[PLAIN_PAGE_HEADER_SIZE + left * SIZE_OF_TYPE];
176
8
        if (TypeTraits<Type>::cmp(find_value, value) == 0) {
177
6
            *exact_match = true;
178
6
        } else {
179
2
            *exact_match = false;
180
2
        }
181
182
8
        _cur_idx = left;
183
8
        return Status::OK();
184
10
    }
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE9EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE10EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE11EE22seek_at_or_after_valueEPKvPb
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE24EE22seek_at_or_after_valueEPKvPb
Line
Count
Source
148
22
    Status seek_at_or_after_value(const void* value, bool* exact_match) override {
149
22
        DCHECK(_parsed) << "Must call init() firstly";
150
151
22
        if (_num_elems == 0) {
152
0
            return Status::Error<ErrorCode::ENTRY_NOT_FOUND>("page is empty");
153
0
        }
154
155
22
        uint32_t left = 0;
156
22
        uint32_t right = _num_elems;
157
158
22
        const void* mid_value = nullptr;
159
160
        // find the first value >= target. after loop,
161
        // - left == index of first value >= target when found
162
        // - left == _num_elems when not found (all values < target)
163
50
        while (left < right) {
164
28
            uint32_t mid = left + (right - left) / 2;
165
28
            mid_value = &_data[PLAIN_PAGE_HEADER_SIZE + mid * SIZE_OF_TYPE];
166
28
            if (TypeTraits<Type>::cmp(mid_value, value) < 0) {
167
6
                left = mid + 1;
168
22
            } else {
169
22
                right = mid;
170
22
            }
171
28
        }
172
22
        if (left >= _num_elems) {
173
2
            return Status::Error<ErrorCode::ENTRY_NOT_FOUND>("all value small than the value");
174
2
        }
175
20
        const void* find_value = &_data[PLAIN_PAGE_HEADER_SIZE + left * SIZE_OF_TYPE];
176
20
        if (TypeTraits<Type>::cmp(find_value, value) == 0) {
177
18
            *exact_match = true;
178
18
        } else {
179
2
            *exact_match = false;
180
2
        }
181
182
20
        _cur_idx = left;
183
20
        return Status::OK();
184
22
    }
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE14EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE28EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE29EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE41EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE15EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE40EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE16EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE31EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE32EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE33EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE37EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE38EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE39EE22seek_at_or_after_valueEPKvPb
Unexecuted instantiation: _ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE42EE22seek_at_or_after_valueEPKvPb
185
186
962k
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
962k
        DCHECK(_parsed);
188
963k
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
962k
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
962k
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
962k
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
962k
                                               *dst);
197
198
962k
        *n = max_fetch;
199
962k
        _cur_idx += max_fetch;
200
201
962k
        return Status::OK();
202
962k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE1EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
113k
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
113k
        DCHECK(_parsed);
188
113k
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
113k
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
113k
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
113k
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
113k
                                               *dst);
197
198
113k
        *n = max_fetch;
199
113k
        _cur_idx += max_fetch;
200
201
113k
        return Status::OK();
202
113k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE3EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
14.7k
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
14.7k
        DCHECK(_parsed);
188
14.7k
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
14.7k
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
14.7k
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
14.7k
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
14.7k
                                               *dst);
197
198
14.7k
        *n = max_fetch;
199
14.7k
        _cur_idx += max_fetch;
200
201
14.7k
        return Status::OK();
202
14.7k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE5EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
620k
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
620k
        DCHECK(_parsed);
188
622k
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
620k
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
620k
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
620k
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
620k
                                               *dst);
197
198
620k
        *n = max_fetch;
199
620k
        _cur_idx += max_fetch;
200
201
620k
        return Status::OK();
202
620k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE7EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
137k
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
137k
        DCHECK(_parsed);
188
137k
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
137k
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
137k
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
137k
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
137k
                                               *dst);
197
198
137k
        *n = max_fetch;
199
137k
        _cur_idx += max_fetch;
200
201
137k
        return Status::OK();
202
137k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE9EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
14.0k
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
14.0k
        DCHECK(_parsed);
188
14.0k
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
14.0k
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
14.0k
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
14.0k
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
14.0k
                                               *dst);
197
198
14.0k
        *n = max_fetch;
199
14.0k
        _cur_idx += max_fetch;
200
201
14.0k
        return Status::OK();
202
14.0k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE10EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
7.83k
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
7.83k
        DCHECK(_parsed);
188
7.83k
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
7.83k
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
7.83k
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
7.83k
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
7.83k
                                               *dst);
197
198
7.83k
        *n = max_fetch;
199
7.83k
        _cur_idx += max_fetch;
200
201
7.83k
        return Status::OK();
202
7.83k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE11EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
53.8k
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
53.8k
        DCHECK(_parsed);
188
53.8k
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
53.8k
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
53.8k
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
53.8k
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
53.8k
                                               *dst);
197
198
53.8k
        *n = max_fetch;
199
53.8k
        _cur_idx += max_fetch;
200
201
53.8k
        return Status::OK();
202
53.8k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE24EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
186
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
186
        DCHECK(_parsed);
188
186
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
186
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
186
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
186
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
186
                                               *dst);
197
198
186
        *n = max_fetch;
199
186
        _cur_idx += max_fetch;
200
201
186
        return Status::OK();
202
186
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE14EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
70
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
70
        DCHECK(_parsed);
188
70
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
70
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
70
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
70
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
70
                                               *dst);
197
198
70
        *n = max_fetch;
199
70
        _cur_idx += max_fetch;
200
201
70
        return Status::OK();
202
70
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE28EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
52
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
52
        DCHECK(_parsed);
188
52
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
52
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
52
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
52
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
52
                                               *dst);
197
198
52
        *n = max_fetch;
199
52
        _cur_idx += max_fetch;
200
201
52
        return Status::OK();
202
52
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE29EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
52
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
52
        DCHECK(_parsed);
188
52
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
52
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
52
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
52
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
52
                                               *dst);
197
198
52
        *n = max_fetch;
199
52
        _cur_idx += max_fetch;
200
201
52
        return Status::OK();
202
52
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE41EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
52
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
52
        DCHECK(_parsed);
188
52
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
52
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
52
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
52
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
52
                                               *dst);
197
198
52
        *n = max_fetch;
199
52
        _cur_idx += max_fetch;
200
201
52
        return Status::OK();
202
52
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE15EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
52
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
52
        DCHECK(_parsed);
188
52
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
52
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
52
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
52
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
52
                                               *dst);
197
198
52
        *n = max_fetch;
199
52
        _cur_idx += max_fetch;
200
201
52
        return Status::OK();
202
52
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE40EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
52
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
52
        DCHECK(_parsed);
188
52
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
52
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
52
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
52
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
52
                                               *dst);
197
198
52
        *n = max_fetch;
199
52
        _cur_idx += max_fetch;
200
201
52
        return Status::OK();
202
52
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE16EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
56
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
56
        DCHECK(_parsed);
188
56
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
56
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
56
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
56
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
56
                                               *dst);
197
198
56
        *n = max_fetch;
199
56
        _cur_idx += max_fetch;
200
201
56
        return Status::OK();
202
56
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE31EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
52
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
52
        DCHECK(_parsed);
188
52
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
52
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
52
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
52
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
52
                                               *dst);
197
198
52
        *n = max_fetch;
199
52
        _cur_idx += max_fetch;
200
201
52
        return Status::OK();
202
52
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE32EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
52
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
52
        DCHECK(_parsed);
188
52
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
52
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
52
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
52
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
52
                                               *dst);
197
198
52
        *n = max_fetch;
199
52
        _cur_idx += max_fetch;
200
201
52
        return Status::OK();
202
52
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE33EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
60
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
60
        DCHECK(_parsed);
188
60
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
60
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
60
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
60
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
60
                                               *dst);
197
198
60
        *n = max_fetch;
199
60
        _cur_idx += max_fetch;
200
201
60
        return Status::OK();
202
60
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE37EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
76
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
76
        DCHECK(_parsed);
188
76
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
76
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
76
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
76
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
76
                                               *dst);
197
198
76
        *n = max_fetch;
199
76
        _cur_idx += max_fetch;
200
201
76
        return Status::OK();
202
76
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE38EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
52
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
52
        DCHECK(_parsed);
188
52
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
52
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
52
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
52
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
52
                                               *dst);
197
198
52
        *n = max_fetch;
199
52
        _cur_idx += max_fetch;
200
201
52
        return Status::OK();
202
52
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE39EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
60
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
60
        DCHECK(_parsed);
188
60
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
60
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
60
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
60
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
60
                                               *dst);
197
198
60
        *n = max_fetch;
199
60
        _cur_idx += max_fetch;
200
201
60
        return Status::OK();
202
60
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE42EE10next_batchEPmRNS_3COWINS_7IColumnEE11mutable_ptrIS6_EE
Line
Count
Source
186
60
    Status next_batch(size_t* n, MutableColumnPtr& dst) override {
187
60
        DCHECK(_parsed);
188
60
        if (*n == 0 || _cur_idx >= _num_elems) [[unlikely]] {
189
0
            return Status::OK();
190
0
        }
191
192
60
        size_t max_fetch = std::min(*n, static_cast<size_t>(_num_elems - _cur_idx));
193
60
        const void* src_data = &_data[PLAIN_PAGE_HEADER_SIZE + _cur_idx * SIZE_OF_TYPE];
194
195
60
        StorageLayout<Type>::storage_to_column(static_cast<const uint8_t*>(src_data), max_fetch,
196
60
                                               *dst);
197
198
60
        *n = max_fetch;
199
60
        _cur_idx += max_fetch;
200
201
60
        return Status::OK();
202
60
    }
203
204
    Status read_by_rowids(const rowid_t* rowids, ordinal_t page_first_ordinal, size_t* n,
205
239k
                          MutableColumnPtr& dst) override {
206
239k
        DCHECK(_parsed);
207
239k
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
239k
        auto total = *n;
212
239k
        auto read_count = 0;
213
239k
        _buffer.resize(total);
214
69.0M
        for (size_t i = 0; i < total; ++i) {
215
68.8M
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
68.8M
            if (UNLIKELY(ord >= _num_elems)) {
217
4.71k
                break;
218
4.71k
            }
219
220
68.8M
            _buffer[read_count++] =
221
68.8M
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
68.8M
        }
223
224
239k
        if (LIKELY(read_count > 0)) {
225
239k
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
239k
                                                   read_count, *dst);
227
239k
        }
228
229
239k
        *n = read_count;
230
239k
        return Status::OK();
231
239k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE1EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
43.2k
                          MutableColumnPtr& dst) override {
206
43.2k
        DCHECK(_parsed);
207
43.2k
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
43.2k
        auto total = *n;
212
43.2k
        auto read_count = 0;
213
43.2k
        _buffer.resize(total);
214
1.37M
        for (size_t i = 0; i < total; ++i) {
215
1.33M
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
1.33M
            if (UNLIKELY(ord >= _num_elems)) {
217
0
                break;
218
0
            }
219
220
1.33M
            _buffer[read_count++] =
221
1.33M
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
1.33M
        }
223
224
43.3k
        if (LIKELY(read_count > 0)) {
225
43.3k
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
43.3k
                                                   read_count, *dst);
227
43.3k
        }
228
229
43.2k
        *n = read_count;
230
43.2k
        return Status::OK();
231
43.2k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE3EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
10.3k
                          MutableColumnPtr& dst) override {
206
10.3k
        DCHECK(_parsed);
207
10.3k
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
10.3k
        auto total = *n;
212
10.3k
        auto read_count = 0;
213
10.3k
        _buffer.resize(total);
214
648k
        for (size_t i = 0; i < total; ++i) {
215
638k
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
638k
            if (UNLIKELY(ord >= _num_elems)) {
217
13
                break;
218
13
            }
219
220
637k
            _buffer[read_count++] =
221
637k
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
637k
        }
223
224
10.3k
        if (LIKELY(read_count > 0)) {
225
10.3k
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
10.3k
                                                   read_count, *dst);
227
10.3k
        }
228
229
10.3k
        *n = read_count;
230
10.3k
        return Status::OK();
231
10.3k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE5EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
85.1k
                          MutableColumnPtr& dst) override {
206
85.1k
        DCHECK(_parsed);
207
85.1k
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
85.1k
        auto total = *n;
212
85.1k
        auto read_count = 0;
213
85.1k
        _buffer.resize(total);
214
34.0M
        for (size_t i = 0; i < total; ++i) {
215
33.9M
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
33.9M
            if (UNLIKELY(ord >= _num_elems)) {
217
1.41k
                break;
218
1.41k
            }
219
220
33.9M
            _buffer[read_count++] =
221
33.9M
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
33.9M
        }
223
224
85.1k
        if (LIKELY(read_count > 0)) {
225
85.1k
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
85.1k
                                                   read_count, *dst);
227
85.1k
        }
228
229
85.1k
        *n = read_count;
230
85.1k
        return Status::OK();
231
85.1k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE7EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
72.4k
                          MutableColumnPtr& dst) override {
206
72.4k
        DCHECK(_parsed);
207
72.4k
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
72.4k
        auto total = *n;
212
72.4k
        auto read_count = 0;
213
72.4k
        _buffer.resize(total);
214
26.8M
        for (size_t i = 0; i < total; ++i) {
215
26.7M
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
26.7M
            if (UNLIKELY(ord >= _num_elems)) {
217
2.14k
                break;
218
2.14k
            }
219
220
26.7M
            _buffer[read_count++] =
221
26.7M
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
26.7M
        }
223
224
72.4k
        if (LIKELY(read_count > 0)) {
225
72.4k
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
72.4k
                                                   read_count, *dst);
227
72.4k
        }
228
229
72.4k
        *n = read_count;
230
72.4k
        return Status::OK();
231
72.4k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE9EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
9.34k
                          MutableColumnPtr& dst) override {
206
9.34k
        DCHECK(_parsed);
207
9.34k
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
9.34k
        auto total = *n;
212
9.34k
        auto read_count = 0;
213
9.34k
        _buffer.resize(total);
214
1.81M
        for (size_t i = 0; i < total; ++i) {
215
1.80M
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
1.80M
            if (UNLIKELY(ord >= _num_elems)) {
217
534
                break;
218
534
            }
219
220
1.80M
            _buffer[read_count++] =
221
1.80M
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
1.80M
        }
223
224
9.34k
        if (LIKELY(read_count > 0)) {
225
9.34k
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
9.34k
                                                   read_count, *dst);
227
9.34k
        }
228
229
9.34k
        *n = read_count;
230
9.34k
        return Status::OK();
231
9.34k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE10EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
7.92k
                          MutableColumnPtr& dst) override {
206
7.92k
        DCHECK(_parsed);
207
7.92k
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
7.92k
        auto total = *n;
212
7.92k
        auto read_count = 0;
213
7.92k
        _buffer.resize(total);
214
1.20M
        for (size_t i = 0; i < total; ++i) {
215
1.19M
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
1.19M
            if (UNLIKELY(ord >= _num_elems)) {
217
31
                break;
218
31
            }
219
220
1.19M
            _buffer[read_count++] =
221
1.19M
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
1.19M
        }
223
224
7.92k
        if (LIKELY(read_count > 0)) {
225
7.92k
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
7.92k
                                                   read_count, *dst);
227
7.92k
        }
228
229
7.92k
        *n = read_count;
230
7.92k
        return Status::OK();
231
7.92k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE11EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
10.0k
                          MutableColumnPtr& dst) override {
206
10.0k
        DCHECK(_parsed);
207
10.0k
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
10.0k
        auto total = *n;
212
10.0k
        auto read_count = 0;
213
10.0k
        _buffer.resize(total);
214
3.15M
        for (size_t i = 0; i < total; ++i) {
215
3.14M
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
3.14M
            if (UNLIKELY(ord >= _num_elems)) {
217
525
                break;
218
525
            }
219
220
3.14M
            _buffer[read_count++] =
221
3.14M
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
3.14M
        }
223
224
10.0k
        if (LIKELY(read_count > 0)) {
225
10.0k
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
10.0k
                                                   read_count, *dst);
227
10.0k
        }
228
229
10.0k
        *n = read_count;
230
10.0k
        return Status::OK();
231
10.0k
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE24EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
186
                          MutableColumnPtr& dst) override {
206
186
        DCHECK(_parsed);
207
186
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
186
        auto total = *n;
212
186
        auto read_count = 0;
213
186
        _buffer.resize(total);
214
1.60k
        for (size_t i = 0; i < total; ++i) {
215
1.42k
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
1.42k
            if (UNLIKELY(ord >= _num_elems)) {
217
0
                break;
218
0
            }
219
220
1.42k
            _buffer[read_count++] =
221
1.42k
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
1.42k
        }
223
224
186
        if (LIKELY(read_count > 0)) {
225
186
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
186
                                                   read_count, *dst);
227
186
        }
228
229
186
        *n = read_count;
230
186
        return Status::OK();
231
186
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE14EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
72
                          MutableColumnPtr& dst) override {
206
72
        DCHECK(_parsed);
207
72
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
72
        auto total = *n;
212
72
        auto read_count = 0;
213
72
        _buffer.resize(total);
214
554
        for (size_t i = 0; i < total; ++i) {
215
482
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
482
            if (UNLIKELY(ord >= _num_elems)) {
217
0
                break;
218
0
            }
219
220
482
            _buffer[read_count++] =
221
482
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
482
        }
223
224
72
        if (LIKELY(read_count > 0)) {
225
72
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
72
                                                   read_count, *dst);
227
72
        }
228
229
72
        *n = read_count;
230
72
        return Status::OK();
231
72
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE28EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
54
                          MutableColumnPtr& dst) override {
206
54
        DCHECK(_parsed);
207
54
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
54
        auto total = *n;
212
54
        auto read_count = 0;
213
54
        _buffer.resize(total);
214
412
        for (size_t i = 0; i < total; ++i) {
215
358
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
358
            if (UNLIKELY(ord >= _num_elems)) {
217
0
                break;
218
0
            }
219
220
358
            _buffer[read_count++] =
221
358
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
358
        }
223
224
54
        if (LIKELY(read_count > 0)) {
225
54
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
54
                                                   read_count, *dst);
227
54
        }
228
229
54
        *n = read_count;
230
54
        return Status::OK();
231
54
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE29EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
54
                          MutableColumnPtr& dst) override {
206
54
        DCHECK(_parsed);
207
54
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
54
        auto total = *n;
212
54
        auto read_count = 0;
213
54
        _buffer.resize(total);
214
388
        for (size_t i = 0; i < total; ++i) {
215
336
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
336
            if (UNLIKELY(ord >= _num_elems)) {
217
2
                break;
218
2
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
54
        if (LIKELY(read_count > 0)) {
225
54
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
54
                                                   read_count, *dst);
227
54
        }
228
229
54
        *n = read_count;
230
54
        return Status::OK();
231
54
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE41EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
54
                          MutableColumnPtr& dst) override {
206
54
        DCHECK(_parsed);
207
54
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
54
        auto total = *n;
212
54
        auto read_count = 0;
213
54
        _buffer.resize(total);
214
388
        for (size_t i = 0; i < total; ++i) {
215
336
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
336
            if (UNLIKELY(ord >= _num_elems)) {
217
2
                break;
218
2
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
54
        if (LIKELY(read_count > 0)) {
225
54
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
54
                                                   read_count, *dst);
227
54
        }
228
229
54
        *n = read_count;
230
54
        return Status::OK();
231
54
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE15EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
54
                          MutableColumnPtr& dst) override {
206
54
        DCHECK(_parsed);
207
54
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
54
        auto total = *n;
212
54
        auto read_count = 0;
213
54
        _buffer.resize(total);
214
388
        for (size_t i = 0; i < total; ++i) {
215
336
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
336
            if (UNLIKELY(ord >= _num_elems)) {
217
2
                break;
218
2
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
54
        if (LIKELY(read_count > 0)) {
225
54
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
54
                                                   read_count, *dst);
227
54
        }
228
229
54
        *n = read_count;
230
54
        return Status::OK();
231
54
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE40EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
54
                          MutableColumnPtr& dst) override {
206
54
        DCHECK(_parsed);
207
54
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
54
        auto total = *n;
212
54
        auto read_count = 0;
213
54
        _buffer.resize(total);
214
388
        for (size_t i = 0; i < total; ++i) {
215
336
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
336
            if (UNLIKELY(ord >= _num_elems)) {
217
2
                break;
218
2
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
54
        if (LIKELY(read_count > 0)) {
225
54
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
54
                                                   read_count, *dst);
227
54
        }
228
229
54
        *n = read_count;
230
54
        return Status::OK();
231
54
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE16EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
56
                          MutableColumnPtr& dst) override {
206
56
        DCHECK(_parsed);
207
56
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
56
        auto total = *n;
212
56
        auto read_count = 0;
213
56
        _buffer.resize(total);
214
390
        for (size_t i = 0; i < total; ++i) {
215
338
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
338
            if (UNLIKELY(ord >= _num_elems)) {
217
4
                break;
218
4
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
56
        if (LIKELY(read_count > 0)) {
225
56
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
56
                                                   read_count, *dst);
227
56
        }
228
229
56
        *n = read_count;
230
56
        return Status::OK();
231
56
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE31EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
54
                          MutableColumnPtr& dst) override {
206
54
        DCHECK(_parsed);
207
54
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
54
        auto total = *n;
212
54
        auto read_count = 0;
213
54
        _buffer.resize(total);
214
412
        for (size_t i = 0; i < total; ++i) {
215
358
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
358
            if (UNLIKELY(ord >= _num_elems)) {
217
0
                break;
218
0
            }
219
220
358
            _buffer[read_count++] =
221
358
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
358
        }
223
224
54
        if (LIKELY(read_count > 0)) {
225
54
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
54
                                                   read_count, *dst);
227
54
        }
228
229
54
        *n = read_count;
230
54
        return Status::OK();
231
54
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE32EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
54
                          MutableColumnPtr& dst) override {
206
54
        DCHECK(_parsed);
207
54
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
54
        auto total = *n;
212
54
        auto read_count = 0;
213
54
        _buffer.resize(total);
214
388
        for (size_t i = 0; i < total; ++i) {
215
336
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
336
            if (UNLIKELY(ord >= _num_elems)) {
217
2
                break;
218
2
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
54
        if (LIKELY(read_count > 0)) {
225
54
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
54
                                                   read_count, *dst);
227
54
        }
228
229
54
        *n = read_count;
230
54
        return Status::OK();
231
54
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE33EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
62
                          MutableColumnPtr& dst) override {
206
62
        DCHECK(_parsed);
207
62
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
62
        auto total = *n;
212
62
        auto read_count = 0;
213
62
        _buffer.resize(total);
214
396
        for (size_t i = 0; i < total; ++i) {
215
340
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
340
            if (UNLIKELY(ord >= _num_elems)) {
217
6
                break;
218
6
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
62
        if (LIKELY(read_count > 0)) {
225
62
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
62
                                                   read_count, *dst);
227
62
        }
228
229
62
        *n = read_count;
230
62
        return Status::OK();
231
62
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE37EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
76
                          MutableColumnPtr& dst) override {
206
76
        DCHECK(_parsed);
207
76
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
76
        auto total = *n;
212
76
        auto read_count = 0;
213
76
        _buffer.resize(total);
214
410
        for (size_t i = 0; i < total; ++i) {
215
346
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
346
            if (UNLIKELY(ord >= _num_elems)) {
217
12
                break;
218
12
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
76
        if (LIKELY(read_count > 0)) {
225
76
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
76
                                                   read_count, *dst);
227
76
        }
228
229
76
        *n = read_count;
230
76
        return Status::OK();
231
76
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE38EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
54
                          MutableColumnPtr& dst) override {
206
54
        DCHECK(_parsed);
207
54
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
54
        auto total = *n;
212
54
        auto read_count = 0;
213
54
        _buffer.resize(total);
214
412
        for (size_t i = 0; i < total; ++i) {
215
358
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
358
            if (UNLIKELY(ord >= _num_elems)) {
217
0
                break;
218
0
            }
219
220
358
            _buffer[read_count++] =
221
358
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
358
        }
223
224
54
        if (LIKELY(read_count > 0)) {
225
54
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
54
                                                   read_count, *dst);
227
54
        }
228
229
54
        *n = read_count;
230
54
        return Status::OK();
231
54
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE39EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
62
                          MutableColumnPtr& dst) override {
206
62
        DCHECK(_parsed);
207
62
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
62
        auto total = *n;
212
62
        auto read_count = 0;
213
62
        _buffer.resize(total);
214
396
        for (size_t i = 0; i < total; ++i) {
215
340
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
340
            if (UNLIKELY(ord >= _num_elems)) {
217
6
                break;
218
6
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
62
        if (LIKELY(read_count > 0)) {
225
62
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
62
                                                   read_count, *dst);
227
62
        }
228
229
62
        *n = read_count;
230
62
        return Status::OK();
231
62
    }
_ZN5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE42EE14read_by_rowidsEPKjmPmRNS_3COWINS_7IColumnEE11mutable_ptrIS8_EE
Line
Count
Source
205
62
                          MutableColumnPtr& dst) override {
206
62
        DCHECK(_parsed);
207
62
        if (*n == 0) [[unlikely]] {
208
0
            return Status::OK();
209
0
        }
210
211
62
        auto total = *n;
212
62
        auto read_count = 0;
213
62
        _buffer.resize(total);
214
396
        for (size_t i = 0; i < total; ++i) {
215
340
            ordinal_t ord = rowids[i] - page_first_ordinal;
216
340
            if (UNLIKELY(ord >= _num_elems)) {
217
6
                break;
218
6
            }
219
220
334
            _buffer[read_count++] =
221
334
                    unaligned_load<CppType>(&_data[PLAIN_PAGE_HEADER_SIZE + ord * SIZE_OF_TYPE]);
222
334
        }
223
224
62
        if (LIKELY(read_count > 0)) {
225
62
            StorageLayout<Type>::storage_to_column(reinterpret_cast<const uint8_t*>(_buffer.data()),
226
62
                                                   read_count, *dst);
227
62
        }
228
229
62
        *n = read_count;
230
62
        return Status::OK();
231
62
    }
232
233
0
    size_t count() const override {
234
0
        DCHECK(_parsed);
235
0
        return _num_elems;
236
0
    }
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE1EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE3EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE5EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE7EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE9EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE10EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE11EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE24EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE14EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE28EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE29EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE41EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE15EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE40EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE16EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE31EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE32EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE33EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE37EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE38EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE39EE5countEv
Unexecuted instantiation: _ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE42EE5countEv
237
238
1.37M
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
1.37M
        return _cur_idx;
241
1.37M
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE1EE13current_indexEv
Line
Count
Source
238
232k
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
232k
        return _cur_idx;
241
232k
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE3EE13current_indexEv
Line
Count
Source
238
230k
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
230k
        return _cur_idx;
241
230k
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE5EE13current_indexEv
Line
Count
Source
238
276k
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
276k
        return _cur_idx;
241
276k
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE7EE13current_indexEv
Line
Count
Source
238
81.4k
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
81.4k
        return _cur_idx;
241
81.4k
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE9EE13current_indexEv
Line
Count
Source
238
109k
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
109k
        return _cur_idx;
241
109k
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE10EE13current_indexEv
Line
Count
Source
238
237k
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
237k
        return _cur_idx;
241
237k
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE11EE13current_indexEv
Line
Count
Source
238
208k
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
208k
        return _cur_idx;
241
208k
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE24EE13current_indexEv
Line
Count
Source
238
394
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
394
        return _cur_idx;
241
394
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE14EE13current_indexEv
Line
Count
Source
238
136
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
136
        return _cur_idx;
241
136
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE28EE13current_indexEv
Line
Count
Source
238
102
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
102
        return _cur_idx;
241
102
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE29EE13current_indexEv
Line
Count
Source
238
104
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
104
        return _cur_idx;
241
104
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE41EE13current_indexEv
Line
Count
Source
238
104
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
104
        return _cur_idx;
241
104
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE15EE13current_indexEv
Line
Count
Source
238
104
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
104
        return _cur_idx;
241
104
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE40EE13current_indexEv
Line
Count
Source
238
104
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
104
        return _cur_idx;
241
104
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE16EE13current_indexEv
Line
Count
Source
238
100
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
100
        return _cur_idx;
241
100
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE31EE13current_indexEv
Line
Count
Source
238
102
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
102
        return _cur_idx;
241
102
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE32EE13current_indexEv
Line
Count
Source
238
104
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
104
        return _cur_idx;
241
104
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE33EE13current_indexEv
Line
Count
Source
238
106
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
106
        return _cur_idx;
241
106
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE37EE13current_indexEv
Line
Count
Source
238
116
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
116
        return _cur_idx;
241
116
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE38EE13current_indexEv
Line
Count
Source
238
102
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
102
        return _cur_idx;
241
102
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE39EE13current_indexEv
Line
Count
Source
238
106
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
106
        return _cur_idx;
241
106
    }
_ZNK5doris10segment_v216PlainPageDecoderILNS_9FieldTypeE42EE13current_indexEv
Line
Count
Source
238
106
    size_t current_index() const override {
239
        DCHECK(_parsed);
240
106
        return _cur_idx;
241
106
    }
242
243
private:
244
    Slice _data;
245
    PageDecoderOptions _options;
246
    bool _parsed;
247
    uint32_t _num_elems;
248
    uint32_t _cur_idx;
249
    typedef typename TypeTraits<Type>::CppType CppType;
250
    static constexpr size_t SIZE_OF_TYPE = TypeTraits<Type>::size;
251
252
    std::vector<std::conditional_t<std::is_same_v<CppType, bool>, uint8_t, CppType>> _buffer;
253
};
254
255
} // namespace segment_v2
256
} // namespace doris