24 Star 25 Fork 186

openGauss / Plugin

 / 详情

【业务范畴:开源】【测试类型:插件】【测试活动:社区】【测试版本:master】【特性名称:算子插件化】【环境:裸机】创建分区表,调用tidrangescan失败

已验收
缺陷
创建于  
2021-09-17 18:45

【标题描述】:
【测试类型:算子插件化】【测试版本:2.0.0】 创建分区表,调用tidrangescan失败
【操作系统和硬件信息】(查询命令: cat /etc/system-release, uname -a):
openEuler release 20.03 (LTS)
Linux openGauss33 4.19.90-2003.4.0.0036.oe1.aarch64 #1 SMP Mon Mar 23 19:06:43 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux

【测试环境】(单机/1主x备x级联备):
单机
【被测功能】:
算子插件化demo:tidrangescan
【测试类型】:
功能测试
【数据库版本】(查询命令: gaussdb –V):
gaussdb (openGauss 2.0.0 build ) compiled at 2021-09-15 09:04:15 commit 0 last mr
【预置条件】:
1.编译安装单机数据库
2.编译安装插件tidrangescan并创建拓展tidrangescan
【操作步骤】(请填写详细的操作步骤):
1.创建分区表,插入数据
--普通行存range分区表
create table t_tidrangescan_0008_03(c_int1 int,c_varchar varchar default 'test') partition by range(c_int1)(partition p1 values less than(100),partition p2 values less than(500),partition p3 values less than(1001));
create table t_tidrangescan_0008_04(c_int1 int,c_varchar varchar default 'test') partition by range(c_int1)(partition p1 values less than(100),partition p2 values less than(maxvalue));
--普通行存hash分区表,列存,临时行存,全局临时行存不支持
create table t_tidrangescan_0008_05(c_int1 int,c_varchar varchar default 'test') partition by hash(c_int1)(partition p1);
--普通行存list分区表,列存,临时行存,全局临时行存不支持
create table t_tidrangescan_0008_06(c_int1 int,c_varchar varchar default 'test') partition by list(c_int1)(partition p1 values(1),partition p2 values(2),partition p3 values(3));
--间隔行存range分区表
create table t_tidrangescan_0008_07(c_date date,c_varchar varchar default 'test') partition by range(c_date) interval ('1 day' )
(partition p1 values less than ('1900-01-01 00:00:00'));
2.调用tidrangescan
show enable_tidrangescan;show enable_seqscan;
set enable_tidrangescan to on;
set enable_seqscan to off;
show enable_tidrangescan;show enable_seqscan;
explain performance select count() from t_tidrangescan_0008_03 where ctid < '(2,0)' and ctid > '(0,0)';
explain performance select count(
) from t_tidrangescan_0008_04 where ctid < '(2,0)' and ctid > '(0,0)';
explain performance select count() from t_tidrangescan_0008_05 where ctid < '(2,0)' and ctid > '(0,0)';
explain performance select count(
) from t_tidrangescan_0008_06 where ctid < '(2,0)' and ctid > '(0,0)';
explain performance select count(*) from t_tidrangescan_0008_07 where ctid < '(2,0)' and ctid > '(0,0)';
【预期输出】:
1.建表插入数据成功
2.执行成功,走Tid Range Scan
【实际输出】:
1.建表插入数据成功
2.执行失败:提示【ERROR: could not open file "base/15225/65745": No such file or directory】
【原因分析】:

  1. 这个问题的根因
  2. 问题推断过程
  3. 还有哪些原因可能造成类似现象
  4. 该问题是否有临时规避措施
  5. 问题解决方案
  6. 预计修复问题时间

【日志信息】(请附上日志文件、截图、coredump信息):
postgres=# explain performance select count() from t_tidrangescan_0008_03 where ctid < '(2,0)' and ctid > '(0,0)';
ERROR: could not open file "base/15225/65745": No such file or directory
postgres=# explain performance select count(
) from t_tidrangescan_0008_04 where ctid < '(2,0)' and ctid > '(0,0)';
ERROR: could not open file "base/15225/65762": No such file or directory
postgres=# explain performance select count() from t_tidrangescan_0008_05 where ctid < '(2,0)' and ctid > '(0,0)';
ERROR: could not open file "base/15225/65775": No such file or directory
postgres=# explain performance select count(
) from t_tidrangescan_0008_06 where ctid < '(2,0)' and ctid > '(0,0)';
ERROR: could not open file "base/15225/65784": No such file or directory
postgres=# explain performance select count(*) from t_tidrangescan_0008_07 where ctid < '(2,0)' and ctid > '(0,0)';
ERROR: could not open file "base/15225/65801": No such file or directory

【测试代码】:

评论 (3)

wangxiang 创建了缺陷
wangxiang 负责人设置为chenxiaobin
wangxiang 关联仓库设置为openGauss/Plugin
wangxiang 关联分支设置为master
wangxiang 优先级设置为主要
wangxiang 添加了
 
sig/sqlengine
标签
展开全部操作日志

Hey @wangxiang, Welcome to openGauss Community.
All of the projects in openGauss Community are maintained by @opengauss-bot.
That means the developers can comment below every pull request or issue to trigger Bot Commands.
Please follow instructions at https://gitee.com/opengauss/community/blob/master/contributors/command.en.md to find the details.

wangxiang 优先级主要 修改为不重要

1、tidrangescan目前属于演示算子插件化的一个demo,不随openGauss一起发布;
2、后续梳理tidrangescan在openGauss上表现和pg的其他差异项,视工作量再决策是否作为需求跟踪。

当前先将issue降级为不重要继续跟踪

chenxiaobin 通过opengauss/Plugin Pull Request !10任务状态待办的 修改为已完成

更新tidrangescan readme.md、分区表禁用tidrangescan

wangxiang 任务状态已完成 修改为已验收

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(3)
5622128 opengauss bot 1581905080
1
https://gitee.com/opengauss/Plugin.git
git@gitee.com:opengauss/Plugin.git
opengauss
Plugin
Plugin

搜索帮助