写点什么

GitLab 出现 500 错误怎么解决?

作者:极狐GitLab
  • 2024-11-13
    辽宁
  • 本文字数:838 字

    阅读完需:约 3 分钟

GitLab 出现 500错误怎么解决?

本文分享 GitLab 中文版在降级的过程中出现 500 错误的修复方法。

写在前面

强烈不建议大家自行降级,如果真有降级需求,要么自己能力过硬,要么寻求专业服务https://dl.gitlab.cn/jvaf0tgf】,要不出问题很麻烦!

问题复现过程

我之前自行安装了一个极狐 GitLab 私有化部署实例,版本升级到了 17.5.1,由于想尝试一下降级的过程,所以就想降级到 17.0.0 试一下。按照文章 GitLab 如何降级安装中的步骤,降级是成功了,但是访问实例的时候提示 500 错误:


极狐GitLab 500 错误


正好界面上提示了 Request ID,拿着 ID 在 gitlab log 目录下搜索了一下:


错误日志


提示的错误是 Relation has no current order and table has no primary key to be used as default order

解决思路

查了一下,大概率是与数据库有关。然后猜测可能是下降的版本也跨版本了,导致数据结构有问题。为了验证猜想,我查了一下,如果从 17.0.0 升级到 17.5.1 的路径。


我在浏览器中打开了 https://gitlab.cn/support/toolbox/upgrade-path 然后,在 current 中选择 17.0.0,target 是 17.5.1,查询了升级路径:


升级路径查看


原来,17.0.0 升级到 17.5.1 还不能直接升级,必须先升级到 17.3.6,再升级到 17.5.1。那对于降级应该也是一样了,应该先从 17.5.1 降级到 17.3.6,再降级到 17.0.0。


在按照降级路径之后,最后 500 错误消失,实例访问正常。

总结

通过这次尝试,我得出了以下几点:


  • GitLab 不管是升级还是降级,一定要做好准备工作,比如备份数据(要确保降级之后的版本,在之前也做了数据备份)

  • 升级、降级都要遵循一定的路径,这个路径一定要清晰,路径的查看可以在极狐 GitLab 官网升级路径查看 https://gitlab.cn/support/toolbox/upgrade-path 中获取

  • 一定要对升降级过程中遇到的问题有心理准备,遇到问题的可能性比较大(如果自己的 GitLab 了解不深入的情况下)

  • 如果是企业内部的平台,在自己没有把握的前提下,不要随意升级、降级,最好把这些交给专业的人员,因为 GitLab 是个工具,不是目的。这时候可以考虑寻求官方的技术服务支持【https://dl.gitlab.cn/jvaf0tgf】!

用户头像

极狐GitLab

关注

开源开放,人人贡献 2021-05-19 加入

开放式一体化DevOps平台,助力行业高速协同增长!

评论

发布
暂无评论
GitLab 出现 500错误怎么解决?_gitlab_极狐GitLab_InfoQ写作社区