运行MSSQL查询时Nodejs内存泄漏

时间:2015-01-11 03:11:31

标签: sql-server node.js memory-leaks garbage-collection tedious

我在NodeJS中有一个脚本,它在一个循环中运行MSSQL查询,并异步处理每一行,但是在运行几秒钟之后,脚本会一直崩溃并显示以下错误消息:

Segmentation fault (core dumped)

我尝试使用繁琐的模块和mssql模块来运行针对MSSQL数据库的查询,结果是一样的。如果我删除数据库交互并硬编码数据库结果,脚本不会崩溃。看来查询导致内存泄漏。我已经包含以下模块来记录垃圾收集发生的时间,它只在脚本的最开始运行:

require('nodefly-gcinfo').onGC(function(usage, type, flags){
   console.log("GC Event Occurred");
   console.log("Heap After GC:",usage, type, flags);
});

如何解决内存泄漏或导致垃圾回收运行?在完成查询结果后,我调用“delete variableName”来尝试强制进行垃圾回收。

谢谢。

1 个答案:

答案 0 :(得分:0)

通过从Nodejs版本0.10.30升级到版本0.10.33来解决此错误。

apt-get upgrade nodejs