---
title: OceanBase 数据库报 timeout 或者直接 hang 住，报错 4012-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 OceanBase 数据库报 timeout 或者直接 hang 住，报错 4012相关的常见问题和使用技巧，帮助您快速解决 OceanBase 数据库报 timeout 或者直接 hang 住，报错 4012的难题。
---
切换语言

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

划线反馈

# OceanBase 数据库报 timeout 或者直接 hang 住，报错 4012

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

适用版本： V3.1.x、V3.2.x 内容类型：Troubleshoot  

## 问题现象

该问题会导致执行计划中包含 PX MergeSort + dop=1 + UDF 函数的查询语句 hang 住。

该问题发生的充分条件为：

- SQL 中包含嵌套语句、UDF(全称是 User-Defined Function，表示用户自定义函数)。
 - SQL 执行计划为分布式执行计划。
 - SQL 中包含 Order by 且要求最终的结果集有序输出。
 - SQL 输出的最终结果集里，平均每台 Server 输出的结果集超过 64K。

## 问题原因

由单 SQC 调度引入，而单 SQC 调度确实有几个场景 (PL UDF，trigger，foreign key 等) 会碰到该问题。

## 问题风险及影响

在执行 DTL 时导致数据库 hang 住，类似下面这样 wait_unblocking：

![](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/knowledge-base/database/bug/324-bp1/duf1.png)

## 影响版本

OceanBase 数据库 V3.1.2、V3.2.3、V3.2.4 版本。

## 解决方法及规避方式

- 解决方法：

  升级到问题已修复版本，目前已修复 OceanBase 数据库 V3.2.4 BP3 Hotfix1(oceanbase-3.2.4.3-103010022023051317)、V3.2.4 BP3 Hotfix2(oceanbase-3.2.4.3-103020012023051810)版本，V3.2.4 BP4(oceanbase-3.2.4.4-104000052023062021)、V3.2.3 BP8 Hotfix2(ceanbase-3.2.3.3-108020022023051212) 及之后版本。
 - 规避方法：

  不使用 UDF 函数以及计划绑定不生成 PX MergeSort 算子，用其他算子等价替换。

上一篇

[batch nlj 右表存在 limit 下压导致正确性问题](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000038418)

下一篇

[如何绑定有子查询的 SQL 的执行计划](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000001640077) ![有帮助](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) 咨询热线
