A maioria dos drivers MongoDb gerará automaticamente o ObjectId/
_id
lado do cliente, incluindo o driver nativo para Node.js. Há uma pequena quantidade de bloqueio que ocorre para gerar um ID exclusivamente, portanto, há poucas razões para não distribuir a geração para clientes conectados. O Mongoose precisa de um identificador exclusivo para rastrear e referenciar objetos, por isso cria um identificador imediatamente.
No cliente Node.JS, você pode opcionalmente defina por exemplo a propriedade
forceServerObjectId
para true
para controlar esse comportamento. No entanto, isso não pode ser substituído ao usar o Mongoose de acordo com os docs :