fix: missing field data after appending scalar index to loaded segment (#29912)

related #29843

Signed-off-by: yah01 <yang.cen@zilliz.com>
This commit is contained in:
yah01 2024-01-12 14:04:54 +08:00 committed by GitHub
parent adf0c8885c
commit aba2656e68
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -182,9 +182,12 @@ SegmentSealedImpl::LoadScalarIndex(const LoadIndexInfo& info) {
set_bit(index_ready_bitset_, field_id, true);
update_row_count(row_count);
// release field column
fields_.erase(field_id);
set_bit(field_data_ready_bitset_, field_id, false);
// release field column if the index contains raw data
if (scalar_indexings_[field_id]->HasRawData() &&
get_bit(field_data_ready_bitset_, field_id)) {
fields_.erase(field_id);
set_bit(field_data_ready_bitset_, field_id, false);
}
lck.unlock();
}