我正在通过PBS批处理作业运行plink软件。运行作业时会发生此错误:
*** glibc detected *** /software/plink: double free or corruption (out): 0x000000018dfafca0 ***
======= Backtrace: =========
[0x7d7691]
[0x7d8bea]
[0x45f5ed]
[0x47bb11]
[0x40669a]
[0x7bdb2c]
[0x400209]
但是它只发生在我的一个文件(bw 30-60 gb文件)中,每次重新运行都显示完全相同的后跟踪图。我尝试不通过批处理调度程序运行它并再次收到相同的错误,使用相同的回溯映射。我只是使用该软件(plink),并没有写它,因此大多数在线答案都是关于在程序中编写和释放内存。
关于
的任何想法答案 0 :(得分:0)
造成此错误的原因是什么,
plink
我该如何解决?
你不能。根据您的了解和理解程度,您可以执行以下两项操作之一。
首先,从源代码构建最新版本的plink
,然后查看问题是否仍然存在。
如果没有,你就完成了(至少你可能希望其他人找到并解决了这个问题)。
如果确实如此,您必须为您或plink
开发人员充分调试问题。一些应该有用的工具:Valgrind和Address Sanitizer(注意:除了Clang,地址清理程序is also included在GCC-4.8中)。
一旦你有一个好的报告(内存被分配的地方,以及它被破坏的地方),你应该修复它并向plink
开发者提交你的修复,或者给他们一个关于分配的bug报告。腐败地点和堆栈痕迹。