注册

错误码6141执行指令过长

发型不乱 2024/03/06 488 2 已解决

【DM版本】:
select * from v$instance;
DM Database Server 64 V8
DB Version: 0x7000c

【操作系统】:
cat /etc/os-release
Kylin Linux Advanced Server V10 (Lance)

【CPU】:
lscpu
aarch64
Karunpeng-920

【问题描述】:
表范围分区+普通索引+context index全文索引,查询提示错误码6141执行指令过长。
虽然没有对全文索引做增量和全量更新,索引最多失效,查询效率降低,不应该引起这么大的副作用

【复现过程】:
1、建表,插入数据,查询
dmp1.png
其中c1列无索引,c2列有btree索引,c3列有全文索引
1)在非索引列c1上查询,执行正常
2)在普通索引列c2上查询,执行错误

2、去掉表分区,查询都执行正常
dmp2.png

3、去掉全文索引,查询都执行正常

【其他】:
附复现sql

drop table tb_pt_test;
-- 1、按月自动分区
create table tb_pt_test (id varchar(64) not null, c1 VARCHAR, c2 VARCHAR, c3 VARCHAR, create_time timestamp)
PARTITION BY RANGE 
             ( 
                          create_time 
             ) 
             INTERVAL 
             ( 
                          NUMTOYMINTERVAL (1, 'month') 
             ) 
             ( PARTITION P_BEFORE_2024 VALUES LESS THAN (TO_DATE ('2024-01-01', 'yyyy-mm-dd'))) STORAGE 
             ( 
                          FILLFACTOR 85, 
                          BRANCH(32,32) 
             );
-- 2、对主表的c2列创建默认索引
create index idx_tb_pt_test_c2 on tb_pt_test(c2);
-- 3、对主表的c3列创建全文索引
create context index idx_tb_pt_test_c3 on tb_pt_test(c3) LEXER DEFAULT_LEXER;
-- 4、插入一条数据
INSERT INTO tb_pt_test VALUES ('1', 'v11', 'v12', 'v13', '2024-03-01 09:00:00');
-- 5.1、查询,条件字段上无索引
select * from tb_pt_test where c1 = 'v11';
-- 5.2、查询,条件字段上有索引
select * from tb_pt_test where c2 = 'v12';
回答 0
暂无回答
扫一扫
联系客服