Skip to content

'Binlog dump' 线程'Writing to net'超时后断开,任务running但不迁移 #416

@BigBeauty

Description

@BigBeauty
  • 环境
    Dtle 2.19.01.0
    部署三节点即为manager又为agent
    配置job开启failover
    源数据库5.6 目标数据库5.6
    迁移数据量378万条
    网络均可达

  • 操作
    不设置job的GTID,配置job为全量+增量迁移。
    在创建job同时向源数据库插入数据压力

  • 现象
    全量迁移过程正常,可在日志中看到job“mysql.extractor: Beginning streaming”,开始增量迁移。增量迁移过程中源数据库show processlist,查看binlog dump进程为“Writing to net”状态,200秒左右断开。断开后,job状态为running,目标端有增量数据,但落后源库。
    image

一段时间后检查源端数据和目标端数据,发现数据量不一致且不再继续增加,job状态为running。此时向源库插入数据,无法同步。
尝试暂停恢复job,发现binlog dump 进程状态“Writing to net”一段时间后“Master has sent all binlog to slave; waiting for binlog to be updated”。再向源端插入数据,无法继续迁移。

binlog dump是否有重连或超时机制?源库的max_allowed_packet设置为1G,出现“Writing to net”是否考虑数据量过大?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions