首页 > 解决方案 > Oracle (Amazon RDS) 会话挂起

问题描述

我有一个主进程和一个镜像进程。它们都连接到相同的模式。主进程执行 dml 查询,而镜像执行获取。随机主进程挂在具有以下堆栈跟踪的更新查询中

#0  0x00007fceaffe170d in read () from /lib64/libpthread.so.0
#1  0x00007fceb64c9150 in snttread () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#2  0x00007fceb48e7c75 in nttrd () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#3  0x00007fceb47c887a in nsprecv () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#4  0x00007fceb47d1bd5 in nsrdr () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#5  0x00007fceb5855282 in nsfull_pkt_rcv () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#6  0x00007fceb585b7af in nsfull_brc () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#7  0x00007fceb64bdaae in nsbrecv () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#8  0x00007fceb64b3b3e in nioqrc () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#9  0x00007fceb64c971d in ttcdrv () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#10 0x00007fceb64b8649 in nioqwa () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#11 0x00007fceb649a74c in upirtrc () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#12 0x00007fceb64a4f66 in kpurcsc () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#13 0x00007fceb649c042 in kpuexec () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1
#14 0x00007fceb649b0f9 in OCIStmtExecute () from /app/oracle/product/12.1.0.2/client_1/lib/libclntsh.so.12.1

在会话级别 (v$sqltext, v$lock) 中检查时,镜像处于阻塞 (block=1) 调用,使用 select 语句,而主服务器处于等待 (block=0) 状态,使用更新语句对同一个表. select 语句可以在阻塞调用中吗?我可以进一步调查的方向是什么?

标签: oracleamazon-rdsoracle12c

解决方案


推荐阅读