1. 最近使用多线程数据库编程是遇到ORA-24550错误。程序直接崩溃掉了。
查询oracle server端trace文件中没有任何错误。看来是oracle客户端的问题。
oracle文档中解释:
ORA-24550: unhandled signal #%ld received. %s
*Cause: Serious error: signal received
*Action: Refer to the platform-specific signal code, and see if the
application code caused the error. Otherwise, record
all error state and notify Oracle Support Services.
网上搜了一下,这个是oracle客户端的一个bug,可以参考https://savannah.cern.ch/bugs/?59026 。
2. 有同事,用C++ SOCI开发对oracle数据库进行DML操作时,发生该错误。
在网上查一下资料,都是说在服务器的sqlnet.ora文件中加入如下内容。
- DIAG_ADR_ENABLED=OFF
- DIAG_SIGHANDLER_ENABLED=FALSE
- DIAG_DDE_ENABLED=FALSE