Я вставляю документы в коллекцию mongod db
каждый раз триггер и событие будут меняться, но если вставить их непрерывно с любым промежутком времени, мы получим ошибку дублирования монго.
но если мы делаем вставку со временем назад, она вставляется.
var MongoClient = require('mongodb').MongoClient;
var msgObj = {
"event" : "Password expired",
"assignee" : "Test",
"triggerDate" : "06/21/2018 18:44:27", }
var url ="mongodb://127.0.0.1:27017/org_democustomer"
for( var i=0; i<300;i++){
MongoClient.connect(url, function (err, db) {
var connection = db;
var collection = db.collection('events');
// Insert all customer's tickets into document
collection.insert(msgObj, function (err, result) {
if (err) throw err;
connection.close();
});
});
}
Итак, как происходит создание ObjectId?
это основано на времени?
ошибка
MongoError: E11000 коллекция повторяющихся ошибок:
org_mssdemocustomer.testalerts index: id dup ключ: {:
ObjectId ('507f191e810c19729de860ea')}
в Function.MongoError.create (/Users/zessta/Desktop/MSSP/MSSPBackend/msp-backend/siem/node_modules/mongodb-core/lib/error.js:31:11)
в toError (/Users/zessta/Desktop/MSSP/MSSPBackend/msp-backend/siem/node_modules/mongodb/lib/utils.js:139:22)
по адресу /Users/zessta/Desktop/MSSP/MSSPBackend/msp-backend/siem/node_modules/mongodb/lib/collection.js:668:23
в handleCallback (/Users/zessta/Desktop/MSSP/MSSPBackend/msp-backend/siem/node_modules/mongodb/lib/utils.js:120:56)
в resultHandler (/Users/zessta/Desktop/MSSP/MSSPBackend/msp-backend/siem/node_modules/mongodb/lib/bulk/ordered.js:421:14)
по адресу /Users/zessta/Desktop/MSSP/MSSPBackend/msp-backend/siem/node_modules/mongodb-core/lib/connection/pool.js:469:18
в _combinedTickCallback (внутренняя / process / next_tick.js: 73: 7)
at process._tickCallback (internal / process / next_tick.js: 104: 9)
Как создать уникальный идентификатор для немедленной вставки