sql >> Database teknologi >  >> NoSQL >> MongoDB

Mongo's Cursor.nextObject Returnerer nogle gange fejlagtigt Null?

Jeg er stadig ikke sikker på, hvad der forårsager pausen, men det ser ud til, at det er synderen.

Under pausen, Cursor.nextObject bliver kaldt flere gange, før den første vender tilbage. Nogle af disse opkald returnerer null . Løsningen er at sikre dig Cursor.nextObject kaldes aldrig samtidigt.

if (this.cursor && !this.cursor_exec && this.length() < this.concurrency) {
    this.cursor_exec = true;
    this.cursor.nextObject(function(err, item) {
        console.log(this.name + ': ' + (item ? item._id : null) + ' ' + (err ? err : null));
        this.cursor_exec = false;
        if (item) {
            this.push(item);
        } else {
            delete this.cursor;
        }
    }.bind(this));
}



  1. MongoDB shell og server matcher ikke

  2. Undgå, at Spring Data for Mongo konverterer id'er til ObjectId

  3. Mongodb samlet forespørgsel, eller for kompleks?

  4. Deserialisering af polymorfe typer med MongoDB C#-driver