airborne12 opened a new pull request, #68643:
URL: https://github.com/apache/doris/pull/68643
### What problem does this PR solve?
Issue Number: N/A
Related PR: #67538, #68584, #68636
Problem Summary:
Backport the SNII gram inverted index from #67538 as a separate change on
`branch-4.2`. The gram index prunes candidates for `LIKE` and `REGEXP`; the
original expression still rechecks every candidate, so query results remain
exact. Unsupported patterns fall back to normal evaluation.
This commit is based on the merged SNII storage format backport (#68584) and
the merged shadow-index column mapping fix (#68636). Its parent is the current
`branch-4.2` head `b2ff463a8685d4964067f49b48e1b8d2199e216a`. The backport
commit is `862608eb1d02d001d3b94fc10c4a0f29619d7a86`; its source is
`709d859d7262154313c505e260205873047e4be0` from #67538.
The backport adapts FE policy validation and index-property defaults to 4.2
APIs, retains the branch's dynamic REGEXP scalar behavior, and adjusts BE tests
for the 4.2 `IndexExecContext` constructor. After rebasing over #68636,
`range-diff` shows only a simplified comment in `gram_family.cpp` relative to
the previously validated backport commit.
Compatibility: the backport's `snii.proto` has exactly the same non-comment
tokens as the source commit. Gram scheme/high-DF fields retain master tags 6/7,
`dropped_postings` retains tag 8, and gram containers use required feature 2.
Existing SNII segments remain readable after upgrade; older BEs skip new
containers. As in #67538, writing an index created with this feature after
downgrading to an older BE is unsupported.
### Release note
SNII inverted indexes built with an `ngram` tokenizer in `mode=sparse` or
`mode=dense` can accelerate `LIKE` and `REGEXP` predicates. Results are
unchanged because the original predicate rechecks candidates. Downgrading after
creating such an index is unsupported.
### Check List (For Author)
- Test
- [x] Regression test: `inverted_index_p0/gram/` passed 8/8 suites on an
isolated cloud-mode FE/BE/MS cluster after the rebase. The previously failing
`test_gram_schema_change` now passes; after `VARCHAR` to `STRING`, its profile
reports `RowsGramIndexFiltered=4796`.
- [x] Unit Test: fresh 4.2 FE build passed; five focused FE test classes
passed 73/73, including `IndexTest` from #68636. The unchanged BE
implementation was built with ASAN and its new gram tests passed 200/202 (two
measurement-only corpus tests intentionally skipped); the broad SNII suite
passed 1382/1382 before this comment-only rebase. No sanitizer reports were
observed. New gram tests are absent from the target baseline, so there is no
same-filter target comparison.
- [ ] Manual test
- [ ] No need to test or manual test.
- Behavior changed:
- [ ] No.
- [x] Yes. Adds optional gram acceleration for `LIKE`/`REGEXP` with
residual expression evaluation and the upstream downgrade boundary.
- Does this need documentation?
- [ ] No.
- [x] Yes. The user-facing tokenizer mode follows #67538; a
documentation PR is not included in this backport.
Full PR-diff checks against `branch-4.2`: clang-format 16 PASS, full FE
reactor Checkstyle PASS, English description check PASS (36 individually
reviewed Unicode/input-data literals). The commit includes no backport audit
document, array regression data, or deployment/customer-specific test directory.
### Source hunk audit
The #67538 source diff has 126 files and 287 hunks. The table below has 257
rows because 37 byte-identical files are summarized by file; 151 source hunks
were ported, 67 were adapted, and two source hunks are inapplicable with
evidence in the table. The only change after rebase was shortening one
design-marker comment; executable gram code is unchanged.
<details>
<summary>Full source hunk audit (TSV)</summary>
```tsv
path hunk status evidence
be/benchmark/benchmark_gram_extractor.hpp 1 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/benchmark/benchmark_main.cpp @@ -33,0 +34 @@ Ported Source added
lines appear in order in the target file.
be/benchmark/benchmark_main.cpp @@ -95 +96 @@ static void
Example1(benchmark::State& state) { Ported Source added lines appear in
order in the target file.
be/src/common/config.cpp "@@ -1348,0 +1349,52 @@
DEFINE_String(inverted_index_query_cache_limit, ""10%"");" Ported Source
added lines appear in order in the target file.
be/src/common/config.h @@ -1393,0 +1394,54 @@
DECLARE_String(inverted_index_query_cache_limit); Adapted Adapted to
branch-4.2 BE interfaces while preserving source behavior.
be/src/core/types.h @@ -576 +575,0 @@ struct NativeType<Decimal256> {
N-A 4.2 retains the matching NOLINTEND beside compile_check_end.h.
be/src/exec/operator/olap_scan_operator.cpp @@ -302,0 +303,6 @@ Status
OlapScanLocalState::_init_profile() { Ported Source added lines appear
in order in the target file.
be/src/exec/operator/olap_scan_operator.h @@ -274,0 +275,4 @@ private:
Ported Source added lines appear in order in the target file.
be/src/exec/scan/olap_scanner.cpp @@ -879,0 +880,3 @@ void
OlapScanner::_collect_profile_before_close() { Ported Source added lines
appear in order in the target file.
be/src/exprs/function/function.h @@ -218,0 +219,9 @@ public: Ported
Source added lines appear in order in the target file.
be/src/exprs/function/function.h @@ -509,0 +519,4 @@ public: Ported
Source added lines appear in order in the target file.
be/src/exprs/function/like.cpp @@ -27,0 +28,2 @@ Ported Source
added lines appear in order in the target file.
be/src/exprs/function/like.cpp @@ -33,0 +36 @@ Ported Source added
lines appear in order in the target file.
be/src/exprs/function/like.cpp @@ -35,0 +39,4 @@ Ported Source
added lines appear in order in the target file.
be/src/exprs/function/like.cpp @@ -1103,0 +1111,62 @@ Status
FunctionRegexpLike::open(FunctionContext* context, Adapted Adapted to
branch-4.2 BE interfaces while preserving source behavior.
be/src/exprs/function/like.h @@ -388,0 +389,12 @@ protected: Ported Source
added lines appear in order in the target file.
be/src/exprs/function/like.h @@ -411,0 +424,14 @@ public: Ported Source
added lines appear in order in the target file.
be/src/exprs/function/like.h @@ -434,0 +461,14 @@ public: Ported Source
added lines appear in order in the target file.
be/src/exprs/function/match.cpp @@ -65 +65,18 @@ Status
FunctionMatchBase::evaluate_inverted_index( Ported Source added lines
appear in order in the target file.
be/src/exprs/function/variant_inverted_index_search.cpp 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/exprs/vexpr.cpp @@ -921,0 +922,15 @@ Status
VExpr::_evaluate_inverted_index(VExprContext* context, const FunctionBase
Ported Source added lines appear in order in the target file.
be/src/exprs/vexpr.cpp @@ -1039,3 +1054,13 @@ Status
VExpr::_evaluate_inverted_index(VExprContext* context, const FunctionBase
Ported Source added lines appear in order in the target file.
be/src/exprs/vexpr_context.h @@ -126,0 +127,16 @@ public: Ported Source
added lines appear in order in the target file.
be/src/exprs/vexpr_context.h @@ -176,0 +193,14 @@ private: Ported Source
added lines appear in order in the target file.
be/src/exprs/vexpr_context.h @@ -248,0 +279,12 @@ public: Ported Source
added lines appear in order in the target file.
be/src/exprs/vexpr_context.h @@ -353,0 +396,4 @@ private: Ported Source
added lines appear in order in the target file.
be/src/runtime/index_policy/index_policy_mgr.h 2 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/src/storage/index/index_file_writer.cpp @@ -39,0 +40 @@ Ported Source
added lines appear in order in the target file.
be/src/storage/index/index_file_writer.cpp @@ -46,0 +48,79 @@ namespace
doris::segment_v2 { Adapted Adapted to branch-4.2 BE interfaces while
preserving source behavior.
be/src/storage/index/index_file_writer.cpp @@ -72,0 +153 @@ void
snii_resolve_index_write_params(bool is_direct_load, bool has_norms,
Ported Source added lines appear in order in the target file.
be/src/storage/index/index_file_writer.cpp @@ -270,0 +352 @@ Status
IndexFileWriter::add_snii_index(const TabletIndex* index_meta, uint32_t d
Ported Source added lines appear in order in the target file.
be/src/storage/index/index_file_writer.h @@ -45,0 +46 @@ Ported Source
added lines appear in order in the target file.
be/src/storage/index/index_file_writer.h @@ -112,0 +114,2 @@ public:
Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/analyzer/analyzer_provider.cpp 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/inverted/analyzer/analyzer_provider.h 3 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/inverted/analyzer/custom_analyzer.cpp @@ -26,0 +27 @@
Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/analyzer/custom_analyzer.cpp @@ -106 +107,25
@@ CustomAnalyzerProvider::CustomAnalyzerProvider( Adapted Adapted to
branch-4.2 BE interfaces while preserving source behavior.
be/src/storage/index/inverted/analyzer/custom_analyzer.h @@ -26,0 +27 @@
Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/analyzer/custom_analyzer.h @@ -86,0 +88,7
@@ public: Adapted Adapted to branch-4.2 BE interfaces while preserving
source behavior.
be/src/storage/index/inverted/analyzer/custom_analyzer.h @@ -90,0 +99 @@
private: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/analyzer/custom_analyzer.h @@ -93 +102 @@
private: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/gram/gram_density.cpp 1 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/src/storage/index/inverted/gram/gram_density.h 1 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/src/storage/index/inverted/gram/gram_extractor.cpp @@ -0,0 +1,275
@@ Adapted Preserved source assertions/logic; shortened comments or
adapted target APIs.
be/src/storage/index/inverted/gram/gram_extractor.h @@ -0,0 +1,106 @@
Adapted Preserved source assertions/logic; shortened comments or adapted target
APIs.
be/src/storage/index/inverted/gram/gram_family.cpp @@ -0,0 +1,53 @@
Adapted Executable code matches source; shortened the runtime dependency
comment and removed its design marker.
be/src/storage/index/inverted/gram/gram_family.h @@ -0,0 +1,59 @@
Adapted Preserved source assertions/logic; shortened comments or adapted target
APIs.
be/src/storage/index/inverted/gram/gram_query.cpp 1 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/src/storage/index/inverted/gram/gram_query.h 1 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/src/storage/index/inverted/gram/gram_scheme.cpp 1 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/src/storage/index/inverted/gram/gram_scheme.h @@ -0,0 +1,66 @@
Adapted Preserved source assertions/logic; shortened comments or adapted target
APIs.
be/src/storage/index/inverted/gram/regex_ast.cpp @@ -0,0 +1,894 @@
Adapted Preserved source assertions/logic; shortened comments or adapted target
APIs.
be/src/storage/index/inverted/gram/regex_ast.h @@ -0,0 +1,72 @@
Adapted Preserved source assertions/logic; shortened comments or adapted target
APIs.
be/src/storage/index/inverted/gram/regex_gram_compiler.cpp @@ -0,0 +1,720
@@ Adapted Preserved source assertions/logic; shortened comments or
adapted target APIs.
be/src/storage/index/inverted/gram/regex_gram_compiler.h 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/inverted/inverted_index_iterator.cpp 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/inverted/inverted_index_query_type.h 4 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/inverted/inverted_index_reader.cpp @@ -393,0
+394,6 @@ Status FullTextIndexReader::query(const IndexQueryContextPtr&
context, Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/inverted_index_reader.cpp @@ -522,0
+529,5 @@ Status StringTypeInvertedIndexReader::query(const
IndexQueryContextPtr& context, Ported Source added lines appear in order in
the target file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -83,0 +84,10
@@ private: Adapted Adapted to branch-4.2 BE interfaces while preserving
source behavior.
be/src/storage/index/inverted/inverted_index_reader.h @@ -102 +112,2
@@ public: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -107 +118,2
@@ public: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -117,0 +130
@@ public: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -126,0 +140
@@ public: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -143,0 +158
@@ public: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -165,0 +181
@@ public: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -169,0
+186,7 @@ public: Ported Source added lines appear in order in the target
file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -170,0 +194
@@ public: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -192,0 +217
@@ public: Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -208,0
+234,5 @@ public: Ported Source added lines appear in order in the target
file.
be/src/storage/index/inverted/inverted_index_reader.h @@ -244,0
+275,5 @@ public: Ported Source added lines appear in order in the target
file.
be/src/storage/index/inverted/tokenizer/ngram/gram_tokenizer.cpp 1
source hunk(s) Ported(verbatim) Target file equals the merged
source file byte for byte.
be/src/storage/index/inverted/tokenizer/ngram/gram_tokenizer.h 1
source hunk(s) Ported(verbatim) Target file equals the merged
source file byte for byte.
be/src/storage/index/inverted/tokenizer/ngram/ngram_tokenizer_factory.cpp
@@ -19,0 +20,2 @@ Ported Source added lines appear in order in the
target file.
be/src/storage/index/inverted/tokenizer/ngram/ngram_tokenizer_factory.cpp
@@ -25,0 +28,18 @@ std::unordered_map<std::string, CharMatcherPtr>
NGramTokenizerFactory::MATCHERS; Ported Source added lines appear in order
in the target file.
be/src/storage/index/inverted/tokenizer/ngram/ngram_tokenizer_factory.cpp
@@ -26,0 +47,10 @@ void NGramTokenizerFactory::initialize(const Settings&
settings) { Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/tokenizer/ngram/ngram_tokenizer_factory.h
@@ -19,0 +20,4 @@ Ported Source added lines appear in order in the
target file.
be/src/storage/index/inverted/tokenizer/ngram/ngram_tokenizer_factory.h
@@ -21,0 +26 @@ Ported Source added lines appear in order in the target file.
be/src/storage/index/inverted/tokenizer/ngram/ngram_tokenizer_factory.h
@@ -39,0 +45,3 @@ public: Ported Source added lines appear in order in
the target file.
be/src/storage/index/inverted/tokenizer/ngram/ngram_tokenizer_factory.h
@@ -61,0 +70,5 @@ public: Adapted Adapted to branch-4.2 BE interfaces
while preserving source behavior.
be/src/storage/index/inverted/tokenizer/ngram/ngram_tokenizer_factory.h
@@ -64,0 +78,9 @@ public: Adapted Adapted to branch-4.2 BE interfaces
while preserving source behavior.
be/src/storage/index/inverted/tokenizer/ngram/ngram_tokenizer_factory.h
@@ -70,0 +93 @@ private: Ported Source added lines appear in order in
the target file.
be/src/storage/index/snii/format/core_metadata.cpp @@ -29,0 +30,55 @@
namespace doris::snii::format { Adapted Adapted to branch-4.2 BE
interfaces while preserving source behavior.
be/src/storage/index/snii/format/core_metadata.cpp @@ -108,0 +164,27 @@
Status decode_core_pb(const doris::snii::SniiCoreMetadataPB& input,
CoreMetadata Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/format/core_metadata.cpp @@ -139,0 +222,15 @@
Status encode_core_metadata(const CoreMetadata& metadata, ByteSink* out) {
Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/format/core_metadata.h @@ -19,0 +20 @@ Ported
Source added lines appear in order in the target file.
be/src/storage/index/snii/format/core_metadata.h @@ -20,0 +22,2 @@
Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/format/core_metadata.h @@ -22,0 +26 @@ Ported
Source added lines appear in order in the target file.
be/src/storage/index/snii/format/core_metadata.h @@ -42,0 +47,36 @@
struct SectionRefs { Adapted Adapted to branch-4.2 BE interfaces while
preserving source behavior.
be/src/storage/index/snii/format/core_metadata.h @@ -46,0 +87,6 @@
struct CoreMetadata { Ported Source added lines appear in order in the target
file.
be/src/storage/index/snii/format/dict_entry.cpp 4 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/src/storage/index/snii/format/dict_entry.h 2 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/src/storage/index/snii/format/format_constants.h @@ -41,0 +42,5 @@
inline constexpr uint32_t kFeatureBlobLogicalIndex = 1; Ported Source
added lines appear in order in the target file.
be/src/storage/index/snii/format/format_constants.h @@ -96 +101,8 @@ inline
constexpr uint8_t kOffsetsRef = 1u << 4; // v1 always 0 Ported Source
added lines appear in order in the target file.
be/src/storage/index/snii/format/format_constants.h @@ -115,0 +128,27 @@
enum class PrxCodec : uint8_t { Adapted Adapted to branch-4.2 BE interfaces
while preserving source behavior.
be/src/storage/index/snii/format/metadata_directory.cpp 9 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/snii/format/metadata_directory.h 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/snii/query/docid_conjunction.cpp 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/snii/query/gram_boolean_query.cpp @@ -0,0 +1,552
@@ Adapted Adapted to branch-4.2 BE interfaces while preserving source
behavior.
be/src/storage/index/snii/query/gram_boolean_query.h @@ -0,0 +1,175 @@
Adapted Adapted to branch-4.2 BE interfaces while preserving source behavior.
be/src/storage/index/snii/reader/logical_index_reader.cpp @@ -493,0
+494,9 @@ size_t LogicalIndexReader::memory_usage() const { Ported Source
added lines appear in order in the target file.
be/src/storage/index/snii/reader/logical_index_reader.cpp @@ -1087,0
+1097,10 @@ Status LogicalIndexReader::resolve_frq_window(const
format::DictEntry& entry, ui Ported Source added lines appear in order in the
target file.
be/src/storage/index/snii/reader/logical_index_reader.h 2 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/snii/reader/snii_segment_reader.cpp 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/snii/reader/snii_segment_reader.h 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/snii/snii_index_reader.cpp @@ -34,0 +35 @@ Ported
Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -43,0 +45,4 @@
Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -49,0 +55 @@ Ported
Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -132,0 +139,2 @@
struct SniiQueryExecutionResult { Ported Source added lines appear in order
in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -159,0 +168,21 @@
bool uses_phrase_frequency_scoring(InvertedIndexQueryType query_type,
Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -357 +386 @@ Status
execute_snii_query(const ::doris::snii::reader::LogicalIndexReader& logic
Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -429,0 +459,27 @@
Status execute_snii_query(const ::doris::snii::reader::LogicalIndexReader&
logic Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -477,0 +534,21 @@
Status SniiIndexReader::new_iterator(std::unique_ptr<IndexIterator>* iterator)
{ Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -485 +562 @@ Status
SniiIndexReader::_parse_query_terms(const IndexQueryContextPtr& context, Ported
Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -624,0 +702,7 @@
Status SniiIndexReader::_query(const IndexQueryContextPtr& context, const
std::s Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -656,0 +741,15 @@
Status SniiIndexReader::_query(const IndexQueryContextPtr& context, const
std::s Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -661 +760,2 @@
Status SniiIndexReader::_query(const IndexQueryContextPtr& context, const
std::s Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -682,2 +782,23 @@
Status SniiIndexReader::_query(const IndexQueryContextPtr& context, const
std::s Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -848,4 +969,4 @@
Status SniiIndexReader::_compute_query_bitmap( Ported Source added lines
appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.cpp @@ -856 +977,6 @@
Status SniiIndexReader::_compute_query_bitmap( Ported Source added
lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.h @@ -29,0 +30,4 @@
Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.h @@ -94,0 +99,6 @@
public: Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_reader.h @@ -118,0 +129,2 @@
private: Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -31,0 +32 @@ Ported
Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -33,0 +35 @@ Ported
Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -47,0 +50,79 @@
SniiIndexColumnWriter::SniiIndexColumnWriter(IndexFileWriter*
index_file_writer, Adapted Adapted to branch-4.2 BE interfaces while
preserving source behavior.
be/src/storage/index/snii/snii_index_writer.cpp @@ -54,0 +136,14 @@
Status SniiIndexColumnWriter::init() { Ported Source added lines appear
in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -93,10 +187,0 @@
Status SniiIndexColumnWriter::init() { Adapted Adapted to branch-4.2 BE
interfaces while preserving source behavior.
be/src/storage/index/snii/snii_index_writer.cpp @@ -104,2 +188,0 @@
Status SniiIndexColumnWriter::init() { Adapted Adapted to branch-4.2 BE
interfaces while preserving source behavior.
be/src/storage/index/snii/snii_index_writer.cpp @@ -107,3 +189,0 @@
Status SniiIndexColumnWriter::init() { Ported Source added lines appear
in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -180,3 +260,2 @@
Status SniiIndexColumnWriter::_add_value_tokens(const Slice& value, uint32_t
doc Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -196 +275 @@ Status
SniiIndexColumnWriter::_add_value_tokens(const Slice& value, uint32_t doc
Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -215,0 +295,18 @@
Status SniiIndexColumnWriter::add_values(const std::string /*name*/, const
void* Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -231,0 +329,4 @@
Status SniiIndexColumnWriter::add_array_values(size_t field_size, const void*
va Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -280,0 +382,151 @@
void SniiIndexColumnWriter::_report_null_docids_capacity(bool release_all) {
Adapted Adapted to branch-4.2 BE interfaces while preserving source behavior.
be/src/storage/index/snii/snii_index_writer.cpp @@ -352,0 +605,4 @@
Status SniiIndexColumnWriter::finish() { Ported Source added lines appear
in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -354,0 +611 @@
Status SniiIndexColumnWriter::finish() { Ported Source added lines appear
in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -362,0 +620,4 @@
Status SniiIndexColumnWriter::finish() { Ported Source added lines appear
in order in the target file.
be/src/storage/index/snii/snii_index_writer.cpp @@ -381,0 +643 @@ void
SniiIndexColumnWriter::close_on_error() { Ported Source added lines
appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.h @@ -26,0 +27,6 @@
Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.h @@ -37 +43,6 @@ class
Analyzer; Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.h @@ -73,0 +85,4 @@
public: Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.h @@ -82,0 +98,8 @@
private: Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.h @@ -84,0 +108,8 @@
private: Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.h @@ -88,0 +120,9 @@
private: Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.h @@ -110,0 +151,29 @@
private: Adapted Adapted to branch-4.2 BE interfaces while preserving source
behavior.
be/src/storage/index/snii/snii_index_writer.h @@ -113,0 +183,6 @@
private: Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/snii_index_writer.h @@ -124,0 +200 @@
private: Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/writer/logical_index_writer.cpp 9 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/src/storage/index/snii/writer/logical_index_writer.h @@ -148,0
+149,15 @@ struct SniiIndexInput { Adapted Adapted to branch-4.2 BE
interfaces while preserving source behavior.
be/src/storage/index/snii/writer/logical_index_writer.h @@ -298,0
+314,3 @@ public: Ported Source added lines appear in order in the target
file.
be/src/storage/index/snii/writer/logical_index_writer.h @@ -360,0 +379
@@ private: Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/writer/logical_index_writer.h @@ -361,0
+381,17 @@ private: Ported Source added lines appear in order in the target
file.
be/src/storage/index/snii/writer/snii_compound_writer.cpp @@ -144,0 +145
@@ Status SniiCompoundWriter::inherit(const reader::SniiRewriteSnapshot&
snapshot, Ported Source added lines appear in order in the target file.
be/src/storage/index/snii/writer/snii_compound_writer.cpp @@ -557,0
+559,4 @@ Status SniiCompoundWriter::write_tail() { Ported Source added
lines appear in order in the target file.
be/src/storage/index/snii/writer/snii_compound_writer.cpp @@ -578,0
+584,3 @@ Status SniiCompoundWriter::write_tail() { Ported Source added
lines appear in order in the target file.
be/src/storage/index/snii/writer/snii_compound_writer.h @@ -258,0 +259
@@ private: Ported Source added lines appear in order in the target file.
be/src/storage/olap_common.h @@ -330,0 +331,10 @@ struct
OlapReaderStatistics { Ported Source added lines appear in order in the
target file.
be/src/storage/segment/segment_iterator.cpp @@ -1390,0 +1391 @@ Status
SegmentIterator::_apply_index_expr() { Ported Source added lines appear
in order in the target file.
be/src/storage/segment/segment_iterator.cpp @@ -1399,0 +1401,5 @@ Status
SegmentIterator::_apply_index_expr() { Ported Source added lines appear in
order in the target file.
be/src/storage/segment/segment_iterator.cpp @@ -1417,0 +1424,6 @@ Status
SegmentIterator::_apply_index_expr() { Ported Source added lines appear in
order in the target file.
be/src/storage/segment/segment_iterator.cpp @@ -1483,0 +1496,4 @@ Status
SegmentIterator::_apply_index_expr() { Ported Source added lines appear in
order in the target file.
be/src/storage/segment/segment_iterator.cpp @@ -1502,0 +1519,14 @@ Status
SegmentIterator::_apply_index_expr() { Ported Source added lines appear in
order in the target file.
be/src/storage/segment/segment_iterator.h @@ -162,0 +163,2 @@ private:
Ported Source added lines appear in order in the target file.
be/test/exprs/function/function_match_test.cpp 4 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/test/exprs/function/function_search_test.cpp @@ -183,0 +184,3 @@
public: Ported Source added lines appear in order in the target file.
be/test/exprs/function/function_search_test.cpp @@ -461,0 +465,38 @@
static Status resolve_non_variant_binding_with_mismatched_analyzer(const
DataTyp Ported Source added lines appear in order in the target file.
be/test/exprs/function/like_gram_binding_test.cpp @@ -0,0 +1,531 @@
Adapted Preserved source assertions/logic; shortened comments or adapted target
APIs.
be/test/exprs/function/like_gram_index_test.cpp 1 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/test/exprs/index_exec_context_test.cpp @@ -0,0 +1,120 @@ Adapted
Preserved source assertions/logic; shortened comments or adapted target APIs.
be/test/storage/index/inverted/ananlyzer/custom_analyzer_test.cpp @@
-23,0 +24,2 @@ Ported Source added lines appear in order in the target
file.
be/test/storage/index/inverted/ananlyzer/custom_analyzer_test.cpp @@
-24,0 +27 @@ Ported Source added lines appear in order in the target file.
be/test/storage/index/inverted/ananlyzer/custom_analyzer_test.cpp @@
-34,0 +38 @@ Ported Source added lines appear in order in the target file.
be/test/storage/index/inverted/ananlyzer/custom_analyzer_test.cpp @@
-199,0 +204,58 @@ TEST_F(CustomAnalyzerTest, CustomNgramAnalyzer) { Adapted
Preserved source assertions/logic; shortened comments or adapted target APIs.
be/test/storage/index/inverted/gram/gram_density_corpus_test.cpp 1
source hunk(s) Ported(verbatim) Target file equals the merged
source file byte for byte.
be/test/storage/index/inverted/gram/gram_density_test.cpp @@ -0,0 +1,280
@@ Adapted Preserved source assertions/logic; shortened comments or
adapted target APIs.
be/test/storage/index/inverted/gram/gram_df_distribution_test.cpp @@ -0,0
+1,148 @@ Adapted Preserved source assertions/logic; shortened comments
or adapted target APIs.
be/test/storage/index/inverted/gram/gram_extractor_test.cpp @@ -0,0 +1,290
@@ Adapted Preserved source assertions/logic; shortened comments or
adapted target APIs.
be/test/storage/index/inverted/gram/gram_literal_coverage_test.cpp @@ -0,0
+1,204 @@ Adapted Preserved source assertions/logic; shortened comments
or adapted target APIs.
be/test/storage/index/inverted/gram/gram_query_test.cpp 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/test/storage/index/inverted/gram/gram_scheme_test.cpp 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/test/storage/index/inverted/gram/regex_ast_test.cpp @@ -0,0 +1,238
@@ Adapted Preserved source assertions/logic; shortened comments or
adapted target APIs.
be/test/storage/index/inverted/gram/regex_gram_compiler_test.cpp @@ -0,0
+1,190 @@ Adapted Preserved source assertions/logic; shortened comments
or adapted target APIs.
be/test/storage/index/inverted/gram/regex_gram_fuzz_test.cpp @@ -0,0 +1,179
@@ Adapted Preserved source assertions/logic; shortened comments or
adapted target APIs.
be/test/storage/index/inverted/gram/regex_gram_no_false_negative_test.cpp
@@ -0,0 +1,990 @@ Adapted Preserved source assertions/logic; shortened
comments or adapted target APIs.
be/test/storage/index/inverted/gram/regex_gram_recall_test.cpp @@ -0,0
+1,1233 @@ Adapted Preserved source assertions/logic; shortened comments
or adapted target APIs.
be/test/storage/index/inverted/tokenizer/gram_tokenizer_test.cpp @@ -0,0
+1,140 @@ Adapted Preserved source assertions/logic; shortened comments
or adapted target APIs.
be/test/storage/index/snii/format/core_metadata_test.cpp @@ -28,0 +29 @@
Ported Source added lines appear in order in the target file.
be/test/storage/index/snii/format/core_metadata_test.cpp @@ -35,0 +37,3
@@ namespace { Ported Source added lines appear in order in the target file.
be/test/storage/index/snii/format/core_metadata_test.cpp @@ -109,0 +114
@@ void expect_core_eq(const CoreMetadata& expected, const CoreMetadata&
actual) { Ported Source added lines appear in order in the target file.
be/test/storage/index/snii/format/core_metadata_test.cpp @@ -302,0
+308,65 @@ TEST(SniiCoreMetadata, RejectsBadFrameTypeCrcAndTruncation) {
Ported Source added lines appear in order in the target file.
be/test/storage/index/snii/format/dict_entry_test.cpp 1 source
hunk(s) Ported(verbatim) Target file equals the merged source
file byte for byte.
be/test/storage/index/snii/format/gram_index_section_sizes_test.cpp @@ -0,0
+1,236 @@ Adapted Preserved source assertions/logic; shortened comments
or adapted target APIs.
be/test/storage/index/snii/format/gram_stop_gram_curve_test.cpp 1
source hunk(s) Ported(verbatim) Target file equals the merged
source file byte for byte.
be/test/storage/index/snii/format/metadata_directory_test.cpp 1
source hunk(s) Ported(verbatim) Target file equals the merged
source file byte for byte.
be/test/storage/index/snii/format/snii_proto_field_numbers_test.cpp 1
source hunk(s) Ported(verbatim) Target file equals the merged
source file byte for byte.
be/test/storage/index/snii/query/gram_boolean_query_e2e_test.cpp @@ -0,0
+1,503 @@ Adapted Preserved source assertions/logic; shortened comments
or adapted target APIs.
be/test/storage/index/snii/query/gram_boolean_query_test.cpp @@ -0,0 +1,999
@@ Adapted Preserved source assertions/logic; shortened comments or
adapted target APIs.
be/test/storage/index/snii/snii_gram_cache_test.cpp 1 source hunk(s)
Ported(verbatim) Target file equals the merged source file byte for byte.
be/test/storage/index/snii/writer/gram_density_calibration_test.cpp @@ -0,0
+1,423 @@ Adapted Preserved source assertions/logic; shortened comments
or adapted target APIs.
be/test/storage/index/snii/writer/high_df_digest_cost_test.cpp @@ -0,0
+1,179 @@ Adapted Preserved source assertions/logic; shortened comments
or adapted target APIs.
be/test/storage/index/snii/writer/snii_compound_writer_inherit_test.cpp
@@ -32,0 +33,3 @@ Ported Source added lines appear in order in the
target file.
be/test/storage/index/snii/writer/snii_compound_writer_inherit_test.cpp
@@ -43,0 +47 @@ Ported Source added lines appear in order in the target file.
be/test/storage/index/snii/writer/snii_compound_writer_inherit_test.cpp
@@ -45,0 +50 @@ Ported Source added lines appear in order in the target file.
be/test/storage/index/snii/writer/snii_compound_writer_inherit_test.cpp
@@ -255,0 +261,42 @@ std::vector<uint32_t> QueryTerm(const
std::vector<uint8_t>& image, uint64_t inde Ported Source added lines appear
in order in the target file.
be/test/storage/index/snii/writer/snii_compound_writer_inherit_test.cpp
@@ -283,0 +331,44 @@ TEST(SniiCompoundWriterInherit,
CarriesInheritedIndexesAndAppendsANewOne) { Adapted Preserved source
assertions/logic; shortened comments or adapted target APIs.
be/test/storage/index/snii/writer/snii_gram_inherit_test.cpp @@ -0,0 +1,354
@@ Adapted Preserved source assertions/logic; shortened comments or
adapted target APIs.
be/test/storage/index/snii/writer/stop_gram_test.cpp @@ -0,0 +1,364 @@
Adapted Preserved source assertions/logic; shortened comments or adapted target
APIs.
be/test/storage/index/snii_writer_test.cpp @@ -44,0 +45,3 @@ Ported
Source added lines appear in order in the target file.
be/test/storage/index/snii_writer_test.cpp @@ -55,0 +59 @@ Ported Source
added lines appear in order in the target file.
be/test/storage/index/snii_writer_test.cpp @@ -58,0 +63,4 @@ Ported
Source added lines appear in order in the target file.
be/test/storage/index/snii_writer_test.cpp @@ -59,0 +68,13 @@ namespace {
Ported Source added lines appear in order in the target file.
be/test/storage/index/snii_writer_test.cpp @@ -63,0 +85,54 @@ using
namespace doris::snii::format; // NOLINT(google-build-using-namespace) Adapted
Preserved source assertions/logic; shortened comments or adapted target APIs.
be/test/storage/index/snii_writer_test.cpp @@ -127,0 +203,15 @@ private:
Ported Source added lines appear in order in the target file.
be/test/storage/index/snii_writer_test.cpp @@ -138,0 +229,84 @@
doris::Slice malformed_value_after_valid_token() { Adapted Preserved source
assertions/logic; shortened comments or adapted target APIs.
be/test/storage/index/snii_writer_test.cpp @@ -379,0 +554,219 @@
TEST(SniiWriterNorms, WritesNormsFollowSharedNormsPolicy) { Adapted
Preserved source assertions/logic; shortened comments or adapted target APIs.
be/test/storage/segment/inverted_index_iterator_test.cpp @@ -86,0 +87,3
@@ public: Ported Source added lines appear in order in the target file.
be/test/storage/segment/inverted_index_iterator_test.cpp @@ -96,0 +100
@@ private: Ported Source added lines appear in order in the target file.
be/test/storage/segment/inverted_index_iterator_test.cpp @@ -959,0
+964,59 @@ TEST_F(InvertedIndexIteratorTest,
PhraseQueriesStillRunOnAnUntokenizedIndex) { Ported Source added lines
appear in order in the target file.
be/test/storage/segment/segment_iterator_conjunct_short_circuit_test.cpp
@@ -63 +63,10 @@ public: Ported Source added lines appear in order in
the target file.
be/test/storage/segment/segment_iterator_conjunct_short_circuit_test.cpp
@@ -81,0 +91,10 @@ public: Ported Source added lines appear in order in
the target file.
be/test/storage/segment/segment_iterator_conjunct_short_circuit_test.cpp
@@ -87 +106,6 @@ public: Ported Source added lines appear in order in
the target file.
be/test/storage/segment/segment_iterator_conjunct_short_circuit_test.cpp
@@ -106,0 +131 @@ private: Ported Source added lines appear in order in
the target file.
be/test/storage/segment/segment_iterator_conjunct_short_circuit_test.cpp
@@ -327,0 +353,147 @@ TEST_F(SegmentIteratorConjunctShortCircuitTest,
progressive_intersection_keeps_g Ported Source added lines appear in order in
the target file.
build-support/check-header-deps.py @@ -498 +498,9 @@
FORWARD_CLOSURE_BUDGETS = { N-A 4.2 has no header dependency helper; this
hunk changes only its budget.
fe/fe-core/src/main/java/org/apache/doris/alter/SchemaChangeHandler.java
@@ -3316,0 +3317,6 @@ public class SchemaChangeHandler extends AlterHandler {
Adapted Adapted to branch-4.2 FE policy/index APIs or simplified comments.
fe/fe-core/src/main/java/org/apache/doris/analysis/InvertedIndexUtil.java
@@ -43,0 +44 @@ import java.util.Map; Ported Source added lines appear in
order in the target file.
fe/fe-core/src/main/java/org/apache/doris/analysis/InvertedIndexUtil.java
@@ -270 +271,2 @@ public class InvertedIndexUtil { Ported Source added
lines appear in order in the target file.
fe/fe-core/src/main/java/org/apache/doris/analysis/InvertedIndexUtil.java
@@ -398 +400,3 @@ public class InvertedIndexUtil { Ported Source added
lines appear in order in the target file.
fe/fe-core/src/main/java/org/apache/doris/analysis/InvertedIndexUtil.java
@@ -407 +411,25 @@ public class InvertedIndexUtil { Ported Source added
lines appear in order in the target file.
fe/fe-core/src/main/java/org/apache/doris/analysis/InvertedIndexUtil.java
@@ -412,0 +441,34 @@ public class InvertedIndexUtil { Ported Source added
lines appear in order in the target file.
fe/fe-core/src/main/java/org/apache/doris/indexpolicy/IndexPolicyMgr.java
@@ -45,0 +46 @@ import java.util.Map; Ported Source added lines appear in
order in the target file.
fe/fe-core/src/main/java/org/apache/doris/indexpolicy/IndexPolicyMgr.java
@@ -271,0 +273,46 @@ public class IndexPolicyMgr implements Writable,
GsonPostProcessable { Ported Source added lines appear in order in the
target file.
fe/fe-core/src/main/java/org/apache/doris/indexpolicy/IndexPolicyMgr.java
@@ -428,0 +476,91 @@ public class IndexPolicyMgr implements Writable,
GsonPostProcessable { Adapted Adapted to branch-4.2 FE policy/index APIs or
simplified comments.
fe/fe-core/src/main/java/org/apache/doris/indexpolicy/NGramTokenizerValidator.java
@@ -27,0 +28 @@ import java.util.Set; Ported Source added lines appear in
order in the target file.
fe/fe-core/src/main/java/org/apache/doris/indexpolicy/NGramTokenizerValidator.java
@@ -36 +37,2 @@ public class NGramTokenizerValidator extends
BasePolicyValidator { Adapted Adapted to branch-4.2 FE policy/index APIs
or simplified comments.
fe/fe-core/src/main/java/org/apache/doris/indexpolicy/NGramTokenizerValidator.java
@@ -42,0 +45,29 @@ public class NGramTokenizerValidator extends
BasePolicyValidator { Adapted Adapted to branch-4.2 FE policy/index APIs or
simplified comments.
fe/fe-core/src/main/java/org/apache/doris/indexpolicy/NGramTokenizerValidator.java
@@ -70,0 +102,17 @@ public class NGramTokenizerValidator extends
BasePolicyValidator { Adapted Adapted to branch-4.2 FE policy/index APIs or
simplified comments.
fe/fe-core/src/main/java/org/apache/doris/indexpolicy/NGramTokenizerValidator.java
@@ -158,0 +207,81 @@ public class NGramTokenizerValidator extends
BasePolicyValidator { Adapted Adapted to branch-4.2 FE policy/index APIs or
simplified comments.
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/info/IndexDefinition.java
@@ -476,0 +477,28 @@ public class IndexDefinition { Ported Source
added lines appear in order in the target file.
fe/fe-core/src/test/java/org/apache/doris/indexpolicy/GramDdlValidationTest.java
@@ -0,0 +1,375 @@ Adapted Adapted to branch-4.2 FE policy/index APIs
or simplified comments.
fe/fe-core/src/test/java/org/apache/doris/indexpolicy/PolicyValidatorTests.java
@@ -673,0 +674,267 @@ public class PolicyValidatorTests { Adapted
Adapted to branch-4.2 FE policy/index APIs or simplified comments.
gensrc/proto/snii.proto @@ -68,0 +69,8 @@ message
SniiLogicalIndexMetadataPB { Adapted Preserved legacy wire slots and master
field numbers; shortened comments.
gensrc/proto/snii.proto @@ -84,0 +93,36 @@ message SniiCoreMetadataPB {
Adapted Preserved legacy wire slots and master field numbers; shortened
comments.
gensrc/proto/snii.proto @@ -117,0 +162,19 @@ message SniiSectionRefsPB
{ Adapted Preserved legacy wire slots and master field numbers;
shortened comments.
regression-test/data/inverted_index_p0/gram/test_gram_metadata_inherit.out
@@ -0,0 +1,56 @@ Ported Source added lines appear in order in the
target file.
regression-test/data/inverted_index_p0/gram/test_gram_pattern_recall.out
@@ -0,0 +1,1537 @@ Ported Source added lines appear in order in the
target file.
regression-test/data/inverted_index_p0/gram/test_gram_policy_recovery.out
@@ -0,0 +1,145 @@ Ported Source added lines appear in order in the
target file.
regression-test/data/inverted_index_p0/gram/test_gram_regexp_like.out
@@ -0,0 +1,2369 @@ Ported Source added lines appear in order in the
target file.
regression-test/suites/inverted_index_p0/gram/test_gram_compaction.groovy
@@ -0,0 +1,168 @@ Adapted Preserved source assertions/logic; shortened
comments or adapted target APIs.
regression-test/suites/inverted_index_p0/gram/test_gram_index_order.groovy
1 source hunk(s) Ported(verbatim) Target file equals the merged
source file byte for byte.
regression-test/suites/inverted_index_p0/gram/test_gram_metadata_inherit.groovy
@@ -0,0 +1,258 @@ Adapted Preserved source assertions/logic;
shortened comments or adapted target APIs.
regression-test/suites/inverted_index_p0/gram/test_gram_pattern_recall.groovy
1 source hunk(s) Ported(verbatim) Target file equals the
merged source file byte for byte.
regression-test/suites/inverted_index_p0/gram/test_gram_policy_recovery.groovy
1 source hunk(s) Ported(verbatim) Target file equals the
merged source file byte for byte.
regression-test/suites/inverted_index_p0/gram/test_gram_regexp_like.groovy
@@ -0,0 +1,383 @@ Adapted Preserved source assertions/logic; shortened
comments or adapted target APIs.
regression-test/suites/inverted_index_p0/gram/test_gram_schema_change.groovy
@@ -0,0 +1,270 @@ Adapted Preserved source assertions/logic; shortened
comments or adapted target APIs.
regression-test/suites/inverted_index_p0/gram/test_gram_stop_gram.groovy
@@ -0,0 +1,217 @@ Adapted Preserved source assertions/logic; shortened
comments or adapted target APIs.
```
</details>
### Check List (For Reviewer who merge this PR)
- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]