Зависло обсуждение, восстановление обсуждения НЕ УДАЛОСЬ

Похоже, в резервной копии есть два пользователя с одинаковым адресом электронной почты? Удалите одного из этих пользователей или измените один из адресов и создайте новую резервную копию?

У вас поврежденный индекс. У меня была похожая проблема (с другой таблицей и индексом, кажется), и я описал, что сделал для её исправления, по адресу Can't restore due to corrupt indexes (with some clues on how to deal with corrupt indexes). Ваше решение будет другим, но то, что я описал там, может помочь вам понять, как решить вашу проблему.

Привет, @Dev_Work

Это хорошая новость.

У вас есть несколько вариантов. На ум сразу приходят только два:

Проанализировать и переиндексировать таблицу пользователей:

VACUUM ANALYZE users;

а затем можно выполнить:

REINDEX VERBOSE TABLE users

Это выполнит анализ и переиндексацию для конкретной таблицы («users» в примере выше).

Также можно сделать то же самое для всей базы данных:

VACUUM;
REINDEX DATABASE discourse;

В любом случае, после выполнения REINDEX вашей «старой БД» вы можете создать новую резервную копию и проверить, как она будет работать при восстановлении в вашу «новую БД».

Надеюсь, это поможет.

См. также:

https://medium.com/@andreigridnev/db-maintenance-commands-in-postgresql-analyze-reindex-vacuum-4a14d75bee6c

Почему возникает эта ошибка?

[STARTED]
Система начала восстановление!
Восстановление помечено как запущенное...
Проверка существования /var/www/discourse/tmp/restores/default/2020-08-26-075829...
Копирование архива во временный каталог...
Распаковка архива, это может занять время...
Извлечение файла дампа...
ИСКЛЮЧЕНИЕ: Не хватает места на устройстве @ io_write - /shared/tmp/restores/default/2020-08-26-075829/dump.sql
/var/www/discourse/lib/compression/gzip.rb:50:in `write'
/var/www/discourse/lib/compression/gzip.rb:50:in `<<'
/var/www/discourse/lib/compression/gzip.rb:50:in `block in extract_file'
/var/www/discourse/lib/compression/gzip.rb:45:in `open'
/var/www/discourse/lib/compression/gzip.rb:45:in `extract_file'
/var/www/discourse/lib/compression/strategy.rb:26:in `block (2 levels) in decompress'
/var/www/discourse/lib/compression/strategy.rb:18:in `each'
/var/www/discourse/lib/compression/strategy.rb:18:in `block in decompress'
/var/www/discourse/lib/compression/gzip.rb:30:in `get_compressed_file_stream'
/var/www/discourse/lib/compression/strategy.rb:15:in `decompress'
/var/www/discourse/lib/backup_restore/backup_file_handler.rb:86:in `extract_db_dump'
/var/www/discourse/lib/backup_restore/backup_file_handler.rb:23:in `decompress'
/var/www/discourse/lib/backup_restore/restorer.rb:42:in `run'
script/discourse:143:in `restore'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor/command.rb:27:in `run'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor/invocation.rb:127:in `invoke_command'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor.rb:392:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor/base.rb:485:in `start'
script/discourse:284:in `<top (required)>'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli/exec.rb:63:in `load'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli/exec.rb:63:in `kernel_load'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli/exec.rb:28:in `run'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli.rb:476:in `exec'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor.rb:399:in `dispatch'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli.rb:30:in `dispatch'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/base.rb:476:in `start'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/cli.rb:24:in `start'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/exe/bundle:46:in `block in <top (required)>'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/friendly_errors.rb:123:in `with_friendly_errors'
/usr/local/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/exe/bundle:34:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Попытка отката...
Откат не потребовался
Очистка временных файлов...
Удаление временного каталога '/var/www/discourse/tmp/restores/default/2020-08-26-075829'...
Продолжение работы sidekiq...
Восстановление помечено как завершенное...
Уведомление системы 'system' об окончании восстановления...
Готово!
[FAILED]
Восстановление завершено.

Честно говоря, возможно

:question: