---
title: 合并超时，错误代码 4023 -OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于合并超时，错误代码 4023 相关的常见问题和使用技巧，帮助您快速解决合并超时，错误代码 4023 的难题。
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# 合并超时，错误代码 4023

更新时间：2023-12-07 03:16

适用版本： V1.4.x 内容类型：Troubleshoot  

## 影响版本

OceanBase 数据库 V1.4.7x 版本。

## 问题现象

合并超时，错误信息如下。

```unknow
grep "The partition is doing other task now, can not merge" observer.log

[2020-09-05 13:52:30.196099] INFO  [STORAGE.COMPACTION] ob_partition_merge_task.cpp:318 [63953][YB42A80500E5-0005AE8A88F20492] [lt=4] The partition is doing other task now, can not merge, (partition_key={tid:1111606255873511, partition_id:0, part_cnt:0}, ret=-4023)

```

## 可能原因

可通过 tid 确认创建全文索引的表上是否有索引生效。

1. 确认表名，其中 `log_tid` 为错误信息中的 tid。

   ```unknow
   obclient> SELECT table_name FROM __all_table WHERE table_id='log_tid';

   ```
 2. 确认是否存在不可用索引，其中 `table_name` 为上面步骤的查询结果。

   如果 STATUS 列为 unavailable，则表示索引不可用。

   ```unknow
   obclient> SHOW INDEX FROM table_name;

   ```
 3. 检查租户的 DDL 记录，查询创建全文索引的 DDL 语句，其中 `table_name` 为表名 `tenant_id` 为表所属租户的 id。

   ```unknow
   obclient> SELECT gmt_create,ddl_stmt_str FROM __all_ddl_operation WHERE table_name='table_name' AND exec_tenant_id='tenant_id'

   ```

OceanBase 数据库 V1.4.7x 版本中，全文索引会在合并发起时创建，如果全文索引创建失败，会导致合并超时。

## 解决方式

1. 通过以下语句删除全文索引，其中 `index_name` 为在表上添加的全文索引名称。

   ```unknow
   obclient> ALTER TABLE <table_name> DROP FULLTEXT <index_name>;

   ```
 2. 重新执行合并。

   ```unknow
   obclient> ALTER SYSTEM MAJOR FREEZE；

   ```

上一篇

[OBServer major 合并超时](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000048156)

下一篇

[OceanBase 集群合并超时 Timeout 排查方法](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000209921) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
