Description
Kibana version: 7.8.1
Elasticsearch version: 7.8.1
Server OS version: Ubuntu 16.04.6 LTS
Browser version: Firefox 79.0b9
Browser OS version: macOS Catalina 10.15.6
Original install method (e.g. download page, yum, from source, etc.): apt
Describe the bug: Some responses from /internal/search/es
respond with empty status code, header, and body. Presumably from cancelled queries.
Steps to reproduce:
- Load up a dashboard and query/filter
- Remove filters
- Re-add filters
- Observe network tab with blank status codes, zero headers, and no response body.
Expected behavior:
Network log should contain proper queries to the ES API with corresponding responses. Cancelled queries should respond with a proper HTTP status code (204 seems appropriate).
Errors in browser console (if relevant):
Failed to load resource: the server responded with a status of 502 (Proxy Error)
- this only occurs when Kibana is reverse proxied.
Any additional context:
This is primarily an issue when reverse proxying Kibana. Apache fusses when it receives an upstream response that doesn't have a valid header or is missing the response code.
A temporary remediation for this with Apache is setting ProxyBadHeader Ignore
in the server config. Obviously this is not the ideal solution, since the cancelled inflight requests should return a valid HTTP status code despite responding with no content.
Edit: The ProxyBadHeader fix doesn't fully resolve the problem. Not 100% why but I speculate that the upstream server is both sending empty responses and terminating requests early.