MongoDB erkennt dieses Verhalten an, sagt aber auch, dass dies wie vorgesehen funktioniert.
Es wurde als Fehler in MongoDB JIRA protokolliert, $out-Aggregationsphase wird nicht wirksam , und die Antworten sagen, dass es kein Fehler ist:
Es sieht also so aus, als müssten Sie eine der Methoden aufrufen, um mit der Iteration des Cursors vor $out
zu beginnen wird alles tun. Hinzufügen von .toArray()
, wie Sie es bereits tun, ist wahrscheinlich am sichersten. Beachten Sie, dass to.Array()
lädt nicht wie gewohnt das gesamte Ergebnis in den Arbeitsspeicher; weil es ein $out
enthält , die Aggregation gibt einen leeren Cursor zurück
.