2016-08-20 2 views
0

Wir bei https://github.com/keystonejs/keystone wurden nun für eine Weile ohne Probleme in unserem e2e Testserver die folgenden Schritte aus Datenbanken zu löschen, bevor e2e beginnt:Mongoose: Topologie zerstört wurde MongoError

mongoose.connect(mongoUri,function(err){ if (!err) { mongoose.connection.db.dropDatabase(function (err) { mongoose.connection.close(function(err) { done(err); }) }); } else { done(err); } });

Aber wie kürzlich (Mungo 4.5.9) erhalten wir nun beim Start folgende Fehler. Irgendwelche Ideen? Müssen wir die obige Drop-Db-Logik nach einem kürzlichen Update optimieren?

10:00:20:493 e2e: dropping test database Mongoose model 'index-single-done' event fired on 'Boolean' for index: { key: 1 } With error: topology was destroyed MongoError: topology was destroyed at Server.insert (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb-core\lib\topologies\server.js:1312:49) at Server.insert (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\server.js:351:17) at C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\db.js:1018:21 at handleCallback (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\utils.js:96:12) at C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\db.js:1697:20 at handleCallback (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\utils.js:96:12) at C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\db.js:306:20 at commandCallback (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb-core\lib\topologies\server.js:1182:20) at Callbacks.flush (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb-core\lib\topologies\server.js:88:7) at Server.destroy (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb-core\lib\topologies\server.js:1075:41) at Server.close (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\server.js:398:17) at Db.close (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\db.js:357:19) at NativeConnection.doClose (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongoose\lib\drivers\node-mongodb-native\connection.js:233:11) at NativeConnection.Connection._close (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongoose\lib\connection.js:570:12) at C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongoose\lib\connection.js:541:11 at lib$es6$promise$$internal$$initializePromise (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\es6-promise\dist\es6-promise.js:409:9) Mongoose model 'index' event fired on 'Boolean' with error: topology was destroyed MongoError: topology was destroyed at Server.insert (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb-core\lib\topologies\server.js:1312:49) at Server.insert (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\server.js:351:17) at C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\db.js:1018:21 at handleCallback (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\utils.js:96:12) at C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\db.js:1697:20 at handleCallback (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\utils.js:96:12) at C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\db.js:306:20 at commandCallback (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb-core\lib\topologies\server.js:1182:20) at Callbacks.flush (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb-core\lib\topologies\server.js:88:7) at Server.destroy (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb-core\lib\topologies\server.js:1075:41) at Server.close (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\server.js:398:17) at Db.close (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb\lib\db.js:357:19) at NativeConnection.doClose (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongoose\lib\drivers\node-mongodb-native\connection.js:233:11) at NativeConnection.Connection._close (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongoose\lib\connection.js:570:12) at C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongoose\lib\connection.js:541:11 at lib$es6$promise$$internal$$initializePromise (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\es6-promise\dist\es6-promise.js:409:9) Mongoose model 'index-single-done' event fired on 'CloudinaryImage' for index: { key: 1 } With error: topology was destroyed MongoError: topology was destroyed at Server.insert (C:\Users\Carlos\git\prs\keystonejs\master\node_modules\keystone\node_modules\mongodb-core\lib\topologies\server.js:1312:49) ...

+0

update: Dies passiert jetzt, sehr sporadisch, während der Testausführung (die DB wird zu diesem Zeitpunkt nicht fallen gelassen). – webteckie

Antwort

0

Dies erwies sich als ein logischer Fehler sein! Die verschachtelte Logik initialisierte Mungo-Schema-Modelle, ließ dann die Datenbank fallen, schloss dann die Datenbank und dann normale Operationen mit der Datenbank. Aus irgendeinem Grund funktionierte das lange Zeit ohne Fehler. Etwas wurde wahrscheinlich schneller in der Leistung, bis es Synchronisierungsprobleme einholte, die zu den oben beschriebenen Fehlern führten.

Verwandte Themen