# [FAQ] TiDB-binlog 同步数据到 Oracle 卡住导致延迟很高

## Key Words

TiDB-binlog, Oracle, hang, 卡住, 延迟

## Description

1. 使用 TiDB-binlog 支持同步到 Oracle 端的版本，出现同步进度卡住情况。
2. 查看 TiDB-binlog 的 std_err.log 文件发现 goroutine 存在 lock，具体堆栈如图片所示。  
![faq-binlog-sync-hang-to-oracle1](/images/TiDB-Binlog/faq-binlog-sync-hang-to-oracle1.jpg)

## Content

1. 从下图所示代码位置可以看出，`sp.db.Exec(sql)` 并没有采用通用的超时退出机制，当 TiDB-binlog 发往 Oracle 的请求被接受但无返回时，TiDB-binlog goroutine 便无法判定请求是否被正确处理，导致长时间 lock。
![faq-binlog-sync-hang-to-oracle2](/images/TiDB-Binlog/faq-binlog-sync-hang-to-oracle2.jpg)
2. 跟进 Issue : <https://github.com/pingcap/tidb-binlog/issues/1201> ，暂未被修复。

## Affected Versions

ALL
