【DLI运维宝典】通过DLI跨源写DWS表,非空字段出现空值异常
【摘要】 用户在DWS建业务表,然后在DLI创建跨源链接读写该表,某一天突然出现如下异常,报错信息显示DLI向该表某非空字段写入了空值,因为非空约束存在导致作业出错,但用户源数据不为空值,如何定位该问题?
故障场景
用户在DWS建业务表,然后在DLI创建跨源链接读写该表,某一天突然出现如下异常,报错信息显示DLI向该表某非空字段写入了空值,因为非空约束存在导致作业出错。
故障分析
1. DLI源表对应字段cir为double类型
2. 目标表对应字段类型为decimal(9,6)
3. 查询源表数据,发现导致问题产生的记录ctr值为1675,整数位(4位)超出所定义的decimal精度(9 – 6 = 3位),导致double转decimal时overflow产生null值,而对应dws表字段为非空导致插入失败。
故障恢复
修改目的表所定义的decimal精度即解决。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)