From 92e06562edc6a4f886ab7052542bc83bf93b3cb6 Mon Sep 17 00:00:00 2001 From: airborne12 Date: Mon, 30 Dec 2024 10:42:34 +0800 Subject: [PATCH] [fix](segcompaction) fix segcompaction file not found when inverted index storage format is v1 (#46054) Problem Summary: Wrong inverted index file path for inverted index storage format v1 when making segment compaction. --- be/src/olap/rowset/beta_rowset_writer.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/be/src/olap/rowset/beta_rowset_writer.cpp b/be/src/olap/rowset/beta_rowset_writer.cpp index f04c765908ca1a..c25a1532d481b4 100644 --- a/be/src/olap/rowset/beta_rowset_writer.cpp +++ b/be/src/olap/rowset/beta_rowset_writer.cpp @@ -968,15 +968,14 @@ Status BetaRowsetWriter::create_segment_writer_for_segcompaction( InvertedIndexFileWriterPtr index_file_writer; if (_context.tablet_schema->has_inverted_index()) { io::FileWriterPtr idx_file_writer; + std::string prefix(InvertedIndexDescriptor::get_index_file_path_prefix(path)); if (_context.tablet_schema->get_inverted_index_storage_format() != InvertedIndexStorageFormatPB::V1) { - std::string prefix = - std::string {InvertedIndexDescriptor::get_index_file_path_prefix(path)}; std::string index_path = InvertedIndexDescriptor::get_index_file_path_v2(prefix); RETURN_IF_ERROR(_create_file_writer(index_path, idx_file_writer)); } index_file_writer = std::make_unique( - _context.fs(), path, _context.rowset_id.to_string(), _num_segcompacted, + _context.fs(), prefix, _context.rowset_id.to_string(), _num_segcompacted, _context.tablet_schema->get_inverted_index_storage_format(), std::move(idx_file_writer)); }