文档首页/ 数据湖探索 DLI/ 常见问题/ SQL作业类/ SQL作业运维报错类/ 使用CDM迁移数据到DLI,迁移作业日志上报UQUERY_CONNECTOR_0001:Invoke DLI service api failed错误
更新时间:2024-11-08 GMT+08:00

使用CDM迁移数据到DLI,迁移作业日志上报UQUERY_CONNECTOR_0001:Invoke DLI service api failed错误

问题现象

在CDM迁移数据到DLI,迁移作业提交后,在CDM作业迁移日志中查看作业执行失败,具体日志有如下报错信息:
org.apache.sqoop.common.SqoopException: UQUERY_CONNECTOR_0001:Invoke DLI service api failed, failed reason is %s.
at org.apache.sqoop.connector.uquery.intf.impl.UQueryWriter.close(UQueryWriter.java:42)
at org.apache.sqoop.connector.uquery.processor.Dataconsumer.run(Dataconsumer.java:217)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

问题原因

在CDM界面创建迁移作业,配置DLI目的连接参数时,“资源队列”参数错误选成了DLI的“通用队列”,应该选择DLI的“SQL队列”。

解决方案

  1. 登录DLI管理控制台,选择“队列管理”,在队列管理界面查看是否有“SQL队列”类型的队列。
    • 是,执行3
    • 否,执行2购买“SQL队列”类型的队列。
  2. 选择“资源管理 > 弹性资源池”,选择已购买的弹性资源池,单击操作列的“添加队列”,其中队列类型选择“SQL队列”,选择其他参数后提交创建。
  3. 在CDM侧重新配置迁移作业的DLI目的连接参数,其中资源队列”参数选择已创建的DLI“SQL队列”。
  4. CDM重新提交迁移作业,查看作业执行日志。