The outputType=json has come to be problematic, due to:
- The result cannot be streamed, as to provide a valid JSON (with the ending
]) all the result has to be gathered before responding. Due to this, if the result is large, there is a severe response time that can cause timeouts in networking elements (eg. proxies, etc.).
- The FDA component blocks others requests until the request with
outputType=json finishes
Thus, the following actions should be done:
- Short term: warn about this behaviour in the documentation
- Mid term:
- change the default to
ndjson (currently the default is json)
- consider if
outputType=json should be removed at all so FDA only would support stream-based formats (CSV and ND-JSON)
The
outputType=jsonhas come to be problematic, due to:]) all the result has to be gathered before responding. Due to this, if the result is large, there is a severe response time that can cause timeouts in networking elements (eg. proxies, etc.).outputType=jsonfinishesThus, the following actions should be done:
ndjson(currently the default isjson)outputType=jsonshould be removed at all so FDA only would support stream-based formats (CSV and ND-JSON)