我正在使用 Cassandra + Solr,查询使用“solr_query”,总是得到多达 10 个结果。这是来自的金额:
<requestHandler class="solr.SearchHandler" default="true" name="search">
<lst name="defaults">
<int name="rows">10</int>
</lst>
</requestHandler>
我正在使用 eachRow 对结果进行分页,但它不起作用,它只得到前 10 个结果,仅此而已。
var query = 'SELECT * FROM contacts WHERE solr_query = ?';
var solr_query = '{"q":"some_query"}';
this.client.eachRow(query, [solr_query], { prepare: true, autoPage : true, fetchSize: 100 }, function(index, result) {
}, callbackFunc);
在 fetchSize 我已经放了 100 并且仍然只得到 10 个结果,如果我将 LIMIT 添加到查询中,它将起作用但仍然不能分页,它在第一页之后停止。
-- UPDTAE 我也尝试使用这个函数,结果相同(10):
this.client.stream(query, [solr_query], { prepare: true }).on('readable', function () {
var row;
while (row = this.read()) {
contacts.push(row);
}
})
.on('end', function () {
console.log(contacts.length); // 10
});