-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Closed
Labels
Description
Using loopback 2.4.1
When using change tracking and creating a new instance of a model. A new model is created and a change model instance is also created, then the server crashes with the following.
Error: MongoError: insertDocument :: caused by :: 11000 E11000 duplicate key error index: changeDuplicateKey.mat-change.$_id_ dup key: { : "a79d721d7491273e0fc6c5d8b900e5ffca9296cd" }
at cb (/Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback/lib/models/change.js:170:19)
at /Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback-datasource-juggler/lib/dao.js:230:20
at /Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback-connector-mongodb/lib/mongodb.js:204:14
at /Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback-connector-mongodb/node_modules/mongodb/lib/mongodb/collection/core.js:120:18
at /Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback-connector-mongodb/node_modules/mongodb/lib/mongodb/db.js:1183:7
at /Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback-connector-mongodb/node_modules/mongodb/lib/mongodb/db.js:1916:9
at Server.Base._callHandler (/Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback-connector-mongodb/node_modules/mongodb/lib/mongodb/connection/base.js:448:41)
at /Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback-connector-mongodb/node_modules/mongodb/lib/mongodb/connection/server.js:481:18
at MongoReply.parseBody (/Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback-connector-mongodb/node_modules/mongodb/lib/mongodb/responses/mongo_reply.js:68:5)
at null.<anonymous> (/Users/berkeley/node/loopback/changeDuplicateKey/node_modules/loopback-connector-mongodb/node_modules/mongodb/lib/mongodb/connection/server.js:439:20)
This duplicate key problem also occurs when using the postgresql connector.
I created a repo that replicates the issue here.