• canal同步出现` dump address /120.78.135.197:3306 has an error, retrying. caused by java.lang.IllegalArgumentException: null `


    canal同步出现dump address /120.78.135.197:3306 has an error, retrying. caused by java.lang.IllegalArgumentException: null

    2019-01-04 16:47:56.794 [destination = example , address = /120.78.135.197:3306 , EventParser] WARN c.a.o.c.p.inbound.mysql.rds.RdsBinlogEventParserProxy - find start position : EntryPosition[included=false,ournalName=mysql-bin.000001,position=1257,serverId=12,gtid=<null>,timestamp=1546591610000]
    2019-01-04 16:47:56.837 [destination = example , address = /120.78.135.197:3306 , EventParser] ERROR c.a.o.c.p.inbound.mysql.rds.RdsBinlogEventParserProxy - dump address /120.78.135.197:3306 has an error, retrying. caused by 
    java.lang.IllegalArgumentException: null
    	at java.util.concurrent.ThreadPoolExecutor.<init>(ThreadPoolExecutor.java:1314) ~[na:1.8.0_144]
    	at java.util.concurrent.ThreadPoolExecutor.<init>(ThreadPoolExecutor.java:1237) ~[na:1.8.0_144]
    	at java.util.concurrent.Executors.newFixedThreadPool(Executors.java:151) ~[na:1.8.0_144]
    	at com.alibaba.otter.canal.parse.inbound.mysql.MysqlMultiStageCoprocessor.start(MysqlMultiStageCoprocessor.java:84) ~[canal.parse-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:238) ~[canal.parse-1.1.0.jar:na]
    	at java.lang.Thread.run(Thread.java:748) [na:1.8.0_144]
    2019-01-04 16:47:56.838 [destination = example , address = /120.78.135.198:3306 , EventParser] ERROR com.alibaba.otter.canal.common.alarm.LogAlarmHandler - destination:example[java.lang.IllegalArgumentException
    	at java.util.concurrent.ThreadPoolExecutor.<init>(ThreadPoolExecutor.java:1314)
    	at java.util.concurrent.ThreadPoolExecutor.<init>(ThreadPoolExecutor.java:1237)
    	at java.util.concurrent.Executors.newFixedThreadPool(Executors.java:151)
    	at com.alibaba.otter.canal.parse.inbound.mysql.MysqlMultiStageCoprocessor.start(MysqlMultiStageCoprocessor.java:84)
    	at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:238)
    	at java.lang.Thread.run(Thread.java:748)
    ]
    2019-01-04 16:48:14.865 [destination = example , address = /120.78.135.197:3306 , EventParser] WARN  c.a.o.c.p.inbound.mysql.rds.RdsBinlogEventParserProxy - prepare to find start position just show master status
    2019-01-04 16:51:27.219 [Thread-6] INFO  c.a.otter.canal.instance.core.AbstractCanalInstance - stop CannalInstance for null-example 
    2019-01-04 16:51:28.046 [destination = example , address = /120.78.135.197:3306 , EventParser] ERROR c.a.o.c.p.inbound.mysql.rds.RdsBinlogEventParserProxy - ERROR ## findAsPerTimestampInSpecificLogFile has an error
    java.nio.channels.ClosedByInterruptException: null
    	at com.alibaba.otter.canal.parse.driver.mysql.socket.BioSocketChannel.read(BioSocketChannel.java:116) ~[canal.parse.driver-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.mysql.dbsync.DirectLogFetcher.fetch0(DirectLogFetcher.java:174) ~[canal.parse-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.mysql.dbsync.DirectLogFetcher.fetch(DirectLogFetcher.java:77) ~[canal.parse-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.mysql.MysqlConnection.seek(MysqlConnection.java:130) ~[canal.parse-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.mysql.MysqlEventParser.findAsPerTimestampInSpecificLogFile(MysqlEventParser.java:733) [canal.parse-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.mysql.MysqlEventParser.findEndPositionWithMasterIdAndTimestamp(MysqlEventParser.java:388) [canal.parse-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.mysql.MysqlEventParser.findStartPositionInternal(MysqlEventParser.java:443) [canal.parse-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.mysql.MysqlEventParser.findStartPosition(MysqlEventParser.java:362) [canal.parse-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:182) [canal.parse-1.1.0.jar:na]
    	at java.lang.Thread.run(Thread.java:748) [na:1.8.0_144]
    2019-01-04 16:51:28.047 [destination = example , address = /120.78.135.198:3306 , EventParser] WARN  c.a.o.c.p.inbound.mysql.rds.RdsBinlogEventParserProxy - find start position : EntryPosition[included=false,journalName=mysql-bin.000001,position=1687,serverId=12,gtid=<null>,timestamp=1546591682000]
    2019-01-04 16:51:28.089 [destination = example , address = /120.78.135.198:3306 , EventParser] ERROR c.a.o.c.p.inbound.mysql.rds.RdsBinlogEventParserProxy - parse events has an error
    com.alibaba.otter.canal.parse.exception.CanalParseException: dump address /120.78.135.197:3306 has an error, retrying. 
    Caused by: java.lang.IllegalArgumentException: null
    	at java.util.concurrent.ThreadPoolExecutor.<init>(ThreadPoolExecutor.java:1314) ~[na:1.8.0_144]
    	at java.util.concurrent.ThreadPoolExecutor.<init>(ThreadPoolExecutor.java:1237) ~[na:1.8.0_144]
    	at java.util.concurrent.Executors.newFixedThreadPool(Executors.java:151) ~[na:1.8.0_144]
    	at com.alibaba.otter.canal.parse.inbound.mysql.MysqlMultiStageCoprocessor.start(MysqlMultiStageCoprocessor.java:84) ~[canal.parse-1.1.0.jar:na]
    	at com.alibaba.otter.canal.parse.inbound.AbstractEventParser$3.run(AbstractEventParser.java:238) ~[canal.parse-1.1.0.jar:na]
    	at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_144]
    
    
    

    原因在 canal1.1.0版本中,canal.properties中没有配置canal.instance.parser.parallelThreadSize=256默认好像是256,这里就是cpu核数的问题。

    解决办法是更改虚拟机配置,设置成2个或以上cpu就能解决问题。通过对问题的分析,对于单cpu的物理机,无法通过修改cpu数量的情况,可以通过配置文件解决。
    canal.instance.parser.parallelThreadSize = 1,解决即可。
    转载请说明出处,谢谢:https://www.cnblogs.com/ontoweb-zp/p/10231966.html

  • 相关阅读:
    docker使用
    window版docker安装及配置
    mysql命令
    xshell
    git 命令
    分页器原理
    PCL-Kinfu编译手册
    cmake-add_definitions
    cmake-include_directories
    cmake-source_group
  • 原文地址:https://www.cnblogs.com/ontoweb-zp/p/10231966.html
Copyright © 2020-2023  润新知