]> source.dussan.org Git - gitea.git/commitdiff
No longer show the db-downgrade SQL in production (#18653)
authorwxiaoguang <wxiaoguang@gmail.com>
Mon, 7 Feb 2022 10:04:12 +0000 (18:04 +0800)
committerGitHub <noreply@github.com>
Mon, 7 Feb 2022 10:04:12 +0000 (12:04 +0200)
* make messages more friendly

models/migrations/migrations.go

index 5aaf283bd39fa01c136da32a14a7eb254ee06f71..0aa9c7c7ea45fd72313d39b00f26ed169de2091c 100644 (file)
@@ -450,9 +450,12 @@ Please try upgrading to a lower version first (suggested v1.6.4), then upgrade t
 
        // Downgrading Gitea's database version not supported
        if int(v-minDBVersion) > len(migrations) {
-               msg := fmt.Sprintf("Downgrading database version from '%d' to '%d' is not supported and may result in loss of data integrity.\nIf you really know what you're doing, execute `UPDATE version SET version=%d WHERE id=1;`\n",
-                       v, minDBVersion+len(migrations), minDBVersion+len(migrations))
-               fmt.Fprint(os.Stderr, msg)
+               msg := fmt.Sprintf("Your database (migration version: %d) is for a newer Gita, you can not use the newer database for this old Gitea release (%d).", v, minDBVersion+len(migrations))
+               msg += "\nGitea will exit to keep your database safe and unchanged. Please use the correct Gitea release, do not change the migration version manually (incorrect manual operation may lose data)."
+               if !setting.IsProd {
+                       msg += fmt.Sprintf("\nIf you are in development and really know what you're doing, you can force changing the migration version by executing: UPDATE version SET version=%d WHERE id=1;", minDBVersion+len(migrations))
+               }
+               _, _ = fmt.Fprintln(os.Stderr, msg)
                log.Fatal(msg)
                return nil
        }