Greenplum外部表问题解决一例

Greenplum数据库好久不用都有些生疏了,今天在处理个数据分析需求时,碰到个问题,记录下排查过程。

外部表建好后,查询时爆出如下错,(一惊,好久没碰到问题了)

ERROR:  All 1000 first rows in this segment were rejected. Aborting operation regardless of REJECT LIMIT value. Last error was: invalid byte sequence for encoding "UTF8": 0xc8dd  (seg0 slice1 sdw1:40000 pid=28307)

DETAIL:  External table zx_temp_dnslog, file gpfdist://smdw:8003/100*.bak


原以为是字符集的问题,查了GP库的字符集,客户端的字符集等,改了GBK等等,没解决!!

查看数据文件,file下数据文件,一看傻眼了,原来是gzip的文件,但是文件末尾没有带.gz

问题应该就是这了,

将文件名批量改为.gz后,外部表查询正常。

原因:GP外部表在使用压缩文件作为引用数据时,会使用gzip进行解压的,

如果在操作系统下,使用gzip 解压一个不带.gz的文件,也是不认的。

gzip: asaa.txt.bak: unknown suffix -- ignored

--asaa.txt是gzip后的改名文件。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值