mariadb Zendesk Maxwell崩溃/下降

vddsk6oq  于 2022-11-08  发布在  其他
关注(0)|答案(1)|浏览(158)

在我们的产品中,我们在docker上运行了maxwell,它被配置为监听MariadDb表上的更改,并将它们推送到Kafka主题。我们的MariadDb有大约10-12个表,我们将maxwell配置为只监听4个表,所有这4个表都被大量使用(写入数量太高)。
最近我们看到我们的Maxwell在下降,下面是我们在Maxwell下降时发现的几个错误日志

  1. Oct 28, 2022 @ 06:10:40.037 06:10:40,037 ERROR MysqlParserListener - (parse SET STATEMENT max_statement_time = 60 FOR flush table)
  2. Oct 28, 2022 @ 06:10:40.040 06:10:40,040 ERROR SchemaChange - Error parsing SQL: 'SET STATEMENT max_statement_time=60 FOR flush table'
  3. Oct 28, 2022 @ 06:10:40.047 06:10:40,045 ERROR AbstractSchemaStore - Error on bin log position Position[BinlogPosition[mysql-bin-changelog.049610:3209], lastHeartbeat=1666898518069]

由于最后一个错误日志显示错误在bin日志位置Position[BinlogPosition[mysql-bin-changelog.049610:3209],因此为了验证名称为mysql-bin-changelog.049610:3209的bin日志文件是否存在,我们运行SHOW binary logs;,并在上述命令输出的列表中找到该文件
请帮助我了解这里出了什么问题,并帮助解决问题

环境详细信息

  1. OS:Centos
    1.平台- AWS示例(T4 g中型)
  2. CPU - 2个CPU
    1.内存- 4GB

Maxwell版本- v1.37.7
注意:我们不处理DDL,日志保留期为3天

详细的日志记录时,麦克斯韦是去了,对不起张贴巨大的日志:)

  1. Oct 28, 2022 @ 06:10:39.084 06:10:39,082 INFO ProducerConfig - ProducerConfig values:
  2. Oct 28, 2022 @ 06:10:39.146 06:10:39,146 INFO AppInfoParser - Kafka commitId : aaa7af6d4a11b29d
  3. Oct 28, 2022 @ 06:10:39.146 06:10:39,146 INFO AppInfoParser - Kafka version : 1.0.0
  4. Oct 28, 2022 @ 06:10:39.188 06:10:39,187 INFO Maxwell - Maxwell v1.37.7 is booting (MaxwellKafkaProducer), starting at Position[BinlogPosition[mysql-bin-changelog.049610:3136], lastHeartbeat=1666898518069]
  5. Oct 28, 2022 @ 06:10:39.377 06:10:39,377 INFO MysqlSavedSchema - Restoring schema id 22 (last modified at Position[BinlogPosition[mysql-bin-changelog.046940:91534], lastHeartbeat=1666103424529])
  6. Oct 28, 2022 @ 06:10:39.502 06:10:39,502 INFO MysqlSavedSchema - Restoring schema id 1 (last modified at Position[BinlogPosition[mysql-bin-changelog.040524:418929], lastHeartbeat=0])
  7. Oct 28, 2022 @ 06:10:39.555 06:10:39,555 INFO MysqlSavedSchema - beginning to play deltas...
  8. Oct 28, 2022 @ 06:10:39.576 06:10:39,576 INFO MysqlSavedSchema - played 21 deltas in 15ms
  9. Oct 28, 2022 @ 06:10:39.601 06:10:39,601 INFO BinlogConnectorReplicator - Setting initial binlog pos to: mysql-bin-changelog.049610:3136
  10. Oct 28, 2022 @ 06:10:39.605 06:10:39,605 INFO MaxwellHTTPServer - Maxwell http server starting
  11. Oct 28, 2022 @ 06:10:39.607 06:10:39,607 INFO MaxwellHTTPServer - Maxwell http server started on port 8080
  12. Oct 28, 2022 @ 06:10:39.649 06:10:39,649 INFO BinlogConnectorReplicator - Binlog connected.
  13. Oct 28, 2022 @ 06:10:39.649 06:10:39,646 INFO BinaryLogClient - Connected to mariadb-nlp.app.engati.local:3306 at mysql-bin-changelog.049610/3136 (sid:6379, cid:1560183)
  14. Oct 28, 2022 @ 06:10:39.669 06:10:39,669 INFO log - Logging initialized @2288ms to org.eclipse.jetty.util.log.Slf4jLog
  15. Oct 28, 2022 @ 06:10:39.902 06:10:39,902 INFO Server - jetty-9.4.41.v20210516; built: 2021-05-16T23:56:28.993Z; git: 98607f93c7833e7dc59489b13f3cb0a114fb9f4c; jvm 11.0.15+10
  16. Oct 28, 2022 @ 06:10:40.037 06:10:40,037 ERROR MysqlParserListener - (parse SET STATEMENT max_statement_time = 60 FOR flush table)
  17. Oct 28, 2022 @ 06:10:40.040 06:10:40,040 ERROR SchemaChange - Error parsing SQL: 'SET STATEMENT max_statement_time=60 FOR flush table'
  18. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.Maxwell.main(Maxwell.java:336)
  19. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.Maxwell.start(Maxwell.java:227)
  20. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.Maxwell.startInner(Maxwell.java:301)
  21. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.util.RunLoopProcess.runLoop(RunLoopProcess.java:34)
  22. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.work(BinlogConnectorReplicator.java:228)
  23. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.getRow(BinlogConnectorReplicator.java:723)
  24. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.processQueryEvent(BinlogConnectorReplicator.java:400)
  25. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.processQueryEvent(BinlogConnectorReplicator.java:378)
  26. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.schema.MysqlSchemaStore.processSQL(MysqlSchemaStore.java:102)
  27. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.schema.AbstractSchemaStore.resolveSQL(AbstractSchemaStore.java:49)
  28. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.schema.ddl.SchemaChange.parse(SchemaChange.java:108)
  29. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.schema.ddl.SchemaChange.parseSQL(SchemaChange.java:94)
  30. Oct 28, 2022 @ 06:10:40.047 at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28)
  31. Oct 28, 2022 @ 06:10:40.047 at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:17)
  32. Oct 28, 2022 @ 06:10:40.047 at com.zendesk.maxwell.schema.ddl.MysqlParserListener.visitErrorNode(MysqlParserListener.java:93)
  33. Oct 28, 2022 @ 06:10:40.047 com.zendesk.maxwell.schema.ddl.MaxwellSQLSyntaxError: SET
  34. Oct 28, 2022 @ 06:10:40.047 06:10:40,045 ERROR AbstractSchemaStore - Error on bin log position Position[BinlogPosition[mysql-bin-changelog.049610:3209], lastHeartbeat=1666898518069]
  35. Oct 28, 2022 @ 06:10:40.047 06:10:40,044 INFO ContextHandler - Started o.e.j.s.ServletContextHandler@5628733f{/,null,AVAILABLE}
  36. Oct 28, 2022 @ 06:10:40.075 06:10:40,074 INFO Server - Started @2700ms
  37. Oct 28, 2022 @ 06:10:40.075 06:10:40,074 INFO AbstractConnector - Started ServerConnector@7152d3c1{HTTP/1.1, (http/1.1)}{0.0.0.0:8080}
  38. Oct 28, 2022 @ 06:10:40.129 06:10:40,129 INFO BinlogConnectorReplicator - Binlog disconnected.
  39. Oct 28, 2022 @ 06:10:40.149 06:10:40,149 INFO TaskManager - Stopping 5 tasks
  40. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.schema.ddl.SchemaChange.parseSQL(SchemaChange.java:94) ~[maxwell-1.37.7.jar:1.37.7]
  41. Oct 28, 2022 @ 06:10:40.187 at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28) ~[antlr4-runtime-4.8-1.jar:4.8-1]
  42. Oct 28, 2022 @ 06:10:40.187 at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:17) ~[antlr4-runtime-4.8-1.jar:4.8-1]
  43. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.schema.ddl.MysqlParserListener.visitErrorNode(MysqlParserListener.java:93) ~[maxwell-1.37.7.jar:1.37.7]
  44. Oct 28, 2022 @ 06:10:40.187 com.zendesk.maxwell.schema.ddl.MaxwellSQLSyntaxError: SET
  45. Oct 28, 2022 @ 06:10:40.187 06:10:40,152 ERROR TaskManager - cause:
  46. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.Maxwell.main(Maxwell.java:336) ~[maxwell-1.37.7.jar:1.37.7]
  47. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.Maxwell.start(Maxwell.java:227) ~[maxwell-1.37.7.jar:1.37.7]
  48. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.Maxwell.startInner(Maxwell.java:301) ~[maxwell-1.37.7.jar:1.37.7]
  49. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.util.RunLoopProcess.runLoop(RunLoopProcess.java:34) ~[maxwell-1.37.7.jar:1.37.7]
  50. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.work(BinlogConnectorReplicator.java:228) ~[maxwell-1.37.7.jar:1.37.7]
  51. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.getRow(BinlogConnectorReplicator.java:723) ~[maxwell-1.37.7.jar:1.37.7]
  52. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.processQueryEvent(BinlogConnectorReplicator.java:400) ~[maxwell-1.37.7.jar:1.37.7]
  53. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.processQueryEvent(BinlogConnectorReplicator.java:378) ~[maxwell-1.37.7.jar:1.37.7]
  54. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.schema.MysqlSchemaStore.processSQL(MysqlSchemaStore.java:102) ~[maxwell-1.37.7.jar:1.37.7]
  55. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.schema.AbstractSchemaStore.resolveSQL(AbstractSchemaStore.java:49) ~[maxwell-1.37.7.jar:1.37.7]
  56. Oct 28, 2022 @ 06:10:40.187 at com.zendesk.maxwell.schema.ddl.SchemaChange.parse(SchemaChange.java:108) ~[maxwell-1.37.7.jar:1.37.7]
  57. Oct 28, 2022 @ 06:10:40.189 06:10:40,189 INFO TaskManager - Stopping: com.zendesk.maxwell.schema.PositionStoreThread@51b3ee1b
  58. Oct 28, 2022 @ 06:10:40.191 06:10:40,189 INFO TaskManager - Stopping: com.zendesk.maxwell.producer.MaxwellKafkaProducerWorker@5ec6ffb6
  59. Oct 28, 2022 @ 06:10:40.192 06:10:40,192 INFO KafkaProducer - [Producer clientId=producer-1] Closing the Kafka producer with timeoutMillis = 9223372036854775807 ms.
  60. Oct 28, 2022 @ 06:10:40.201 06:10:40,201 INFO TaskManager - Stopping: com.zendesk.maxwell.monitoring.MaxwellHTTPServerWorker@1490968e
  61. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.Maxwell.main(Maxwell.java:336)
  62. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.Maxwell.start(Maxwell.java:227)
  63. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.Maxwell.startInner(Maxwell.java:301)
  64. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.util.RunLoopProcess.runLoop(RunLoopProcess.java:34)
  65. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.work(BinlogConnectorReplicator.java:228)
  66. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.getRow(BinlogConnectorReplicator.java:723)
  67. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.processQueryEvent(BinlogConnectorReplicator.java:400)
  68. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.replication.BinlogConnectorReplicator.processQueryEvent(BinlogConnectorReplicator.java:378)
  69. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.schema.MysqlSchemaStore.processSQL(MysqlSchemaStore.java:102)
  70. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.schema.AbstractSchemaStore.resolveSQL(AbstractSchemaStore.java:49)
  71. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.schema.ddl.SchemaChange.parse(SchemaChange.java:108)
  72. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.schema.ddl.SchemaChange.parseSQL(SchemaChange.java:94)
  73. Oct 28, 2022 @ 06:10:40.201 at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:28)
  74. Oct 28, 2022 @ 06:10:40.201 at org.antlr.v4.runtime.tree.ParseTreeWalker.walk(ParseTreeWalker.java:17)
  75. Oct 28, 2022 @ 06:10:40.201 at com.zendesk.maxwell.schema.ddl.MysqlParserListener.visitErrorNode(MysqlParserListener.java:93)
  76. Oct 28, 2022 @ 06:10:40.201 com.zendesk.maxwell.schema.ddl.MaxwellSQLSyntaxError: SET
  77. Oct 28, 2022 @ 06:10:40.201 06:10:40,199 INFO TaskManager - Stopping: com.zendesk.maxwell.replication.BinlogConnectorReplicator@5a1d68e0
  78. Oct 28, 2022 @ 06:10:40.201 06:10:40,198 INFO TaskManager - Stopping: com.zendesk.maxwell.bootstrap.BootstrapController@3857c48d
  79. Oct 28, 2022 @ 06:10:40.220 06:10:40,219 INFO AbstractConnector - Stopped ServerConnector@7152d3c1{HTTP/1.1, (http/1.1)}{0.0.0.0:8080}
  80. Oct 28, 2022 @ 06:10:40.223 06:10:40,223 INFO ContextHandler - Stopped o.e.j.s.ServletContextHandler@5628733f{/,null,STOPPED}
  81. ct 28, 2022 @ 06:10:41.637 06:10:41,636 INFO TaskManager - Stopped all tasks
cu6pst1q

cu6pst1q1#

Java回溯显示这是Maxwell中的错误。
问题是,v1.37.7中的Maxwell没有根据SQL黑名单(如FLUSH)解析SET STATEMENT ... FOR,而这意味着它不采取任何行动。
由于上游的响应速度非常快,这一问题在v1.39.2中得到了修复。

相关问题