mirror of
https://github.com/actiontech/dble.git
synced 2026-05-20 22:59:47 -05:00
ddl's prepare-stage must send the master instance
This commit is contained in:
@@ -101,7 +101,7 @@ public abstract class BaseDDLHandler implements ResponseHandler, ExecutableHandl
|
||||
} else {
|
||||
node.setRunOnSlave(rrs.getRunOnSlave());
|
||||
ShardingNode dn = DbleServer.getInstance().getConfig().getShardingNodes().get(node.getName());
|
||||
dn.getConnection(dn.getDatabase(), session.getShardingService().isTxStart(), sessionAutocommit, node, this, node);
|
||||
dn.getConnection(dn.getDatabase(), isMustWrite(), sessionAutocommit, node, this, node);
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
@@ -109,6 +109,10 @@ public abstract class BaseDDLHandler implements ResponseHandler, ExecutableHandl
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean isMustWrite() {
|
||||
return session.getShardingService().isTxStart();
|
||||
}
|
||||
|
||||
protected void executeInExistsConnection(BackendConnection conn, RouteResultsetNode node) {
|
||||
TraceManager.TraceObject traceObject = TraceManager.serviceTrace(session.getShardingService(), "execute-in-exists-connection");
|
||||
try {
|
||||
|
||||
+5
@@ -31,6 +31,11 @@ public class MultiNodeDdlPrepareHandler extends BaseDDLHandler {
|
||||
this.traceMessage = "execute-for-ddl-prepare";
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isMustWrite() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void innerExecute(BackendConnection conn, RouteResultsetNode node) {
|
||||
if (clearIfSessionClosed()) return;
|
||||
|
||||
Reference in New Issue
Block a user