fix window function memleak when insert failed
This commit is contained in:
@ -1283,9 +1283,14 @@ int ObWindowFunctionOp::init()
|
|||||||
LOG_WARN("add func failed", K(ret));
|
LOG_WARN("add func failed", K(ret));
|
||||||
} else {
|
} else {
|
||||||
LOG_DEBUG("add func succ", KPC(wf_cell));
|
LOG_DEBUG("add func succ", KPC(wf_cell));
|
||||||
|
wf_cell = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (OB_UNLIKELY(NULL != wf_cell)) {
|
||||||
|
wf_cell->~WinFuncCell();
|
||||||
|
wf_cell = NULL;
|
||||||
|
}
|
||||||
if (OB_SUCC(ret) && MY_SPEC.is_participator()) {
|
if (OB_SUCC(ret) && MY_SPEC.is_participator()) {
|
||||||
if (wf_info.can_push_down_) {
|
if (wf_info.can_push_down_) {
|
||||||
if (common::OB_INVALID_COUNT == next_wf_pby_expr_cnt_to_transmit_) {
|
if (common::OB_INVALID_COUNT == next_wf_pby_expr_cnt_to_transmit_) {
|
||||||
|
Reference in New Issue
Block a user