add diag log for chunk store read corrupt data
This commit is contained in:
@ -40,6 +40,7 @@ void ObAdaptiveByPassCtrl::gby_process_state(int64_t probe_cnt, int64_t row_cnt,
|
||||
state_ = STATE_ANALYZE;
|
||||
}
|
||||
} else if (STATE_ANALYZE == state_) {
|
||||
probe_cnt_ += probe_cnt;
|
||||
double ratio = MIN_RATIO_FOR_L3;
|
||||
if (static_cast<double> (exists_cnt_) / probe_cnt_ >=
|
||||
std::max(ratio, 1 - (1 / static_cast<double> (cut_ratio_)))) {
|
||||
@ -62,7 +63,7 @@ void ObAdaptiveByPassCtrl::gby_process_state(int64_t probe_cnt, int64_t row_cnt,
|
||||
state_ = STATE_PROCESS_HT;
|
||||
}
|
||||
LOG_TRACE("get new state", K(state_), K(processed_cnt_), K(exists_cnt_),
|
||||
K(probe_cnt_), K(rebuild_times_), K(cut_ratio_), K(mem_size), K(op_id_));
|
||||
K(probe_cnt_), K(rebuild_times_), K(cut_ratio_), K(mem_size), K(op_id_), K(row_cnt));
|
||||
probe_cnt_ = 0;
|
||||
exists_cnt_ = 0;
|
||||
}
|
||||
|
||||
@ -1875,9 +1875,11 @@ int ObChunkDatumStore::ChunkIterator::read_next_blk()
|
||||
}
|
||||
}
|
||||
if (OB_SUCC(ret) && !aio_blk_->magic_check()) {
|
||||
#ifndef NDEBUG
|
||||
ob_abort();
|
||||
#endif
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_WARN("read corrupt data", K(ret), K(aio_blk_->magic_),
|
||||
K(store_->file_size_), K(cur_iter_pos_));
|
||||
LOG_WARN("read corrupt data", K(ret), K(*aio_blk_), K(*this), K(*store_));
|
||||
}
|
||||
if (OB_SUCC(ret)) {
|
||||
// data block is larger than min block
|
||||
@ -1911,6 +1913,9 @@ int ObChunkDatumStore::ChunkIterator::read_next_blk()
|
||||
read_blk_buf_ = aio_blk_buf_;
|
||||
aio_blk_ = NULL;
|
||||
aio_blk_buf_ = NULL;
|
||||
#ifndef NDEBUG
|
||||
LOG_INFO("read one block", K(*read_blk_), K(*this), K(*store_));
|
||||
#endif
|
||||
if (OB_FAIL(read_blk_->swizzling(NULL))) {
|
||||
LOG_WARN("swizzling failed", K(ret));
|
||||
} else {
|
||||
|
||||
@ -1161,6 +1161,7 @@ int ObOperator::get_next_batch(const int64_t max_row_cnt, const ObBatchRows *&ba
|
||||
// if no data in batch, end iterate immediately, otherwise wait for next iterate
|
||||
brs_.end_ = !brs_.size_;
|
||||
}
|
||||
skipped_rows_count = brs_.skip_->accumulate_bit_cnt(brs_.size_);
|
||||
op_monitor_info_.output_row_count_ += brs_.size_ - skipped_rows_count;
|
||||
op_monitor_info_.skipped_rows_count_ += skipped_rows_count; // for batch
|
||||
++op_monitor_info_.output_batches_; // for batch
|
||||
|
||||
Reference in New Issue
Block a user