Hi.
JupyterHUB 4.0.2, CHP 0.3.0
Recently we came across the problem where progress page in jupyterhub was not updated until notebook spawning was complete.
We have narrowed down the issue to CHP blocking chunked-responses from jupyterhub api until response generation is complete. What's more, request times out after 20 seconds.
progress API is using keep-alive connection and sends chunked response to the client. It is based on XHR connection (event-type/stream).
CHP here:
- prevents Connection-type: keep-alive header from reaching the api server (changed to close),
- keeps keepalive packets sent by API from passing until response is complete
- keeps chunked updates (self.write(), yield self.flush()) from passing thru the proxy
This functionaly works properly in NPM counter part.