You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
see ckan/ckan#1847, currently the response string is fully constructed before sending it, we could do something along the lines of using an iterator to send responses so we don't end up eating large chunks of memory when sending large api responses and perhaps sending these as chunked responses?
The text was updated successfully, but these errors were encountered:
This would be quite useful given that API consumers can be quite slow. One of our own tools streams the response from the API and processes it on the go. This means that the CKAN server has to keep the entire response in memory until the end of the processing (which in our case takes about 30 seconds for 5,000 rows).
An iterator approach with chunked responses (and/or websockets) would alleviate this.
Absolutely, I'd love to see a streaming (input and output) version of our API based on newline-delimited JSON. It could be backwards compatible for old clients by requiring a prefix sent by the client like '{"streaming":true}\n'
see ckan/ckan#1847, currently the response string is fully constructed before sending it, we could do something along the lines of using an iterator to send responses so we don't end up eating large chunks of memory when sending large api responses and perhaps sending these as chunked responses?
The text was updated successfully, but these errors were encountered: