be/src/storage/segment/page_builder.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 <gen_cpp/segment_v2.pb.h> |
21 | | #include <stdint.h> |
22 | | |
23 | | #include <memory> |
24 | | #include <vector> |
25 | | |
26 | | #include "common/status.h" |
27 | | #include "storage/segment/common.h" |
28 | | #include "util/slice.h" |
29 | | |
30 | | namespace doris { |
31 | | namespace segment_v2 { |
32 | | |
33 | | // PageBuilder is used to build page |
34 | | // Page is a data management unit, including: |
35 | | // 1. Data Page: store encoded and compressed data |
36 | | // 2. BloomFilter Page: store bloom filter of data |
37 | | // 3. Ordinal Index Page: store ordinal index of data |
38 | | // 4. Short Key Index Page: store short key index of data |
39 | | // 5. Bitmap Index Page: store bitmap index of data |
40 | | class PageBuilder { |
41 | | public: |
42 | 43.4k | PageBuilder() = default; |
43 | | PageBuilder(const PageBuilder&) = delete; |
44 | | PageBuilder& operator=(const PageBuilder&) = delete; |
45 | | |
46 | 43.4k | virtual ~PageBuilder() = default; |
47 | | |
48 | | // Init the internal state of the page builder. |
49 | | virtual Status init() = 0; |
50 | | |
51 | | // Used by column writer to determine whether the current page is full. |
52 | | // Column writer depends on the result to decide whether to flush current page. |
53 | | virtual bool is_page_full() = 0; |
54 | | |
55 | | // Add a sequence of values to the page. |
56 | | // The number of values actually added will be returned through count, which may be less |
57 | | // than requested if the page is full. |
58 | | |
59 | | // check page if full before truly add, return ok when page is full so that column write |
60 | | // will switch to next page |
61 | | // vals size should be decided according to the page build type |
62 | | // TODO make sure vals is naturally-aligned to its type so that impls can use aligned load |
63 | | // instead of memcpy to copy values. |
64 | | virtual Status add(const uint8_t* vals, size_t* count) = 0; |
65 | | |
66 | | // Finish building the current page, return the encoded data. |
67 | | // This api should be followed by reset() before reusing the builder |
68 | | // It will return error status when memory allocated failed during finish |
69 | | virtual Status finish(OwnedSlice* owned_slice) = 0; |
70 | | |
71 | | // Get the dictionary page for dictionary encoding mode column. |
72 | 0 | virtual Status get_dictionary_page(OwnedSlice* dictionary_page) { |
73 | 0 | return Status::NotSupported("get_dictionary_page not implemented"); |
74 | 0 | } |
75 | | |
76 | 0 | virtual Status get_dictionary_page_encoding(EncodingTypePB* encoding) const { |
77 | 0 | return Status::NotSupported("get_dictionary_page_encoding not implemented"); |
78 | 0 | } |
79 | | |
80 | 0 | virtual Status get_dict_word(uint32_t value_code, Slice* word) { |
81 | 0 | return Status::NotSupported("get_dict_word not implemented"); |
82 | 0 | } |
83 | | |
84 | | // Reset the internal state of the page builder. |
85 | | // |
86 | | // Any data previously returned by finish may be invalidated by this call. |
87 | | virtual Status reset() = 0; |
88 | | |
89 | | // Return the number of entries that have been added to the page. |
90 | | virtual size_t count() const = 0; |
91 | | |
92 | | // Return the total bytes of pageBuilder that have been added to the page. |
93 | | virtual uint64_t size() const = 0; |
94 | | |
95 | | // Return the uncompressed data size in bytes (raw data added via add() method). |
96 | | // This is used to track the original data size before compression. |
97 | | virtual uint64_t get_raw_data_size() const = 0; |
98 | | |
99 | | // Return the first value in this page. |
100 | | // This method could only be called between finish() and reset(). |
101 | | // Status::Error<ENTRY_NOT_FOUND> if no values have been added. |
102 | | virtual Status get_first_value(void* value) const = 0; |
103 | | |
104 | | // Return the last value in this page. |
105 | | // This method could only be called between finish() and reset(). |
106 | | // Status::Error<ENTRY_NOT_FOUND> if no values have been added. |
107 | | virtual Status get_last_value(void* value) const = 0; |
108 | | }; |
109 | | |
110 | | template <typename Derived> |
111 | | class PageBuilderHelper : public PageBuilder { |
112 | | public: |
113 | | template <typename... Args> |
114 | 43.4k | static Status create(PageBuilder** builder, Args&&... args) { |
115 | 43.4k | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); |
116 | 43.4k | RETURN_IF_ERROR(builder_uniq_ptr->init()); |
117 | 43.4k | *builder = builder_uniq_ptr.release(); |
118 | 43.4k | return Status::OK(); |
119 | 43.4k | } _ZN5doris10segment_v217PageBuilderHelperINS0_21BinaryDictPageBuilderEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 3.84k | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 3.84k | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 3.84k | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 3.84k | *builder = builder_uniq_ptr.release(); | 118 | 3.84k | return Status::OK(); | 119 | 3.84k | } |
_ZN5doris10segment_v217PageBuilderHelperINS0_21BinaryDictPageBuilderEE6createIJRNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 9 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 9 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 9 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 9 | *builder = builder_uniq_ptr.release(); | 118 | 9 | return Status::OK(); | 119 | 9 | } |
_ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE17EEEE6createIJRNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 12 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 12 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 12 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 12 | *builder = builder_uniq_ptr.release(); | 118 | 12 | return Status::OK(); | 119 | 12 | } |
_ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE26EEEE6createIJRNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 4 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 4 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 4 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 4 | *builder = builder_uniq_ptr.release(); | 118 | 4 | return Status::OK(); | 119 | 4 | } |
_ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE13EEEE6createIJRNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 1 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 1 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 1 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 1 | *builder = builder_uniq_ptr.release(); | 118 | 1 | return Status::OK(); | 119 | 1 | } |
_ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE5EEEE6createIJRNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 3.85k | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 3.85k | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 3.85k | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 3.85k | *builder = builder_uniq_ptr.release(); | 118 | 3.85k | return Status::OK(); | 119 | 3.85k | } |
_ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE1EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 623 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 623 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 623 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 623 | *builder = builder_uniq_ptr.release(); | 118 | 623 | return Status::OK(); | 119 | 623 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE1EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE1EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE3EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 13 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 13 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 13 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 13 | *builder = builder_uniq_ptr.release(); | 118 | 13 | return Status::OK(); | 119 | 13 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE3EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE3EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE5EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 12.5k | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 12.5k | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 12.5k | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 12.5k | *builder = builder_uniq_ptr.release(); | 118 | 12.5k | return Status::OK(); | 119 | 12.5k | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE5EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE5EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE7EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 643 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 643 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 643 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 643 | *builder = builder_uniq_ptr.release(); | 118 | 643 | return Status::OK(); | 119 | 643 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE7EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE7EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE8EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 341 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 341 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 341 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 341 | *builder = builder_uniq_ptr.release(); | 118 | 341 | return Status::OK(); | 119 | 341 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE6EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE9EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 2 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 2 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 2 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 2 | *builder = builder_uniq_ptr.release(); | 118 | 2 | return Status::OK(); | 119 | 2 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE9EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE9EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE10EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 2 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 2 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 2 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 2 | *builder = builder_uniq_ptr.release(); | 118 | 2 | return Status::OK(); | 119 | 2 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE10EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE11EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE11EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_22BinaryPlainPageBuilderILNS_9FieldTypeE13EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE13EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_23BinaryPrefixPageBuilderEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 206 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 206 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 206 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 206 | *builder = builder_uniq_ptr.release(); | 118 | 206 | return Status::OK(); | 119 | 206 | } |
_ZN5doris10segment_v217PageBuilderHelperINS0_22BinaryPlainPageBuilderILNS_9FieldTypeE17EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 5.53k | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 5.53k | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 5.53k | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 5.53k | *builder = builder_uniq_ptr.release(); | 118 | 5.53k | return Status::OK(); | 119 | 5.53k | } |
_ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE17EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 8 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 8 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 8 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 8 | *builder = builder_uniq_ptr.release(); | 118 | 8 | return Status::OK(); | 119 | 8 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_22BinaryPlainPageBuilderILNS_9FieldTypeE26EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE26EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_22BinaryPlainPageBuilderILNS_9FieldTypeE34EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE34EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_22BinaryPlainPageBuilderILNS_9FieldTypeE35EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE35EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_14RlePageBuilderILNS_9FieldTypeE24EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE24EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE24EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE14EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 4 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 4 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 4 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 4 | *builder = builder_uniq_ptr.release(); | 118 | 4 | return Status::OK(); | 119 | 4 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE14EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE14EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE28EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 7 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 7 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 7 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 7 | *builder = builder_uniq_ptr.release(); | 118 | 7 | return Status::OK(); | 119 | 7 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE28EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE28EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE29EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE29EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE29EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE15EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 11 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 11 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 11 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 11 | *builder = builder_uniq_ptr.release(); | 118 | 11 | return Status::OK(); | 119 | 11 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE15EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE15EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE40EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE40EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_27FrameOfReferencePageBuilderILNS_9FieldTypeE40EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE16EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 2 | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 2 | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 2 | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 2 | *builder = builder_uniq_ptr.release(); | 118 | 2 | return Status::OK(); | 119 | 2 | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE16EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE31EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE31EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE32EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE32EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE33EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE33EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE37EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE37EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE38EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE38EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_21BitshufflePageBuilderILNS_9FieldTypeE39EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_16PlainPageBuilderILNS_9FieldTypeE39EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_22BinaryPlainPageBuilderILNS_9FieldTypeE23EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE23EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ _ZN5doris10segment_v217PageBuilderHelperINS0_22BinaryPlainPageBuilderILNS_9FieldTypeE25EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Line | Count | Source | 114 | 15.7k | static Status create(PageBuilder** builder, Args&&... args) { | 115 | 15.7k | std::unique_ptr<PageBuilder> builder_uniq_ptr(new Derived(std::forward<Args>(args)...)); | 116 | 15.7k | RETURN_IF_ERROR(builder_uniq_ptr->init()); | 117 | 15.7k | *builder = builder_uniq_ptr.release(); | 118 | 15.7k | return Status::OK(); | 119 | 15.7k | } |
Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE25EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_22BinaryPlainPageBuilderILNS_9FieldTypeE27EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE27EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_22BinaryPlainPageBuilderILNS_9FieldTypeE36EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ Unexecuted instantiation: _ZN5doris10segment_v217PageBuilderHelperINS0_24BinaryPlainPageV2BuilderILNS_9FieldTypeE36EEEE6createIJRKNS0_18PageBuilderOptionsEEEENS_6StatusEPPNS0_11PageBuilderEDpOT_ |
120 | | }; |
121 | | |
122 | | } // namespace segment_v2 |
123 | | } // namespace doris |