[BugFix].add diagnose logs for write_meta_block failure
This commit is contained in:
parent
d5ace94d6c
commit
f0049f09e5
@ -1609,7 +1609,9 @@ ObDataIndexBlockBuilder::ObDataIndexBlockBuilder()
|
||||
meta_row_(),
|
||||
data_blocks_cnt_(0),
|
||||
meta_block_offset_(0),
|
||||
meta_block_size_(0)
|
||||
meta_block_size_(0),
|
||||
estimate_leaf_block_size_(0),
|
||||
estimate_meta_block_size_(0)
|
||||
{
|
||||
}
|
||||
|
||||
@ -1635,6 +1637,8 @@ void ObDataIndexBlockBuilder::reset()
|
||||
data_blocks_cnt_ = 0;
|
||||
meta_block_offset_ = 0;
|
||||
meta_block_size_ = 0;
|
||||
estimate_leaf_block_size_ = 0;
|
||||
estimate_meta_block_size_ = 0;
|
||||
sstable_allocator_ = nullptr;
|
||||
ObBaseIndexBlockBuilder::reset();
|
||||
}
|
||||
@ -1786,6 +1790,10 @@ int ObDataIndexBlockBuilder::append_row(const ObMicroBlockDesc µ_block_desc
|
||||
STORAGE_LOG(DEBUG, "succeed to prevent append_row", K(ret), K(macro_block.get_remain_size()),
|
||||
K(cur_data_block_size), K(estimate_meta_block_size), K(remain_size));
|
||||
}
|
||||
} else {
|
||||
// only update these two variables when succeeded to append data micro block
|
||||
estimate_leaf_block_size_ = remain_size;
|
||||
estimate_meta_block_size_ = estimate_meta_block_size;
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
@ -1927,6 +1935,16 @@ int ObDataIndexBlockBuilder::append_index_micro_block(ObMacroBlock ¯o_block,
|
||||
} else {
|
||||
root_micro_block_desc_->last_macro_size_ = data_offset + leaf_block_size + meta_block_size_;
|
||||
}
|
||||
|
||||
if (OB_FAIL(ret) && OB_BUF_NOT_ENOUGH == ret) {
|
||||
STORAGE_LOG(WARN, "error!!!fail to write leaf/meta block into data macro block",
|
||||
K(ret), K_(estimate_leaf_block_size), K_(estimate_meta_block_size),
|
||||
K(leaf_block_desc), K_(macro_row_desc));
|
||||
STORAGE_LOG(INFO, "print error leaf block");
|
||||
micro_writer_->dump_diagnose_info();
|
||||
STORAGE_LOG(INFO, "print error meta block");
|
||||
meta_block_writer_->dump_diagnose_info();
|
||||
}
|
||||
clean_status();
|
||||
return ret;
|
||||
}
|
||||
|
@ -339,6 +339,8 @@ private:
|
||||
int64_t data_blocks_cnt_;
|
||||
int64_t meta_block_offset_;
|
||||
int64_t meta_block_size_;
|
||||
int64_t estimate_leaf_block_size_;
|
||||
int64_t estimate_meta_block_size_;
|
||||
};
|
||||
|
||||
class ObMetaIndexBlockBuilder : public ObBaseIndexBlockBuilder
|
||||
|
Loading…
x
Reference in New Issue
Block a user