Datax报错:在有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数
文章目录
- 一、背景
- 二、报错内容
- 三、解决方法
- 四、参数说明
一、背景
linux安装datax后,执行数据迁移任务报错。
datax自定义json内容如下:
{"job": {"setting": {"speed": {"channel": 3,"byte": 1048576},"errorLimit": {"record": 0,"percentage": 0.02}},"content": [{"reader": {"name": "mysqlreader","parameter": {"username": "root","password": "root","column": ["`id`","`app_name`","`title`","`order`","`address_type`","`address_list`"],"splitPk": "","connection": [{"table": ["job_group"],"jdbcUrl": ["jdbc:mysql://localhost:3306/dataxweb?useUnicode=true&characterEncoding=utf-8&useSSL=false"]}]}},"writer": {"name": "streamwriter","parameter": {"print": false,"encoding": "UTF-8"}}}]}
}
二、报错内容
2025-06-26 14:32:37.377 [job-0] ERROR JobContainer - Exception when job run
com.alibaba.datax.common.exception.DataXException: Code:[Framework-03], Description:[DataX引擎配置错误,该问题通常是由于DataX安装错误引起,请联系您的运维解决 .]. - 在有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数at com.alibaba.datax.common.exception.DataXException.asDataXException(DataXException.java:30) ~[datax-common-0.0.1-SNAPSHOT.jar:na]at com.alibaba.datax.core.job.JobContainer.adjustChannelNumber(JobContainer.java:430) ~[datax-core-0.0.1-SNAPSHOT.jar:na]at com.alibaba.datax.core.job.JobContainer.split(JobContainer.java:387) ~[datax-core-0.0.1-SNAPSHOT.jar:na]at com.alibaba.datax.core.job.JobContainer.start(JobContainer.java:117) ~[datax-core-0.0.1-SNAPSHOT.jar:na]at com.alibaba.datax.core.Engine.start(Engine.java:86) [datax-core-0.0.1-SNAPSHOT.jar:na]at com.alibaba.datax.core.Engine.entry(Engine.java:168) [datax-core-0.0.1-SNAPSHOT.jar:na]at com.alibaba.datax.core.Engine.main(Engine.java:201) [datax-core-0.0.1-SNAPSHOT.jar:na]
2025-06-26 14:32:37.383 [job-0] INFO StandAloneJobContainerCommunicator - Total 0 records, 0 bytes | Speed 0B/s, 0 records/s | Error 0 records, 0 bytes | All Task WaitWriterTime 0.000s | All Task WaitReaderTime 0.000s | Percentage 0.00%
2025-06-26 14:32:37.383 [job-0] ERROR Engine - 经DataX智能分析,该任务最可能的错误原因是:
com.alibaba.datax.common.exception.DataXException: Code:[Framework-03], Description:[DataX引擎配置错误,该问题通常是由于DataX安装错误引起,请联系您的运维解决 .]. - 在有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数at com.alibaba.datax.common.exception.DataXException.asDataXException(DataXException.java:30)at com.alibaba.datax.core.job.JobContainer.adjustChannelNumber(JobContainer.java:430)at com.alibaba.datax.core.job.JobContainer.split(JobContainer.java:387)at com.alibaba.datax.core.job.JobContainer.start(JobContainer.java:117)at com.alibaba.datax.core.Engine.start(Engine.java:86)at com.alibaba.datax.core.Engine.entry(Engine.java:168)at com.alibaba.datax.core.Engine.main(Engine.java:201)
三、解决方法
删除运行json中的job.setting.speed.byte
属性
删除后如下:
{"job": {"setting": {"speed": {"channel": 3},"errorLimit": {"record": 0,"percentage": 0.02}},"content": [{"reader": {"name": "mysqlreader","parameter": {"username": "root","password": "root","column": ["`id`","`app_name`","`title`","`order`","`address_type`","`address_list`"],"splitPk": "","connection": [{"table": ["job_group"],"jdbcUrl": ["jdbc:mysql://localhost:3306/dataxweb?useUnicode=true&characterEncoding=utf-8&useSSL=false"]}]}},"writer": {"name": "streamwriter","parameter": {"print": false,"encoding": "UTF-8"}}}]}
}
四、参数说明
关键参数
job.setting.speed.channel
: channel并发数job.setting.speed.record
: 全局配置channel的record限速job.setting.speed.byte
:全局配置channel的byte限速core.transport.channel.speed.record
:单个channel的record限速core.transport.channel.speed.byte
:单个channel的byte限速