「Zlib::BufError: buffer error」- Discourse アップデート失敗

プラグイン名が「discourse-education-group-custom-fields」ですが、プラグインディレクトリは「discourse-group-custom-fields」という名前です。
一時ファイルを削除中

アセットをバンドル中

rake が中止しました!
Zlib::BufError: buffer error (Zlib::BufError)
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sprockets-3.7.3/lib/sprockets/cache/file_store.rb:100:in <'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sprockets-3.7.3/lib/sprockets/cache/file_store.rb:100:in set' /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/sprockets-3.7.3/lib/sprockets/cache.rb:212:in set’

失敗

Pups::ExecError: cd /var/www/discourse && su discourse -c ‘SKIP_EMBER_CLI_COMPILE=1 bundle exec rake themes:update assets:precompile’ がリターンコード #<Process::Status: pid 1209 exit 1> で失敗しました
失敗場所: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn’
exec がパラメータ {"cd"=>"$home", "tag"=>"precompile", "hook"=>"assets_precompile", "cmd"=>["su discourse -c ‘SKIP_EMBER_CLI_COMPILE=1 bundle exec rake themes:update assets:precompile’ "]} で失敗しました
ブートストラップに失敗しました。終了コード 1
** ブートストラップに失敗しました ** 上記にスクロールして、以前のエラーメッセージを探してください。複数ある場合があります。
./discourse-doctor が問題を診断するのに役立つかもしれません。

「いいね!」 1

最近、同様のエラーがいくつか報告されています。

正確な原因が見つかったかどうかは不明ですが、一方は Animated Avatars、もう一方は Subscriptions(ただし、Subscriptions は私の方では正常に再構築できています)が原因であると考えられていました。

「いいね!」 2

これらのプラグインは使用していません。

   2   │ discourse_plugins:
   3   │   - https://github.com/discourse/docker_manager
   4   │   - https://github.com/discourse/discourse-rss-polling
   5   │   - https://github.com/discourse/discourse-chat-integration
   6   │   - https://github.com/discourse/discourse-yearly-review
   7   │   - https://github.com/discourse/discourse-perspective-api
   8   │   - https://github.com/discourse/discourse-policy
   9   │   - https://github.com/discourse/discourse-shared-edits
  10   │   - https://github.com/discourse/discourse-akismet
  11   │   - https://github.com/discourse/discourse-solved
  12   │   - https://github.com/discourse/discourse-user-notes
  13   │   - https://github.com/discourse/discourse-templates
  14   │   - https://github.com/discourse/discourse-assign
  15   │   - https://github.com/discourse/discourse-docs
  16   │   - https://github.com/discourse/discourse-encrypt
  17   │   - https://github.com/discourse/discourse-cakeday
  18   │   - https://github.com/discourse/discourse-calendar
  19 _ │   - https://github.com/discourse/discourse-data-explorer
  20   │   - https://github.com/kees-closed/discourse-group-custom-fields
  21   │   - https://github.com/discourse/discourse-activity-pub

MaxMind は使用しているので、それが問題かもしれません。Discourse 以外のプラグインはコメントアウトしました。それでも問題は解決しなかったので、非公式プラグインが原因ではないと思います。

コンテナホストも再起動しましたが、ビルド結果に影響はありませんでした。過去にはネットワークの問題が再起動で解決したことがありました。

MaxMindを使用せずに再構築してみましたか?

現時点での最善の説明は、Maxmindの誤ったエラーです。しかし、エラーのいくつかを再度見ても、それも意味をなしません。

Discourse のインストールを更新した際に、この問題が発生しました。

原因は、.yml コンテナファイルで DISCOURSE_MAXMIND_LICENSE_KEY が指定されているにもかかわらず、対応する DISCOURSE_MAXMIND_ACCOUNT_ID が指定されていないことにあると思われます。

@tgxworld 氏のプルリクエストでは、複数の箇所で DISCOURSE_MAXMIND_ACCOUNT_ID の使用が追加されており、「アカウント ID」の必要性が説明されています。

私の場合、DISCOURSE_MAXMIND_ACCOUNT_ID を追加して再構築することで修正できました(2回再構築しましたが、これは一時的な問題だった可能性が高いです)。

「いいね!」 7

最近の再構築はうまくいきました。もしまた問題が発生したら、@DeanMarkTaylorさんの提案を見てみます。皆さん、ありがとうございました!

参考までに、私も Zlib::BufError: buffer error (Zlib::BufError) の再構築エラーに遭遇しましたが、DISCOURSE_MAXMIND_ACCOUNT_ID を追加して再構築したところ、初めて正常に完了しました。:+1:

「いいね!」 4

私もです。アカウントIDを追加して再構築すると、再び機能するようになりました。:slight_smile:

「いいね!」 1

3.3.0.beta3 のリリース時に、このエラーが断続的に発生しました。一度失敗しましたが、その後再構築は成功しました。(この投稿を見つけられなかったので、メモリ破損を心配していました!:grimacing:) 今夜、再構築を行っていたところ、この投稿を見つけて DISCOURSE_MAXMIND_LICENSE_KEYDISCOURSE_MAXMIND_ACCOUNT_ID を追加するまで一貫して失敗していましたが、その後確実に成功しました。

(MaxMind がブルー/グリーンデプロイメントで変更をロールアウトし、以前は毎回異なるバージョンのバックエンドサービスにヒットしていたのだと推測します…)

MaxMind の行が原因で再構築が失敗しました。これまで正常に動作していましたが、app.yml に変更はありません。そのため、何か大きな問題が発生しているはずです。

とにかく、Discourse では必要ないので、コメントアウトしたままにしておきます。しかし、問題が account_id 以外の何かであることは間違いありません。

同意します。app.ymlDISCOURSE_MAXMIND_ACCOUNT_IDを設定しても、私の再構築は失敗しました。

Maxmindに関する言及をすべてコメントアウトした直後に、再構築は成功しました。

「いいね!」 2

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.