Internal server error when moving from legacy v6 to docker v8

Hey,
I’m moving from legacy v6 on Ubuntu 16 to docker V8 on ubuntu 18 (using redash aws image).
I’ve migrated the db from the old v6 to the new dockerized v8 redash as follows:
exported the db using this command: sudo -u redash pg_dump > backup_filename.sql
on the new v8 redash i’ve migrated the db using : cat backup_new.sql | sudo docker exec -i redash_postgres_1 psql -U postgres
Seems like the application is up, I’m getting the login page but when trying to login I’m getting 'Server internal Error".
The only error I see in the docker-compose logs is from the scheduler:
scheduler_1 | [2021-05-20 15:24:41,596][PID:14][ERROR][ForkPoolWorker-2] Task redash.tasks.refresh_queries[c501ce86-827d-458e-9566-decf2290140b] raised unexpected: ValueError(“Attribute ‘schedule’ does not accept objects of type <type ‘int’>”,)

any ideas what should be done from this point to solve this issue?

  • Redash Version: V8
  • Browser/OS: ubuntu 18
  • How did you install Redash: using aws image

You need to start over.

See this note in the docs:

If you are currently running an instance of Redash prior to V7, do not upgrade directly to V8 . Upgrade semantically to V7 first . Read more about this on our forum here.

The best way to do this is to create a Docker V6 instance. Then copy your non-Docker V6 database into Docker. Then upgrade to V7. Then Upgrade to V8.

Thanks it works!

  • create a new instance from Redash AWS AMI: https://redash.io/help/open-source/admin-guide/how-to-upgrade
  • on the source instance export the DB:
    export the db: sudo -u redash pg_dump > backup_filename.sql
  • On the newly created instance download the db file
  • configure redash on the new instance:
    • cd /opt/redash
    • sudo docker-compose down
    • backup the original db: sudo mv /opt/redash/postgres-data/ postgres-data-original
    • start pg docker: sudo docker-compose up -d postgres
    • connect to db: sudo docker exec -it redash_postgres_1 psql -U postgres
    • create role: CREATE ROLE redash WITH LOGIN ENCRYPTED PASSWORD ‘XXXX’;
    • restore db from the backup file we took from the original instance:
      cat backup_new.sql | sudo docker exec -i redash_postgres_1 psql -U postgres
    • Verify the import has no errors.
    • update the image to v6 image according to the images listed here: https://redash.io/help/open-source/admin-guide/how-to-upgrade
      • sudo vi docker-compose.yml and replace image: redash/redash:8.0.0.b32245 with image: redash/redash:6.0.0.b8537
  • start the docker containers: sudo docker-compose up -d

I hope it can assist others…

1 Like