MarkLogic node.js:stream end event不会针对某些集合触发

时间:2017-12-28 17:04:03

标签: node.js marklogic

我有一个使用MarkLogic node.js的查询,基本上归结为这样的事情:

db.documents.query(qb.where(qb.collection('test'))).stream()
.on('data', function(row) {
    console.log("Stream on data");
})
.on('end', function() {
    console.log("Stream on end");
})
.on('error', function(error) {
    console.log(error);
})
;

现在,对于我们在数据库中的某个集合,'结束'功能不起作用,即我从未看到"流结束"出现在日志中。没有错误或任何事情,处理只是停止。它只适用于这个特定的系列,其他系列看起来很好。

如果我使用qb.value()之类的其他方法直接查询该集合中的文档而不使用qb.collection(),则会正确触发结束事件。但是一旦我将qb.collection()添加到混合中(使用qb.and),结束事件就不会被激活。

我不确定如何调试它,因为这是我第一次尝试在nodejs客户端库中使用流。关于我可以检查什么的任何建议?

谢谢!

0 个答案:

没有答案