Node.js:pipe道文件时错误ECONNRESET

我有这个错误,而“pipe道”节点中的文件:

events.js:160 throw er; // Unhandled 'error' event ^ Error: read ECONNRESET at exports._errnoException (util.js:1022:11) at Pipe.onread (net.js:569:26) 

这是我的代码:

 var json_file = fs.createWriteStream(jsonFile), processes = 0, read_ended_flag = false, converter = new Converter(params); let read_csv_file = fs.createReadStream(csvFilePath); // For each csv line, we get a json doc converter.on('record_parsed', jsonObj => { processes++; json_file.write(JSON.stringify(jsonObj) + '\n', () => { processes--; if(read_ended_flag && processes == 0){ json_file.end(); callback(); } }); }); converter.on('end_parsed', () => { read_ended_flag = true; }); read_csv_file .pipe(converter); 

我试图用这个或这个来捕捉错误,但它仍然是一样的。 这个bug只有在处理小文件(> 100行)的时候才会出现。

是否因为在写入新文件之前closures了读取stream?

非常感谢任何提示和帮助!

我find了解决scheme! 🙂

这是由于我的转换器参数(csvtojson模块),我把workerNum到4,而不得不把1处理小文件。

workerNum:工作进程的数量。 工作进程将使用多核来帮助处理CSV数据。 设置为Core数量来提高处理大型csv文件的性能。 保留1为小csv文件。 默认1。

这是一个关于csvtojson模块的完整教程

希望它可以帮助别人!