已开启
[Bug]: pg全量迁移中,进度上报存在异常json格式 #290
lvlintao666创建于  12 天前
lvlintao666
lvlintao666成员
12 天前 创建

测试类型

工具功能

测试版本

7.0.0LTS

问题描述

操作系统和硬件信息

2203 arm

测试环境

企业版主备

被测功能

预置条件

操作步骤

安装datakit,执行pg全量迁移任务
源端执行以下SQL

create table num(
c_smallint smallint,
c_integer integer,
c_bigint bigint,
c_decimal decimal,
c_numeric numeric,
c_real real,
c_double double precision,
c_smallserial smallserial,
c_serial serial,
c_bigserial bigserial
);
insert into num values(-32768,-2147483648,-9223372036854775808,3.4*10^3,3.4555*10^3,3.4028235*10^38,1.7976931348623157*10^308,32767,2147483647,9223372036854775807);
insert into num values(32767,2147483647,9223372036854775807,-3.4*10^3,-3.4555*10^3,-1.175494351*10^(-38),-2.2250738585072014*10^(-308),1,1,1);
insert into num values(32767,2147483647,9223372036854775807,-3.4*10^3,-3.4555*10^3,'Infinity','Infinity',1,1,1);
insert into num values(32767,2147483647,9223372036854775807,-3.4*10^3,-3.4555*10^3,'-Infinity','-Infinity',1,1,1);
insert into num values(32767,2147483647,9223372036854775807,-3.4*10^3,-3.4555*10^3,'NaN','NaN',1,1,1);
drop table if exists t_char;
create table t_char(t1 character varying(4),t2 char(4),t3 text, t4 char,t5 name);
insert into t_char values('tes','res', REPEAT('postgresql', 3000), 'c', REPEAT('MySQL', 3));
insert into t_char values('test','rstt', REPEAT('&*&SS@#3223\"', 3), 'c', REPEAT('中文汉字', 300));
CREATE TABLE test1 (a character(4));
INSERT INTO test1 VALUES ('ok');
CREATE TABLE test2 (b varchar(5));
INSERT INTO test2 VALUES ('ok');
INSERT INTO test2 VALUES ('good      ');
INSERT INTO test2 VALUES ('too long'::varchar(5));
create table bytea_type(t1 bytea);
insert into bytea_type values('\000'),(''''),('\047'),('\\'),('\134'),('\001'),('\176');
create table line_type(t1 point, t2 line, t3 lseg, t4 box, t5 path, t6 path, t7 polygon, t8 circle);
INSERT INTO line_type VALUES
('(32767,32767)',
 '[(0,0),(32767,32767)]',
 '[(0,0),(32767,32767)]',
 '((0,0),(32767,32767))',
 '((0,0),(32767,0),(32767,32767))',
 '((0,0),(32767,0),(32767,32767),(0,32767))',
 '((0,0),(32767,0),(32767,32767),(0,32767))',
 '<(16383,16383),16383>');
INSERT INTO line_type VALUES 
('(0,0)', 
 '[(0,0),(0.1,0.1)]', 
 '[(0,0),(0,0)]',  
 '((0,0),(1,1))', 
 '((0,0))',        
 '((0,0))',        
 '((0,0),(1,0),(0,1))',
 '<(0,0),0.1>');
 CREATE TYPE address_type AS (
 country VARCHAR(50),
 city VARCHAR(50),
 zip_code VARCHAR(20)
);
CREATE TABLE user_profile (
 id SERIAL,
 user_name VARCHAR(255),
 location address_type,
 created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO user_profile (user_name, location)
VALUES (
 REPEAT('a',255),
 (REPEAT('中国',8), REPEAT('北京',8), '10000000000000000000')
);
create table type_range(t1 int4range,t2 int8range, t3 numrange, t4 tsrange, t5 tstzrange, t6 daterange);
INSERT INTO type_range (t1, t6)
VALUES ('[1,5]', '[2023-01-01, 2023-01-05]');
INSERT INTO type_range (t2, t3)
VALUES ('[100, 200)', '[3.14, 9.99)');
INSERT INTO type_range (t4, t5)
VALUES (
    '(2023-01-01 08:00:00, 2023-01-01 18:00:00]',
    '(2023-01-01T00:00:00+08, 2023-01-01T23:59:59+08]'
);
INSERT INTO type_range (t1, t3)
VALUES ('(,10]', '(,100.5]');
INSERT INTO type_range (t6)
VALUES ('[2023-01-01,)');
INSERT INTO type_range (t3)
VALUES ('empty');
INSERT INTO type_range (t5)
VALUES ('["2023-01-01 00:00:00 UTC", "2023-01-01 23:59:59 Asia/Shanghai")');
INSERT INTO type_range (t3)
VALUES ('[3.1415926, 9.999999999999999]');
CREATE TABLE wal_logs (
 id SERIAL PRIMARY KEY,
 lsn pg_lsn NOT NULL,
 log_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP 
);
INSERT INTO wal_logs (lsn) VALUES ('16/B374D848');
INSERT INTO wal_logs (lsn) VALUES ('0/0');
INSERT INTO wal_logs (lsn) VALUES ('FFFFFFFF/FFFFFFFF');
CREATE TABLE parent (id SERIAL, name TEXT);
CREATE TABLE child () INHERITS (parent);
INSERT INTO child (name) VALUES ('test'); 
INSERT INTO parent VALUES (1,'parent'), (2,'parent');
INSERT INTO child VALUES (3,'child');
CREATE INDEX idx_parent_name ON parent(name);
CREATE TABLE father (f_attr INT);
CREATE TABLE mother (m_attr TEXT);
CREATE TABLE childs (c_attr DATE) INHERITS (father, mother);
INSERT INTO childs VALUES (1, 'test', '2025-01-01');

预期输出

成功迁移,进度日志正常

实际输出

image.png

{
  "foreignkey": [],
  "function": [],
  "index": [],
  "primarykey": [],
  "procedure": [],
  "sequence": [],
  "table": [
    {
      "data": 2048,
      "name": "type_range",
      "percent": 1,
      "record": 8,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "wal_logs",
      "percent": 1,
      "record": 3,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "mother",
      "percent": 1,
      "record": 0,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "father",
      "percent": 1,
      "record": 0,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "t_char",
      "percent": 1,
      "record": 2,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "user_profile",
      "percent": 1,
      "record": 1,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "num",
      "percent": 1,
      "record": 5,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "parent",
      "percent": 1,
      "record": 2,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "test2",
      "percent": 1,
      "record": 3,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "test1",
      "percent": 1,
      "record": 1,
      "schema": "public",
      "status": 3
    },
    {
      "data": 0,
      "percent": 0,
      "record": 0,
      "status": 1
    },
    {
      "data": 0,
      "percent": 0,
      "record": 0,
      "status": 1
    },
    {
      "data": 2048,
      "name": "line_type",
      "percent": 1,
      "record": 2,
      "schema": "public",
      "status": 3
    },
    {
      "data": 2048,
      "name": "bytea_type",
      "percent": 1,
      "record": 7,
      "schema": "public",
      "status": 3
    }
  ],
  "total": {
    "data": 24,
    "record": 34,
    "speed": 0.02,
    "time": 1276
  },
  "trigger": [],
  "view": []
}

日志信息

如上

提单组织

测试团队

测试代码

likedislike
lvlintao666lvlintao666成员
12 天前 添加了label:bug
lvlintao666lvlintao666成员
12 天前 关联了看板:openGauss 7.0.0-LTS
opengauss_botopengauss_bot成员
12 天前 添加了label:sig/Tools
opengauss_bot
opengauss_bot成员
12 天前 评论:

Welcome To openGauss Community

Hey @u012280419 , thanks for your contribution to the community.

Bot Usage Manual

I'm the Bot here serving you. You can find the instructions on how to interact with me at Here . That means you can comment below every pull request or issue to trigger Bot Commands.

Contact Guide

If you have any questions, please contact the SIG: Tools ,
and any of the maintainers: @CarrotGo, @chendong76, @chenxiaobin19, @congzhou2603, @dodders, @hwworkholic, @jemappellehc, @muyulinzhong, @quemingjian, @shenzheng4, @shirley_zhengx, @superlchf, @totaj, @wlff234, @wofanzheng, @ywzq1161327784 ,
and any of the committers: @hw_hbj, @justbk, @libiao2024, @wang4721, @wang_xingmiao, @zhangxubo .

likedislike
xujintaoxujintao成员
17 小时前 关联了pull request:继承表问题修复