2016-08-01 63 views
3

流星应用每两三分钟崩溃,出现此错误:流星应用定期的用蒙戈错误崩溃

TypeError: Error.captureStackTrace is not a function 
    at Error.MongoError (/Users/alex/.meteor/packages/npm-mongo/.1.5.45.1i7w6an++os+web.browser+web.cordova/npm/node_modules/mongodb-core/lib/error.js:13:9) 
    at Function.MongoError.create (/Users/alex/.meteor/packages/npm-mongo/.1.5.45.1i7w6an++os+web.browser+web.cordova/npm/node_modules/mongodb-core/lib/error.js:29:11) 
    at Socket.<anonymous> (/Users/alex/.meteor/packages/npm-mongo/.1.5.45.1i7w6an++os+web.browser+web.cordova/npm/node_modules/mongodb-core/lib/connection/connection.js:161:20) 
    at Socket.g (events.js:260:16) 
    at emitNone (events.js:67:13) 
    at Socket.emit (events.js:166:7) 
    at Socket._onTimeout (net.js:332:8) 
    at _runOnTimeout (timers.js:524:11) 
    at _makeTimerTimeout (timers.js:515:3) 
    at Timer.unrefTimeout (timers.js:584:5) 

这开始我更新了我的项目流星1.4后。流星在后台做些什么?我该如何调试才能找出发生了什么?

其他详细信息:我正在使用React,react-router和reactrouter:react-router-ssr。所以有服务器端渲染。也许这会触发一些东西......

伙计们。我看到的最重要的细节是这样的: Error.captureStackTrace is not a function 这是一个核心节点功能!如果我运行节点并输入Error我看到的功能:captureStackTrace: [Function: captureStackTrace]。所以这个问题看起来像Meteor可能正在运行旧版本的节点,Error中没有captureStackTrace呢?好吧,我跟着指示here检查版本:

MonsterMac:/ alex$ cd ~/.meteor/packages/meteor-tool/1.4.0-1/mt-os.osx.x86_64/dev_bundle/bin/ 
MonsterMac:bin alex$ ./node -v 
v4.4.7 

按照Change logcaptureStackTrace有在4.4.7版本。怎么办?

+0

真正的错误来自Mongo连接超时错误。你使用Meteor的本地Mongo实例还是连接到不同的Mongo服务器? – hwillson

+0

我正在使用本地mongo实例。 –

+0

当你运行'流星节点-v'时,你会看到什么? – hwillson

回答

1

流星使用节点4.4.7。另外,在Meteor 1.4中,Mongo被更新为更新的版本。要解决此错误,请尝试流星重置。当你下一次启动流星时,这会将Mongo更新为最新版本。

+0

是的,这是在Meteor更新后立即完成的。没有更新数据库,该应用程序无法启动。该应用程序正在运行,但服务器端定期发生此错误。 –