Ich benutze Couchbase Java SDK 2.2.6 mit Couchbase Server 4.1.Do Couchbase reaktive Clients garantieren Reihenfolge der Zeilen in Ansicht Abfrage Ergebnis
ich Abfrage meiner Ansicht nach mit dem folgenden Code
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;
}
In den Protokollen der fromJsonDocument
Methode, die ich sehe, dass Zeilen nicht immer durch den Zeilenschlüssel sortiert. Normalerweise sind sie, aber manchmal nicht.
Wenn ich diese Abfrage nur im Browser Couchbase GUI ausführen, erhalte ich immer Ergebnisse in der erwarteten Reihenfolge. Ist es ein Fehler oder erwartet, dass die Ergebnisse der Ansichtsabfrage nicht sortiert werden, wenn sie mit einem asynchronen Client abgefragt werden? Was ist das Verhalten in verschiedenen Clients, nicht Java?
Vielen Dank! Jetzt sehe ich, dass es in Version 2.2.5 hinzugefügt wurde und ich vermisste diese neue Methode. –