fixed kill CONNECTION exception

This commit is contained in:
agapple
2016-07-26 10:59:09 +08:00
parent 3a5a4b06a9
commit eda24df3fe
2 changed files with 16 additions and 15 deletions

View File

@@ -281,7 +281,7 @@ public class JsonConversion {
buf.append(", "); buf.append(", ");
} }
buf.append('"').append(key(i)).append('"'); buf.append('"').append(key(i)).append('"');
buf.append(" :"); buf.append(": ");
element(i).toJsonString(buf); element(i).toJsonString(buf);
} }
buf.append("}"); buf.append("}");

View File

@@ -27,22 +27,22 @@ import com.alibaba.otter.canal.parse.driver.mysql.utils.PacketManager;
*/ */
public class MysqlConnector { public class MysqlConnector {
private static final Logger logger = LoggerFactory.getLogger(MysqlConnector.class); private static final Logger logger = LoggerFactory.getLogger(MysqlConnector.class);
private InetSocketAddress address; private InetSocketAddress address;
private String username; private String username;
private String password; private String password;
private byte charsetNumber = 33; private byte charsetNumber = 33;
private String defaultSchema = "retl"; private String defaultSchema = "retl";
private int soTimeout = 30 * 1000; private int soTimeout = 30 * 1000;
private int receiveBufferSize = 16 * 1024; private int receiveBufferSize = 16 * 1024;
private int sendBufferSize = 16 * 1024; private int sendBufferSize = 16 * 1024;
private SocketChannel channel; private SocketChannel channel;
private volatile boolean dumping = false; private volatile boolean dumping = false;
// mysql connectinnId // mysql connectinnId
private long connectionId = -1; private long connectionId = -1;
private AtomicBoolean connected = new AtomicBoolean(false); private AtomicBoolean connected = new AtomicBoolean(false);
public MysqlConnector(){ public MysqlConnector(){
} }
@@ -103,7 +103,8 @@ public class MysqlConnector {
MysqlUpdateExecutor executor = new MysqlUpdateExecutor(connector); MysqlUpdateExecutor executor = new MysqlUpdateExecutor(connector);
executor.update("KILL CONNECTION " + connectionId); executor.update("KILL CONNECTION " + connectionId);
} catch (Exception e) { } catch (Exception e) {
throw new IOException("KILL DUMP " + connectionId + " failure:" + ExceptionUtils.getStackTrace(e)); // 忽略具体异常
logger.warn("KILL DUMP " + connectionId + " failure:" + ExceptionUtils.getStackTrace(e));
} finally { } finally {
if (connector != null) { if (connector != null) {
connector.disconnect(); connector.disconnect();