[fix](insert) fix forget to abort txn when insert checkStrictMode failed (#34612) (#34632)

This commit is contained in:
Xin Liao
2024-05-10 11:29:11 +08:00
committed by GitHub
parent fcbdd77f78
commit c055174483

View File

@ -159,16 +159,14 @@ public abstract class AbstractInsertExecutor {
}
}
private boolean checkStrictMode() {
private void checkStrictMode() throws Exception {
// if in strict mode, insert will fail if there are filtered rows
if (ctx.getSessionVariable().getEnableInsertStrict()) {
if (filteredRows > 0) {
ctx.getState().setError(ErrorCode.ERR_FAILED_WHEN_INSERT,
"Insert has filtered data in strict mode, tracking_url=" + coordinator.getTrackingUrl());
return false;
ErrorReport.reportDdlException("Insert has filtered data in strict mode",
ErrorCode.ERR_FAILED_WHEN_INSERT);
}
}
return true;
}
/**
@ -178,9 +176,7 @@ public abstract class AbstractInsertExecutor {
beforeExec();
try {
execImpl(executor, jobId);
if (!checkStrictMode()) {
return;
}
checkStrictMode();
onComplete();
} catch (Throwable t) {
onFail(t);