GX-Bug #69069
geschlossenREST API always outputs all records if no page or per_page parameters are passed
0%
REST API verbessert für große Datenmengen, sodass diese auf mehrer Seiten aufgeteilt werden wenn kein per_page Parameter übergeben wurde
Beschreibung
REST API gibt immer alle Datensätze aus, wenn keine Page oder per_page Parameter übergeben werden, was bei vielen Datensätze dann zu einem Fehler führt
Kann wie folgt reproduziert werden:
- Erstelle sehr sehr viele Bestellungen, Kunden oder Artikel, mindestens 15 000 oder mehr
- Rufe über die REST API den Endpunkt /v2/orders oder v2/products auf
- Es wird eine Fehlermeldung 500 oder andere Meldung angezeigt weil die zurückgelieferten Daten zu groß sind
Erwartetes Verhalten:
Die REST API sollte immer 50 Datensätze zurückliefert wenn keine Paramter "page" oder per_page" übergeben wurden, sodass keine Fehler beim Abrufen der Daten entsteht
Links im Response Header werden ausgegeben, sodass man die nächste und letze Seite direkt abrufen kann
Tatsächliches Verhalten:
Es werden immer alle Datensätze auf einmal ausgegben, wenn kein page oder per_page Parameter angegben wurde. Daduch kommt es bei vielen Datensätzen zu einem Fehler 500 oder Speicherfehler.
REST API always outputs all records if no page or per_page parameters are passed, which then results in an error for many records
Can be reproduced as follows:
- create very very many orders, customers or products, at least 15 000 or more.
- call the endpoint /v2/orders or v2/products via the REST API
- an error 500 or other message is displayed because the returned data is too large
Expected behavior:
The REST API should always return 50 records if no "page" or per_page" parameters are passed, so that no errors occur when retrieving the data
Links in the response header are output so that you can retrieve the next and last page directly
Actual behavior:
All records are always output at once if no page or per_page parameter is specified. This results in an error 500 or memory error for many records.