DORIS BE 固定执行某个sql 宕机

Viewed 126

BE 3节点执行某个sql 全部宕机
image.png
image.png
执行sql 为:SELECT COUNT( * ) AS total FROM T_BILL_USER WHERE (merchant_id = 18 AND shop_id = 401)
一旦执行,必定宕机,3节点
版本:doris-2.1.1
操作系统:Ubuntu 20.04.5 LTS

T_BILL_USER 表有两个单列索引。merchant_id 和 shop_id,删掉这两个索引后,sql执行成功。

2 Answers

可以提供下建表语句,我们这边复现下看看

建表ddl:
CREATE TABLE T_BILL_USER
(
ID BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
MERCHANT_ID BIGINT NOT NULL COMMENT '商户ID',
SHOP_ID BIGINT NOT NULL COMMENT '门店ID',
BILL_NO VARCHAR(50) NOT NULL COMMENT '单号',
CONSUME_TIME DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '消费时间',
BILL_ITEM_ID VARCHAR(50) NOT NULL COMMENT '流水单明细ID',
USER_ID VARCHAR(50) NOT NULL COMMENT '员工ID',
USER_NAME VARCHAR(50) NOT NULL COMMENT '员工姓名',
USER_LEVEL_ID VARCHAR(50) NOT NULL COMMENT '员工级别ID',
USER_LEVEL_NAME VARCHAR(50) NOT NULL COMMENT '员工级别名称',
EXT JSON NOT NULL COMMENT '源数据',
CREATE_TS DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
INDEX IDX_BILL_USER_MERCHANT_ID(MERCHANT_ID) COMMENT '索引:商户ID'
)
DUPLICATE KEY(ID)
COMMENT '流水单服务员工'
DISTRIBUTED BY HASH (BILL_NO) BUCKETS 32;

索引ddl:
ALTER TABLE T_BILL_USER ADD INDEX IDX_BILL_USER_MERCHANT_ID (MERCHANT_ID);
ALTER TABLE T_BILL_USER ADD INDEX IDX_BILL_SHOP_ID (SHOP_ID);
BUILD INDEX IDX_BILL_USER_MERCHANT_ID ON T_BILL_USER;
BUILD INDEX IDX_BILL_SHOP_ID ON T_BILL_USER;