Продолжение обсуждения из SSO Broken - The requested URL or resource could not be found :
David Kingham:
ActiveRecord::RecordNotUnique (PG::UniqueViolation: ERROR: duplicate key value violates unique constraint “idx_tag_users_ix1” DETAIL: Key (user_id, tag_id, notification_level)=(8118, 842, 0) already exists. )
У меня похожая проблема:
ActiveRecord::RecordNotUnique (PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "idx_tag_users_ix1"
Есть идеи, как удалить дублирующийся ключ?
pfaffman
(Jay Pfaffman)
30.Ноябрь.2023 14:23:27
2
Я думаю, это потому, что у вас теги с разным регистром (у вас есть tag и Tag).
Это происходит при перестроении индекса или в другое время?
Я думаю, что нужно попытаться перестроить индекс, а затем либо исправить регистр тегов (если я прав насчёт этого), либо просто удалить одну из дублирующихся записей.
Хм… Вряд ли это так.
Tag.all.pluck(:name)
=> ["welcome",
"faq",
"sysadmin",
"offdem-0x03",
"reference",
"tutorial",
"local-organization",
"collective-data",
"power-relations",
"offdem-topic",
"offdem-0x00",
"offdem-0x01",
"offdem-0x02",
"discourse-plugin",
"page",
"how-to",
"about",
"offdem-0x04"]
Похоже, это появилось в начале этого месяца. Думаю, это было после обновления.
Не знаю, как это произошло, но я смог удалить дублирующиеся теги:
TagUser.all.where(user_id: 80, tag_id: 2).last.destroy
Для каждого дубликата (делал это вручную).
Спасибо, Джей!
Обратите внимание, что симптом устранён, но причина совершенно не ясна.
Я подозреваю, что групповые уведомления по тегам при ретроспективном применении не проверяют наличие существующих записей @pfaffman
pfaffman
(Jay Pfaffman)
30.Ноябрь.2023 15:41:04
6
Обычно так бывает в этих дублирующих проблемах с whatever.