
# ALM-50231 Doris中存在异常Tablet
#### 告警解释
告警模块按5分钟周期检查Doris集群中是否存在异常的Tablet，当存在异常Tablet时，产生此告警。
当检测到Doris集群中不存在异常Tablet时，告警恢复。
本章节仅适用于MRS 3.5.0-LTS版本，MRS 3.6.0-LTS及之后版本请参见[ALM-50231 BE进程页表项使用内存占节点内存的比率超过阈值](https://support.huaweicloud.com/usermanual-mrs/ALM-50231-1.html#ALM-50231-1)。
#### 告警属性
| 告警ID  | 告警级别 | 是否可自动清除 |
|:---|:---|:---|
| 50231 | 紧急   | 是       |
   
#### 告警参数
| 类别   | 参数名称 | 参数含义         |
|:---|:---|:---|
| 定位信息 | 来源   | 产生告警的集群或系统名称 |
| 定位信息 | 服务名  | 产生告警的服务名称    |
| 定位信息 | 角色名  | 产生告警的角色名称    |
| 定位信息 | 主机名  | 产生告警的主机名     |
   
#### 对系统的影响
Tablet异常可能造成数据查询或者数据写入失败。
#### 可能原因
Doris数据写入频率过高导致**compaction**操作异常、或Tablet迁移失败等。
#### 处理步骤
1. 此告警逻辑中包含了异常Tablet的自动修复功能，可登录Manager界面，选择"运维 \> 告警 \> 告警"，等待2分钟，查看该告警是否自动恢复。 
   登录集群Manager具体操作，请参考[访问MRS集群Manager](https://support.huaweicloud.com/usermanual-mrs/mrs_01_0128.html)。
   - 是，处理完毕。
   
   - 否，执行[步骤 2]。
   
   
   
   
**查看异常的Tablet并修复。**
2. 选中该告警，查看"附加信息"中"tabletId"的值。如果异常Tablet较多，附加信息中不能完全显示相关信息，可在Master FE节点的日志文件"${BIGDATA_LOG_HOME}/nodeagent/monitorlog/pluginmonitor.log"中搜索"Abnormal tablets have"查看所有异常的Tablet信息。
3. 登录安装了MySQL的节点，执行以下命令，连接Doris数据库。 
   如果集群已启用Kerberos认证（安全模式），需先执行以下命令：
   ```
   export LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN=1
   ```
   再执行以下命令连接Doris数据库：
   ```
   mysql -u数据库登录用户 -p数据库登录用户密码 -PFE查询连接端口 -hDoris FE实例IP地址
   ```
   ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/note_3.0-zh-cn.png)
   - Doris FE的查询连接端口，可以通过登录FusionInsight Manager，选择"集群 \> 服务 \> Doris \> 配置"，查询Doris服务的"query_port"参数获取。
   
   - Doris FE实例IP地址，可以通过登录FusionInsight Manager，选择"集群 \> 服务 \> Doris \> 实例"，查看任一FE的业务IP地址。
    
   
   
4. 执行以下命令查看异常Tablet详情：
   
   ```
   show tablet tabletId;
   ```
   记录异常Tablet所在的"DbName"和"TableName"，复制并执行返回结果中"DetailCmd"列的命令，格式为：
   ```
   show proc xxx;
   ```
   查看返回结果中字段LstFailedTime的值是否为NULL、VersionCount的值是否大于给定的阈值（默认为200）。
   - 是，执行[步骤 5]。
   
   - 否，执行[步骤 8]。
   
   
   
   
5. 执行以下命令查看当前系统正在执行的Tablet修复和调度任务：
   
   ```
   show proc "/cluster_balance";
   ```
   根据实际运行环境判断返回结果中的"pending_tablets"和"running_tablets"的值是否明显变小。
   - 是，执行[步骤 6]。
   
   - 否，执行[步骤 8]。
   
   
   
   
6. 执行以下命令优先修复异常的表，*t* *ableName* 为[步骤 4]记录的表名：
   
   ```
   admin repair table tableName;
   ```
   
   
7. 异常表修复完成后，等待2分钟，在告警列表中查看该告警是否自动清除。 
   - 是，处理完毕。
   
   - 否，执行[步骤 8]。
   
   
   
   
**收集故障信息**
8. 在Manager界面，选择"运维 \> 日志 \> 下载"。
9. 在"服务"中勾选待操作集群的"Doris"。
10. 单击右上角的时间编辑按钮，设置日志收集的"开始时间"和"结束时间"分别为告警产生时间的前后1小时，单击"下载"。
11. 请联系运维人员，并发送已收集的故障日志信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
#### 参考信息
不涉及。
