mirror of
https://github.com/actiontech/dble.git
synced 2026-01-05 20:30:40 -06:00
inner 1970 - handle multi-statement error when sql contains ddl (#3459)
* inner 1970 - handle multi-statement error when sql contains ddl * inner 1970 - handle multi node * inner 1970 - fix case that ddl fails to execute
This commit is contained in:
@@ -198,10 +198,9 @@ public class MultiNodeDDLExecuteHandler extends MultiNodeQueryHandler {
|
||||
ok.setMessage(null);
|
||||
ok.setAffectedRows(0);
|
||||
ok.setServerStatus(source.isAutocommit() ? 2 : 1);
|
||||
boolean multiStatementFlag = session.multiStatementPacket(ok, packetId);
|
||||
session.multiStatementPacket(ok, packetId);
|
||||
doSqlStat();
|
||||
handleEndPacket(ok.toBytes(), true);
|
||||
session.multiStatementNextSql(multiStatementFlag);
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
|
||||
@@ -96,11 +96,9 @@ public class SingleNodeDDLHandler extends SingleNodeHandler {
|
||||
session.releaseConnectionIfSafe(conn, false);
|
||||
session.setResponseTime(true);
|
||||
session.multiStatementPacket(ok, packetId);
|
||||
boolean multiStatementFlag = session.getIsMultiStatement().get();
|
||||
if (writeToClient.compareAndSet(false, true)) {
|
||||
handleEndPacket(ok.toBytes(), true);
|
||||
}
|
||||
session.multiStatementNextSql(multiStatementFlag);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -117,12 +115,10 @@ public class SingleNodeDDLHandler extends SingleNodeHandler {
|
||||
session.releaseConnectionIfSafe(conn, false);
|
||||
session.setResponseTime(false);
|
||||
session.multiStatementPacket(errPacket, packetId);
|
||||
boolean multiStatementFlag = session.getIsMultiStatement().get();
|
||||
doSqlStat();
|
||||
if (writeToClient.compareAndSet(false, true)) {
|
||||
handleEndPacket(errPacket.toBytes(), false);
|
||||
}
|
||||
session.multiStatementNextSql(multiStatementFlag);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user