Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Dashboards not loading when using https #8312
I set up the latest version of Metabase with Nginx as a reverse proxy and PostgreSQL as database engine in a Dockerized environment. Everything works fine with http.
I recently switched to https (Let's Encrypt + Nginx in a Dockerized environement, docker-compose.yaml available here: https://dsc.cloud/badr/note-GzzLARseTc.txt). I’m not using Jetty https features at all since Metabase is served through Nginx.
Here's my Ngix conf:
Any ideas? This seems related to the SSL/TLS configuration, the very same setup works without SSL/TLS.
Thanks to jornh for pointing to this thread on the discourse, it helped me fix the issue.
Somehow switching from enforcing http2 to http1 fixed the issue:
I honestly have no idea why this works... I will not close this issue if you want to get to bottom of this.
We are using http1 but the problem persists.
Docker run command used:
@rjurado01 please share additional details on your config. Otherwise it's next to impossible to try to help out now that MrZeroo00 got it working.
Is your setup differing in any way from what MrZeroo00 shared above? Can you get closer to the setup above?
What are the steps for others to reproduce the problem you experience?
All additional input such as either browser console errors like #8388 (comment) (which may or may not be related) or other kind of debug/logging or Wireshark dumps highlighting the difference between running this with/without HTTP/2 etc. any of you guys can bring to the table with v0.30.1 is helpful in getting to the bottom of the issue and is highly appreciated.
referenced this issue
Aug 27, 2018
@jornh I have updated my comment with more info.
Steps for reproduce are the same that @MrZeroo00 explain.
And all the other features that we working before (questions, raw data etc.) stop working after that (we need to restart Metabase).
Maybe it has to do with making several requests at the same time.
referenced this issue
Aug 28, 2018
I'm seeing the same issue- disabled http2 but still see a problem. It seems to be hanging jetty threads within the JVM - each call to the xray dashboard hangs a few more. I was able to get a thread dump, and believe the hanging threads look like this:
I've been able to confirm what is being observed here. I don't have a fix yet, but I have narrowed this down quite a bit. I have found the following three things are needed to reproduce this:
When those three things are true, it hangs. You are more likely to hit this issue with newer versions (i.e. 0.30.1) as the new X-Ray features create dashboards with more cards. I believe you would hit this in versions prior to 0.30.x if you had a dashboard with enough cards because the query cancellation code has been in place since 0.28.2.
I'll report back here when I have a fix, but if you remove the HTTP/2 connector, the issue goes away. For testing I removed the query cancellation code (kept the HTTP/2 connector in NGINX) and the issue goes away as well. Dashboards with smaller numbers of cards are fine too. The problem seems to be the HTTP/2 connector, the proxy and how we're figuring out if the client is still connected or maybe how those results are being streamed back.