Como mover um cursor disponível com dados em espera até o final, para receber novas atualizações

Eu estou tentando assistir o oplog do MongoDB com o driver node.js e funciona em teoria, mas tem bastante tempo de aceleração, porque parece estar verificando a coleção inteira. Encontrei isso nos documentos do MongoDB:

Como os cursores disponíveis não usam índices, a verificação inicial da consulta pode ser cara; mas, depois de esgotar o cursor inicialmente, as recuperações subsequentes dos documentos adicionados recentemente são baratas.

Existe uma maneira de esgotar rapidamente o cursor para começar a seguir? Parece-me que os caras do Meteor resolveram isso, mas tenho problemas para entender a diferença de ler o código deles. Isto é o que eu tenho atualmente:

var cursorOptions = {
    tailable: true,
    awaitdata: true,
    numberOfRetries: -1
};

var oplogStream = oplogDb.collection('oplog.rs').find(
    {
        ns: { $regex : /^dbname\./ },
        op: "i",
        ts: { $gt: lastEntry.ts } 
    },
    cursorOptions
).sort({$natural: -1}).stream();

oplogStream.on('data', publishDocument);

oplogStream.on('end', function() {
    log.error("received unexpected end event from oplog watcher.");
});

questionAnswers(1)

yourAnswerToTheQuestion