私はCouchbase Java SDK 2.2.6をCouchbaseサーバー4.1で使用します。Couchbaseのリアクティブクライアントはビューの検索結果の行の順序を保証しますか
私は行が常に行のキーでソートされていないことがわかりfromJsonDocument
方法からログに次のコード
public <T> List<T> findDocuments(ViewQuery query, String bucketAlias, Class<T> clazz) {
// We specifically set reduce false and include docs to retrieve docs
query.reduce(false).includeDocs();
log.debug("Find all documents, query = {}", decode(query));
return getBucket(bucketAlias)
.query(query)
.allRows()
.stream()
.map(row -> fromJsonDocument(row.document(), clazz))
.collect(Collectors.toList());
}
private static <A> A fromJsonDocument(JsonDocument saved, Class<A> clazz) {
log.debug("Retrieved json document -> {}", saved);
A object = fromJson(saved.content(), clazz);
return object;
}
と私のビューを問い合せます。通常はありますが、そうでない場合もあります。
私はブラウザのcouchbase GUIでこのクエリを実行するだけで、いつも期待通りの結果が得られます。バグか、非同期クライアントでクエリのクエリ結果がソートされないことが予想されますか? javaではなく、異なるクライアントでの動作は何ですか?
ありがとうございます!今はバージョン2.2.5で追加されているのを見て、私はこの新しい方法を見逃しました。 –