Ошибка обновления/пересборки. Как диагностировать и восстановить?

Я только что попытался выполнить обновление, и в конце возникла ошибка:

I, [2024-07-04T07:17:18.714988 #807]  INFO -- : Writing /var/www/discourse/public/assets/scripts/discourse-test-listen-boot-9b14a0fc65c689577e6a428dcfd680205516fe211700a71c7adb5cbcf4df2cc5.js
rake aborted!
Zlib::BufError: buffer error (Zlib::BufError)

...
< more stuff >
...

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'SKIP_EMBER_CLI_COMPILE=1 bundle exec rake themes:update assets:precompile' failed with return #<Process::Status: pid 805 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "tag"=>"precompile", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'SKIP_EMBER_CLI_COMPILE=1 bundle exec rake themes:update assets:precompile'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.

Я вижу, что аналогичное сообщение об ошибке уже упоминалось здесь: "Zlib::BufError: buffer error" - Discourse update fails

Но у меня уже указан ID учётной записи MaxMind в YAML-файле.

Думаю, я мог бы зайти в контейнер и снова выполнить эту команду, но интересно: в целом есть ли способ восстановиться после неудачной пересборки, или люди просто пытаются запустить весь процесс заново?

Вчера я сдался и закомментировал MaxMind. Затем я зашел в контейнер, добавил значения в discourse.conf, и база данных успешно подтянулась (довольно сложное обходное решение).

Я не понимаю, как это могло произойти, но это выглядит как баг.

Думаю, сейчас единственное решение — обойтись без MaxMind.

Сегодня у меня возникла такая проблема, однако она случилась лишь один раз. Я просто запустил пересборку снова, и всё прошло успешно. Очень странно, что нет последовательного способа воспроизвести это. Другие контейнеры с похожей конфигурацией собрались без проблем.

Сегодня я пересобрал три сайта, и каждый из них столкнулся с описанной выше проблемой в одно и то же время — сразу после обновления компонентов темы.

При этом каждый второй запуск пересборки проходил успешно без каких-либо изменений с моей стороны. Мне интересно, не является ли MaxMind просто отвлекающим фактором (или же это совершенно другая проблема).

У меня настроена конфигурация из двух контейнеров, поэтому неудачная пересборка не представляет большой проблемы.

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

Не хочется утверждать, что это ошибка, но если что-то выглядит как утка и ведёт себя как утка… :wink:

Подтверждаю проблему с перестроением при использовании MaxMind.
Несколько форумов, все с идентичными плагинами, и все они официальные.

Из командной строки: перестроение с MaxMind завершается ошибкой; если закомментировать MaxMind, перестроение работает нормально.

В /admin «Обновить Discourse»: изменений в app.yml нет, обновление проходит без проблем.