Mongo / mongoose每隔一段时间都会独一无二

时间:2015-03-09 04:53:22

标签: mongodb mongoose unique

我正在将一个子域名字符串写入Mongodb数据库(在Compose.io上运行),我需要确保subdomain.name字符串是唯一的。

我将文档设置为

var SubdomainModel = function() {
    var subdomainSchema = mongoose.Schema({
        name: {type: String, require: true, index: true, unique: true,  lowercase: true, trim: true},
        createdBy: {type: mongoose.Schema.Types.ObjectId, require: true, ref: 'User'}
    });

    subdomainSchema.pre('save', function(next) {
        var subdomain = this;
        subdomain.name = subdomain.name.toLowerCase();
        next();
    });

    return mongoose.model('Subdomain', subdomainSchema);
}

module.exports = new SubdomainModel();

我使用frisby.js来运行我的测试(它基于茉莉花)。在我的测试中,我删除子域文档,然后创建新的子域。 我还为子域名添加时间戳,以便确保它是唯一的。我创建子域,然后等待15秒再次创建它并确保我的第二次创建调用失败。

测试通过一次,然后我重新运行,然后下一次失败。当我查看数据库时,确实有相同子域的两个条目。

{ name: "test-1425876399170", _id: ObjectId("54fd25af5ce2db7c0a7192d1"), __v: 0 }
{ name: "test-1425876399170", _id: ObjectId("54fd25be5ce2db7c0a7192d3"), __v: 0 }

也许这个问题是由于数据库被吹走造成的,我不确定,但我对它的失败/通过/失败/通过的持续性感到惊讶。

知道如何解决这个问题吗?

0 个答案:

没有答案