报错内容如下:
character 0xf09f918c of encoding "UTF8" has no equivalent in "GB18030" (seg42 slice3 sdw33-3:30002 pid=18579)
一开始以为是客户端的编码类型没有转换。
设置了set client_encoding to utf8;之后,问题仍旧没有解决。
迷糊中记得gp的开窗函数,当partition by 字符的时候,可能会报错。
所以就把dense_rank() over(partition by hash_py(a.member_id),a.category_id order by a.is_filt desc,b.kw_cnt desc,a.cate_cnt desc,trim(a.keyword) asc) as rank_seq
中的trim(a.keyword)去掉了。
果然就ok了,但由于在这之前一直都没有报错,今天才开始这样,所以有理由怀疑keyword中进了脏字符,导致dense_rank挂掉了。
具体的原因,等待后续找个时间再check下。