浏览代码

捕获"rs = query("select @@global.binlog_checksum")" 结果rs为null的异常

codebee 6 年之前
父节点
当前提交
032301102c
共有 1 个文件被更改,包括 7 次插入8 次删除
  1. 7 8
      parse/src/main/java/com/alibaba/otter/canal/parse/inbound/mysql/MysqlConnection.java

+ 7 - 8
parse/src/main/java/com/alibaba/otter/canal/parse/inbound/mysql/MysqlConnection.java

@@ -514,15 +514,14 @@ public class MysqlConnection implements ErosaConnection {
         ResultSetPacket rs = null;
         ResultSetPacket rs = null;
         try {
         try {
             rs = query("select @@global.binlog_checksum");
             rs = query("select @@global.binlog_checksum");
+            List<String> columnValues = rs.getFieldValues();
+            if (columnValues != null && columnValues.size() >= 1 && columnValues.get(0).toUpperCase().equals("CRC32")) {
+                binlogChecksum = LogEvent.BINLOG_CHECKSUM_ALG_CRC32;
+            } else {
+                binlogChecksum = LogEvent.BINLOG_CHECKSUM_ALG_OFF;
+            }
         } catch (Throwable e) {
         } catch (Throwable e) {
-            // ignore
-            return;
-        }
-
-        List<String> columnValues = rs.getFieldValues();
-        if (columnValues != null && columnValues.size() >= 1 && columnValues.get(0).toUpperCase().equals("CRC32")) {
-            binlogChecksum = LogEvent.BINLOG_CHECKSUM_ALG_CRC32;
-        } else {
+            logger.error("", e);
             binlogChecksum = LogEvent.BINLOG_CHECKSUM_ALG_OFF;
             binlogChecksum = LogEvent.BINLOG_CHECKSUM_ALG_OFF;
         }
         }
     }
     }