本文为您介绍Lightning迁移过程可能存在的常见问题及处理方法。
Lightning无法使用
问题现象:Lightning无法使用,出现报错:
Caused by: org.postgresql.util.PSQLException: ERROR: Lightning service is not available on MaxCompute project (XXXX). Join the Dingtalk support group (35028911) for help.
。问题原因:MaxCompute Lightning服务已于2022年12月31日下线,产品侧已经按照流程分别于2021年12月、2022年3月、2022年11月对存量用户、新增用户等进行了短信、邮件、站内信、钉群通知推送。2023年3月份正在分批次对存量客户进行服务关停。
解决方案:请参见迁移Lightning至共享集群进行服务迁移。
Lightning如何迁移?
Lightning迁移方案请参见迁移Lightning至共享集群。
如何确认是否使用了Lightning服务?
在DataWorks的数据源管理页面查看连接信息列的JdbcUrl信息,如果包含lightning
相关字样,则代表使用了Lightning服务,进入数据源管理页面请参见创建与管理数据源。
Lightning下线是否影响MaxComoute其他服务?
非Lightning数据源的服务不会受到影响,MaxCompute本身服务没有影响。
共享集群使用报错:ERROR: CREATE TABLE is not supported for current instance.
,如何解决?
Hologres的共享集群不支持创建内部表,只支持对MaxCompute和OSS的外部表进行加速查询,使用限制请参见共享集群(MaxCompute BI加速)。
隐式函数转换不一致导致SQL报错
常见报错及解决方案如下。
含有
does not exist
类报错:operator does not exist: bigint = text
。operator does not exist: text = integer
。function replace(date, unknown, unknown) does not exist
。operator does not exist: text > numeric
。function substr(timestamp with time zone, integer, integer) does not exist
。
解决方案:使用如下命令创建Extension解决。
create extension lightning_compatible;
报错:
date/time field value out of range
。解决方案:使用如下命令设置参数解决。
alter database <db_name> set hg_experimental_functions_use_pg_implementation = 'to_char,to_date,to_timestamp';
部分BI工具(如Power BI)无法显示外部表
解决方案:使用如下命令创建Extension即可显示外部表。
create extension foreign_table_exposer;