更新时间:2026-10-21 GMT+08:00
PGXC_COPY_ERROR_LOG
PGXC_COPY_ERROR_LOG系统视图用于捕捉COPY FROM过程的相关错误行,以便后续查阅。
| 名称 | 类型 | 描述 |
|---|---|---|
| relname | text | 表名称。以模式名.表名形式显示。 |
| begintime | timestamp with time zone | 出现数据格式错误的时间。 |
| filename | text | 出现数据格式错误的数据源文件名。 |
| lineno | bigint | 在数据源文件中,出现数据格式错误的行号。 |
| rawrecord | text | 在数据源文件中,出现数据格式错误的原始记录。 |
| detail | text | 详细错误信息。 |
| custom_id | text | 关联的COPY语法中copy_custom_id输入的值,表示本次导入的自定义标识信息。 |
- 查询pg_catalog.pgxc_copy_error_log系统视图时,显示所有CN和DN节点上pg_catalog.gs_copy_error_log表中的数据。等同于执行以下语句:
SELECT * FROM pg_catalog.pgxc_copy_error_func(false, false);
- 视图默认不对pg_catalog.gs_copy_error_old表做UNION ALL操作,如果想要兼容查询pg_catalog.gs_copy_error_old表中的数据,可以执行以下语句进行查询:
SELECT * FROM pg_catalog.pgxc_copy_error_func(true, false);
- 从此版本开始,pgxc_copy_error_log由系统表改成系统视图,因此无法对其执行TRUNCATE操作进行清理,执行TRUNCATE操作会抛出无法对视图进行此操作的相关报错。清理copy相关错误数据的两种情况如下。
- 非三权分立下,需要系统管理员用户执行以下语句进行清理:
TRUNCATE TABLE pg_catalog.gs_copy_error_log;
- 三权分立下,使用普通用户清理同名schema下的pgxc_copy_error_log表即可。
- 非三权分立下,需要系统管理员用户执行以下语句进行清理:
- 三权分立机制下,错误日志信息不会记录至pg_catalog.pgxc_copy_error_log和pg_catalog.gs_copy_error_log。若用户load_user需记录错误信息,需通过以下语句在其同名Schema下创建:
CREATE TABLE load_user.pgxc_copy_error_log (relname varchar, begintime timestamptz, filename varchar, lineno int8, rawrecord text, detail text); CREATE INDEX copy_error_log_relname_idx ON load_user.pgxc_copy_error_log(relname);
(可选)在表上添加custom_id列:
ALTER TABLE load_user.pgxc_copy_error_log ADD COLUMN custom_id varchar(64);
父主题: 其他系统视图