提交 963de331 编写于 作者: T terrymanu

refactor SQLPacketsBackendHandler

上级 387d4007
......@@ -53,6 +53,7 @@ import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
......@@ -72,8 +73,6 @@ public final class SQLPacketsBackendHandler implements BackendHandler {
private final DatabaseType databaseType;
private boolean isMerged;
private boolean hasMoreResultValueFlag;
private final Map<String, List<Channel>> channelsMap = Maps.newHashMap();
......@@ -91,7 +90,6 @@ public final class SQLPacketsBackendHandler implements BackendHandler {
public SQLPacketsBackendHandler(final CommandPacketRebuilder rebuilder, final DatabaseType databaseType) {
this.rebuilder = rebuilder;
this.databaseType = databaseType;
isMerged = false;
hasMoreResultValueFlag = true;
ruleRegistry = RuleRegistry.getInstance();
}
......@@ -197,7 +195,6 @@ public final class SQLPacketsBackendHandler implements BackendHandler {
try {
mergedResult = MergeEngineFactory.newInstance(ruleRegistry.getShardingRule(), queryResults,
sqlStatement, ruleRegistry.getShardingMetaData()).merge();
isMerged = true;
} catch (final SQLException ex) {
return new CommandResponsePackets(new ErrPacket(1, ex));
}
......@@ -206,8 +203,8 @@ public final class SQLPacketsBackendHandler implements BackendHandler {
@Override
public boolean hasMoreResultValue() throws SQLException {
if (!isMerged || !hasMoreResultValueFlag) {
for (Map.Entry<String, List<Channel>> entry : channelsMap.entrySet()) {
if (null == mergedResult || !hasMoreResultValueFlag) {
for (Entry<String, List<Channel>> entry : channelsMap.entrySet()) {
for (Channel each : entry.getValue()) {
ShardingProxyClient.getInstance().getPoolMap().get(entry.getKey()).release(each);
}
......
......@@ -72,8 +72,6 @@ public final class JDBCBackendHandler implements BackendHandler {
private int currentSequenceId;
private boolean isMerged;
@Getter
private boolean hasMoreResultValueFlag;
......@@ -82,7 +80,6 @@ public final class JDBCBackendHandler implements BackendHandler {
this.executeEngine = executeEngine;
ruleRegistry = RuleRegistry.getInstance();
backendConnection = executeEngine.getBackendConnection();
isMerged = false;
hasMoreResultValueFlag = true;
}
......@@ -129,7 +126,6 @@ public final class JDBCBackendHandler implements BackendHandler {
ruleRegistry.getShardingRule(), ((ExecuteQueryResponse) executeResponse).getQueryResults(), sqlStatement, ruleRegistry.getShardingMetaData()).merge();
QueryResponsePackets result = ((ExecuteQueryResponse) executeResponse).getQueryResponsePackets();
currentSequenceId = result.getPackets().size();
isMerged = true;
return result;
}
......@@ -151,7 +147,7 @@ public final class JDBCBackendHandler implements BackendHandler {
@Override
public boolean hasMoreResultValue() throws SQLException {
if (!isMerged || !hasMoreResultValueFlag) {
if (null == mergedResult || !hasMoreResultValueFlag) {
backendConnection.close();
return false;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册