升级问题:重复键值违反唯一约束

您好,

我刚使用升级工具升级了我的 discourse 实例。奇怪的是,论坛现在无法访问了。当我尝试使用命令行进行重建时,我收到了这个错误:

duplicate key value violates unique constraint \"index_tags_on_lower_name\"

这个错误在日志中重复出现多次,所以我认为它与此有关。

这是完整的日志:
https://paste.apps.7ho.st/dezomakasu.sql (这是日志的一部分,但这是完整的日志)

有人能帮帮我吗?我恢复了 7 小时前的备份文件,那是在此问题发生之前很久的,但升级后仍然是同样的问题。

谢谢。

您需要重命名其中一些标签,我认为。这本不应该发生,但它发生了。

您可以启动旧容器,然后执行类似以下操作:

./launcher start app
./launcher enter app
rails c
tags=Tag.where("name like '%ووکامرس%'")
TAG1=tags[1]
TAG1.name='bad1'
TAG1.save

依此类推处理其他标签(也许只有 3 个?)。

是否应将数字替换为标签 ID?

这是我得到的结果:tags=Tag.where("name like '%ووکامرس%'")

root@Seven-Forums-app:/var/www/discourse# rails c
[1] pry(main)> tags=Tag.where("name like '%ووکامرس%'")
=> [#<Tag:0x00007f0cef631638
  id: 26,
  name: "ووکامرس",
  created_at: Fri, 27 Jul 2018 07:05:01.048694000 UTC +00:00,
  updated_at: Fri, 27 Jul 2018 07:05:01.048694000 UTC +00:00,
  pm_topic_count: 0,
  target_tag_id: nil,
  description: nil>,
 #<Tag:0x00007f0cef61bfb8
  id: 108,
  name: "حمل-و-نقل-ووکامرس",
  created_at: Thu, 16 May 2019 10:12:19.073070000 UTC +00:00,
  updated_at: Thu, 16 May 2019 10:12:19.073070000 UTC +00:00,
  pm_topic_count: 0,
  target_tag_id: nil,
  description: nil>,
 #<Tag:0x00007f0cef61bef0
  id: 312,
  name: "ووکامرس",
  created_at: Sat, 23 Jan 2021 12:56:26.583839000 UTC +00:00,
  updated_at: Sat, 23 Jan 2021 12:56:26.583839000 UTC +00:00,
  pm_topic_count: 0,
  target_tag_id: nil,
  description: nil>,
 #<Tag:0x00007f0cef61bdd8
  id: 317,
  name: "مشکل-ووکامرس",
  created_at: Wed, 17 Feb 2021 20:32:41.416170000 UTC +00:00,
  updated_at: Wed, 17 Feb 2021 20:32:41.416170000 UTC +00:00,
  pm_topic_count: 0,
  target_tag_id: nil,
  description: nil>]