私は、couchbaseサーバーからデータを一括取得する方法を以下に記述しました。私は、クエリRxJavaとcouchbaseで並べ替えを使用するには?
"SELECT meta().id as id FROM bucket"
を渡すとき
bucket.async()
.query(N1qlQuery.simple(query))
.doOnNext(res -> res.info().map(N1qlMetrics::elapsedTime).forEach(t -> System.out.println(t)))
.flatMap(AsyncN1qlQueryResult::rows)
.flatMap(row ->
bucket.async().
get(row.value().getString("id")))
.map(JsonDocument::content).
toList()
.toBlocking()
.single();
このコードは正常に動作しているが、私は取得しています結果がソートされていない
"SELECT meta().id as id FROM bucket order by id ASC"
のようなものを使用する場合。しかし、同じクエリをクエリコンソールで実行すると、結果は期待どおりになります。それは私がrxJavaで何か間違っていると信じさせます。これを解決するのを手伝ってください。
私はそれに同意します、concatMapEagerは私が考える方法です。ビュー "&include docs"については既にこれを行います。https://github.com/couchbase/couchbase-java-client/blob/master/src/main/java/com/couchbase/client/java/view/ViewQueryResponseMapperを参照してください。 .java#L220あなたが詳細に興味があれば。 – daschl