redash icon indicating copy to clipboard operation
redash copied to clipboard

Dashboards doesn't work after upgrade to 10 version.

Open artemsafiyulin opened this issue 1 year ago • 6 comments

Issue Summary

Hello! After upgrade redash from 8 to 10 we got problem: part of our dashboards don't work in safari and firefox, but work in google chrome. When we try open dashboard in safari/firefox we look next message: redash_error

Steps to Reproduce

I don't know how reproduce this problem. Explaining why: I got dashboard which work only in chrome - i maked copy and start deleting widgets by one-two for step. After each step i checked that this dashboard still doesn't work in safari. After deleting 2 widgets they start work in safari, i add this two widgets back, and dashboard still work in safari.

We have more than 300 dashboards with about 3000 widgets. So i cant recreate each dashboard step by step, by deleting and recreating each widget.

Technical details:

  • Redash Version: 10.1.0 (2589bef1)
  • Browser/OS: WORK - in chrome, DON'T WORK in safari/firefox
  • How did you install Redash: using docker-compose

artemsafiyulin avatar Jan 29 '24 11:01 artemsafiyulin

I found some errors in safari console. the error screenshot is below. Снимок экрана 2024-01-30 в 16 32 07

Also I found old issue with fix Here PR from this old issue: PR And here actual file from master branch: link to file

It look like old fix was actual again after update to 10 version.

artemsafiyulin avatar Jan 30 '24 10:01 artemsafiyulin

@artemsafiyulin thanks for the issue report and investigation. Does the fix from the PR work for you? If so, we can merge it in if you open a PR, though it won't be available in version 10 - only on redash:preview.

guidopetri avatar Jan 30 '24 12:01 guidopetri

Hello @guidopetri ! I tried test this fix in my installation, but couldn't. I changed 2 rows in this file client/app/components/Parameters.jsx:

#import { size, filter, forEach, extend } from "lodash";
import { size, filter, forEach, extend, isEqual } from "lodash";

and

    const parametersChanged = !isEqual(prevProps.parameters, parameters);
#    const parametersChanged = prevProps.parameters !== parameters;

after that i restarted redash using docker-compose restart and tried open dashboard. Here i got same error, and when check safari console i saw that my changes didn't applied: Снимок экрана 2024-01-31 в 11 50 01 Снимок экрана 2024-01-31 в 11 50 54

I use docker-compose and have next containers:

CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                                                                      NAMES
405815d10e37        redash/redash:10.1.0.b50633   "/app/bin/docker-ent…"   12 days ago         Up 15 minutes       5000/tcp                                                                   redash_worker_1
95a6a92ebcb8        redash/redash:10.1.0.b50633   "/app/bin/docker-ent…"   12 days ago         Up 15 minutes       5000/tcp                                                                   redash_adhoc_worker_1
acbc17d95538        nginx-redash-1-21-4:latest    "/docker-entrypoint.…"   12 days ago         Up 11 minutes       0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   redash_nginx_1
d104eba6a436        redash/redash:10.1.0.b50633   "/app/bin/docker-ent…"   12 days ago         Up 15 minutes       0.0.0.0:5000->5000/tcp, :::5000->5000/tcp                                  redash_server_1
f59cc616e95f        redash/redash:10.1.0.b50633   "/app/bin/docker-ent…"   12 days ago         Up 15 minutes       5000/tcp                                                                   redash_scheduled_worker_1
42767927d1ca        redash/redash:10.1.0.b50633   "/app/bin/docker-ent…"   12 days ago         Up 15 minutes       5000/tcp                                                                   redash_scheduler_1
cc9859dbe1f4        postgres:9.6-alpine           "docker-entrypoint.s…"   12 days ago         Up 15 minutes       5432/tcp                                                                   redash_postgres_1
a6c02325be92        redis:5.0-alpine              "docker-entrypoint.s…"   12 days ago         Up 15 minutes       6379/tcp                                                                   redash_redis_1

After restarting i checked that in each container, which use redash image, my changes applied correctly. Can you help with this problem? may be i do somethig wrong?

P.S. after changing client/app/components/Parameters.jsx for each container and restarting - redash show 502 error - restarting nginx container helped - I'm not sure that it affect on problem.

artemsafiyulin avatar Jan 31 '24 06:01 artemsafiyulin

It sounds like maybe caching was an issue? Unfortunately I don't know that I can fix the original issue, so we might have to wait for input from someone who knows more.

guidopetri avatar Feb 03 '24 00:02 guidopetri

@guidopetri Hmm, looks like I forgot set this changes in some file - I clear cache and after this I see same error, also I install firefox and got same error and also look in this error that my changes don't enabled. Maybe you have ideas where also I need change this code?

artemsafiyulin avatar Feb 05 '24 06:02 artemsafiyulin

Hello everyone Is there a chance that someone will be able to help? At this moment we understand, that for enabling changes we need make npm run build. But i tried long time make it and get different errors. I stopped on error:

error TS2688: Cannot find type definition file for 'jest'.
  The file is in the program because:
    Entry point of type library 'jest' specified in compiler Options

  tsconfig.json:8:23
    8     "types": ["node", "jest"],
                            ~~~~~~
    File is entry point of type library specified here.

As i can see, when original image building - npm run build have to started in docker container. Someone can help me run npm run build after changing some files in original container?

@guidopetri maybe you know someone from redash team who understand how work this part of redash?

artemsafiyulin avatar Feb 19 '24 12:02 artemsafiyulin