-
Notifications
You must be signed in to change notification settings - Fork 2
Repo Version Export Streaming causes performance issue #2454
Copy link
Copy link
Open
Open
Copy link
Labels
signal/high-riskSignificant potential impact if incorrectSignificant potential impact if incorrectstage/triagedAI triage complete — scored and classifiedAI triage complete — scored and classifiedtype/bugSomething is brokenSomething is broken
Description
Currently OCL API streams the export (zip) content as response in /export/ API.
This causes performance issue and sometimes causes the process to terminate due to Memory
Errbit
/usr/local/lib/python3.12/site-packages/gunicorn/workers/sync.py:135→ handle: self.handle_request(listener, req, client, addr)
--
/usr/local/lib/python3.12/site-packages/gunicorn/workers/sync.py:184→ handle_request: resp.write(item)
/usr/local/lib/python3.12/site-packages/gunicorn/http/wsgi.py:355→ write: util.write(self.sock, arg, self.chunked)
/usr/local/lib/python3.12/site-packages/gunicorn/util.py:298→ write: return write_chunk(sock, data)
/usr/local/lib/python3.12/site-packages/gunicorn/util.py:293→ write_chunk: sock.sendall(chunk)
/usr/local/lib/python3.12/site-packages/gunicorn/workers/base.py:203→ handle_abort: sys.exit(1)
Ideally export API should return 302 with the Location header in response, pointing to the zip URL
This will require changes in oclapi2 and oclweb2
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
signal/high-riskSignificant potential impact if incorrectSignificant potential impact if incorrectstage/triagedAI triage complete — scored and classifiedAI triage complete — scored and classifiedtype/bugSomething is brokenSomething is broken
Type
Projects
Status
In review