Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[fix](inverted index)Change index_id from int32 to int64 to avoid overflow #35206

Merged
merged 1 commit into from
May 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions be/src/index-tools/index_tool.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ DEFINE_string(pred_type, "", "inverted index term query predicate, eq/lt/gt/le/g
DEFINE_bool(print_row_id, false, "print row id when query terms");
DEFINE_bool(print_doc_id, false, "print doc id when check terms stats");
// only for debug index compaction
DEFINE_int32(idx_id, -1, "inverted index id");
DEFINE_int64(idx_id, -1, "inverted index id");
DEFINE_string(src_idx_dirs_file, "", "source segment index files");
DEFINE_string(dest_idx_dirs_file, "", "destination segment index files");
DEFINE_string(dest_seg_num_rows_file, "", "destination segment number of rows");
Expand Down Expand Up @@ -406,7 +406,7 @@ int main(int argc, char** argv) {
return true;
};

int32_t index_id = FLAGS_idx_id;
int64_t index_id = FLAGS_idx_id;
std::string tablet_path = FLAGS_tablet_path;
std::string src_index_dirs_string;
std::string dest_index_dirs_string;
Expand Down
1 change: 1 addition & 0 deletions be/src/olap/rowset/rowset_writer_context.h
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ struct RowsetWriterContext {

int64_t newest_write_timestamp = -1;
bool enable_unique_key_merge_on_write = false;
// store column_unique_id to skip write inverted index
std::set<int32_t> skip_inverted_index;
DataWriteType write_type = DataWriteType::TYPE_DEFAULT;
BaseTabletSPtr tablet = nullptr;
Expand Down
4 changes: 2 additions & 2 deletions be/src/olap/rowset/segment_v2/inverted_index_desc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,14 @@ const std::string InvertedIndexDescriptor::index_suffix = ".idx";
const std::string InvertedIndexDescriptor::index_name_separator = "_";

std::string InvertedIndexDescriptor::get_temporary_index_path(
const std::string& segment_path, uint32_t uuid, const std::string& index_suffix_path) {
const std::string& segment_path, uint64_t uuid, const std::string& index_suffix_path) {
std::string suffix = index_suffix_path.empty() ? "" : "@" + index_suffix_path;
return StripSuffixString(segment_path, segment_suffix) + index_name_separator +
std::to_string(uuid) + suffix;
}

std::string InvertedIndexDescriptor::get_index_file_name(const std::string& segment_path,
uint32_t uuid,
uint64_t uuid,
const std::string& index_suffix_path) {
std::string suffix = index_suffix_path.empty() ? "" : "@" + index_suffix_path;
return StripSuffixString(segment_path, segment_suffix) + index_name_separator +
Expand Down
4 changes: 2 additions & 2 deletions be/src/olap/rowset/segment_v2/inverted_index_desc.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,9 @@ class InvertedIndexDescriptor {
static const std::string segment_suffix;
static const std::string index_suffix;
static const std::string index_name_separator;
static std::string get_temporary_index_path(const std::string& segment_path, uint32_t uuid,
static std::string get_temporary_index_path(const std::string& segment_path, uint64_t uuid,
const std::string& index_suffix_path);
static std::string get_index_file_name(const std::string& path, uint32_t uuid,
static std::string get_index_file_name(const std::string& path, uint64_t uuid,
const std::string& index_suffix_path);
static std::string get_index_file_name(const std::string& path);
static const std::string get_temporary_null_bitmap_file_name() { return "null_bitmap"; }
Expand Down
2 changes: 1 addition & 1 deletion be/src/olap/rowset/segment_v2/inverted_index_reader.h
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ class InvertedIndexReader : public std::enable_shared_from_this<InvertedIndexRea

virtual InvertedIndexReaderType type() = 0;

[[nodiscard]] uint32_t get_index_id() const { return _index_meta.index_id(); }
[[nodiscard]] uint64_t get_index_id() const { return _index_meta.index_id(); }

[[nodiscard]] const std::map<string, string>& get_index_properties() const {
return _index_meta.properties();
Expand Down
Loading