Спасибо, Герхард! Я ценю твою помощь. Ситуация становится всё более странной.
Мне тоже непонятно, как могла возникнуть проблема с incoming_referers. Я восстанавливал базу из продакшена на этот staging-сайт ещё в октябре.
Кажется, что-то не так с базой данных или индексами. Я подозревал плагин, но ошибки возникают в столь разных индексах, что маловероятно, чтобы во всём виноват один плагин. Более ранний grep по плагинам в поиске проблем с битыми индексами ничего не дал.
При одном из восстановлений я получил это:
[2020-01-03 16:25:30] ERROR: could not create unique index "index_plugin_store_rows_on_plugin_name_and_key"
Я выполнил:
[10] pry(main)> PluginStoreRow.where(plugin_name: 'discourse-data-explorer',key: 'q:-8').destroy_all
И попытался снова:
[2020-01-03 16:49:16] ERROR: could not create unique index "index_tags_on_lower_name"
[2020-01-03 16:49:16] DETAIL: Key (lower(name::text))=(addins) is duplicated.
Вот полный лог начала последнего восстановления:
[2020-01-03 16:41:34] 'pfaffman' has started the restore!
[2020-01-03 16:41:34] Marking restore as running...
[2020-01-03 16:41:34] Making sure /var/www/discourse/tmp/restores/default/2020-01-03-164133 exists...
[2020-01-03 16:41:34] Downloading archive to tmp directory...
[2020-01-03 16:45:20] No metadata file to extract.
[2020-01-03 16:45:20] Validating metadata...
[2020-01-03 16:45:20] Current version: 20191220134101
[2020-01-03 16:45:20] Restored version: 20191129144706
[2020-01-03 16:45:20] Extracting dump file...
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:15] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] CREATE INDEX
[2020-01-03 16:49:16] ERROR: could not create unique index "index_tags_on_lower_name"
[2020-01-03 16:49:16] DETAIL: Key (lower(name::text))=(addins) is duplicated.
[2020-01-03 16:49:16] ERROR: current transaction is aborted, commands ignored until end of transaction block
[2020-01-03 16:49:16] ERROR: current transaction is aborted, commands ignored until end of transaction block
[2020-01-03 16:49:16] ERROR: current transaction is aborted, commands ignored until end of transaction block