Informix错误后进程崩溃

时间:2012-06-15 08:25:43

标签: c++ informix coredump

我有一个C ++进程,它偶尔会崩溃(主要是在完成性能测试时)。 当我检查核心日志时,我可以在崩溃之前看到很多Informix错误。

在进程核心转储之前,我看到一系列错误代码406的Informix错误,这些错误与Out of Memory异常有关。 我还看到错误代码244(无法执行物理顺序读取以获取下一行)。

有人可以分享您对这些方案如何导致流程核心转储的看法吗?

更多详情

进程:多线程C ++进程
环境:Solaris
数据库:带有ESQL接口的Informix

ESQL DB函数(插入/更新/选择)正在抛出进程捕获的内容。 catch块中的消息是进程日志中出现的最后一条消息。之后就没有关于这个过程的线索。

进程coredumps时出现的正常消息(Caught signal. dumped core)也缺失。

1 个答案:

答案 0 :(得分:1)

当你说during performance testing时,你有一个很大的线索!!!!!

通常,对于性能测试用例,编译器优化会被加速,从而导致一些编写错误的代码短路,从而导致崩溃。

给出一个典型案例:当应该跨线程读取变量时,变量不会被声明为volatile。