Meteor: Poderia uma condição de corrida acontecer com Meteor.collections no lado do servidor?

no meu servidor / server.js

Meteor.methods({
    saveOnServer: function() {
        var totalCount = Collections.find({
            "some": "condition"
        }).count();
        if (totalCount) {
            var customerId = Collections.update('someId', {
                "$addToSet": {
                    objects: object
                }
            }, function(err) {
                if (err) {
                    throw err;
                } else {
                    return true;
                }
            });
        } else {}
    }
});

Eu tenho medo que quando saveOnServer () é chamado por 2 clientes ao mesmo tempo, ele retornará o mesmo totalCount para cada cliente e basicamente acabará inserindo o mesmo número inteiro no id do objeto. O objetivo final é inserir linha no lado do servidor com uma operação atômica que só é concluída quando ototalCount é retornado com sucesso e o documento é inserido garantindo que nenhum ID duplicado exista? Eu estou tentando não usar o mongodb _id mas tenho minha própria coluna de id de incremento de inteiro.

Eu estou querendo saber como posso garantir que um campo seja auto-incrementado para cada operação de inserção? Atualmente, estou contando com a contagem total de documentos. É possível uma condição de corrida aqui? Em caso afirmativo, qual é a maneira de lidar com isso?

questionAnswers(3)

yourAnswerToTheQuestion