jboxberger / synology-gitlab

Updated an improved Original Synology Package
MIT License
129 stars 19 forks source link

Database update/migration failed from v12.9.2-0055 to v13.0.3-0055 #44

Closed helmut-steiner closed 3 years ago

helmut-steiner commented 4 years ago

Hey, I ran the update from GitLab v12.9.2-0055 to v13.0.3-0055 early this morning but it seems like my database was not correctly migrated to the new postgresql version. After the update I was presented with a password reset screen not with my usual login screen and I even after that I couldn't login anymore with my username and password. I had to uninstall the new version, clear the files, reinstall the old version and reload my backups. It looked like it didn't port any of my settings over but the upgrade logs didn't show any abnormalities. Kind regards, Helmut

crux153 commented 3 years ago

@jboxberger Thank you for your kind help :) I do have automatic backups so I can help you with experiments. Do you want me to try upgrading to stock 13.6.2 package, or wait until you provide modified package?

jboxberger commented 3 years ago

Puh, i am done guys. Everything is updated and tested as far as i could. Please feel free to update, but do not forget, backup, backup , backup (Warning: GitLab does not back up any configuration files, SSL certificates, or system files. You are highly advised to read about storing configuration files).

@crux153: you need to update to 13.0.3-0058 first. After that you can update to 13.6.2-0068 and after that you can go for the 13.9.3-0068.

Please give me feedback so i can sleep peacefully knowing everything went fine :-).

crux153 commented 3 years ago

@jboxberger I tried upgrading 13.0.3-0055-experimental to new 13.0.3-0058, but unfortunately it failed. During the update, a warning appeared that synology_gitlab_postgresql docker container failed unexpectedly and the progress got stuck at 100%. The setup continued to run once I manually started the postgresql and redis container, but all gitlab data were lost after the installation.

Fortunately I was able to restore backup from 13.0.3-0055 on 13.0.3-0058 without any problem. All my data came back again. From there, upgrading 13.0.3-0058 to 13.6.2-0068 and 13.9.3-0068 went butter smooth :)

So for anyone using the experimental package, be sure to backup your data before upgrade.

miralsoft commented 3 years ago

@jboxberger Hello, first of all I would like to thank you for your fantastic work here and also for the support you give here.

I've been hanging around updating my Gitlab for a long time now. I wanted to proceed according to your update strategy and wanted to update from 12.0.3-0054 to 12.4.2-0054. Unfortunately, already after the update, an error is issued during the migration that it does not work. In the attachment I have attached the log file from the image. Here you can see that an error occurs during the migration.

Do you have any idea what is going wrong here, or how I might get the migration through?

Thank you in advance and best regards Michael

synology_gitlab_Update_12_4_2_0054.zip

jboxberger commented 3 years ago

Hi,

ho problem. I assume you created a beackup before.

In the LOG i see: 2021-03-16 15:23:43,stdout,"ArgumentError: Multiple indexes found on releases columns [:project_id]. Specify an index name from index_releases_on_project_id, releases_project_id_idx

It look like there is an index which is breaking the migration script. Have you already tried this? https://github.com/jboxberger/synology-gitlab/wiki#database-migration-failed-during-update-1225-to-1233

Here i how you connect and execute queries on your posgresql https://github.com/jboxberger/synology-gitlab/wiki#executing-sql-queries

Kind Reagrds

miralsoft commented 3 years ago

Hi, thanks a lot for your quick help. Of course I overlooked this need. After I made this change that you suggested, the update worked fine for me.

So that others don't have to search as long as I do, I'll briefly summarize my path here:

  1. Open the GitLab console via ssh: sudo / usr / local / bin / docker exec --user = postgres -it synology_gitlab_postgresql bash -c "psql -d gitlab"
  2. Remove index: \ d snippets DROP INDEX index_snippets_on_project_id;

I have a backup every day and it also ends up on an external disk via HyperBackup, so I shouldn't lose anything. Without the backup, I would have lost my days because, before you wrote this post, I unfortunately wanted to go straight to 9/12/X without taking the steps before and my GitLab no longer wanted to run afterwards. Ergo went back to the old version and restored it via backup and tried again. Now I'm really happy that I've slowly got the configurations where I wanted (including ssl with Let's Encrypt and mail function with Microsoft 365).

I'll keep updating and hope that I won't get any more errors.

jboxberger commented 3 years ago

You ran into a known issue, as far as i know the rest will work fine, but you never know and the migration path depends on your specific gitlab usage. If you use many CI/CD for example and there is a bug in the CI/CD migration, the migration for you will fail. But if you do not use CI/CD at all your migration will work fine. :-)

GitLab itself is really stable, but the sameersbn image, which synology is using, is kind of tricky sometimes. But with backups and patience we got everything running yet :-).

I wish you success and happy coding!

PS: I added your commands to the wiki, thanks for supporting.

Kind Regards

caco3 commented 3 years ago

@jboxberger Thank you very much for your hard work!

Today I did an update from 12.9.2-0055 to 12.10.6-0058 and didn't see any issues.

Then I directly upgraded 12.10.6-0058 to 13.9.3-0068 (I unintentionally skipped 13.6.2-0068).

Again I can not see any issues or missing data (but I didn't check every single repo).

jboxberger commented 3 years ago

Thanks for your feedback, i am happy to hear that everything went fine! so i will close this issue. If you have any other issues please feel free to open a new one.

Kind Regards