バックアップからの復元中にエラーが発生しました: discourse_functions.raise_discourse_voting_category_settings_readonly() が存在しません

こんにちは。

メインインスタンス Discourse 3.4.0.beta1-dev バージョン 633a19fcc09a41a31eadd176519483217b2ec241 で作成したバックアップがあります。

これをローカルインスタンスにアップロードしたいのですが、ローカルインスタンスは Discourse 3.4.0.beta1-dev バージョン 2b577950af5b24ed0d32eecc4ab6475619998fba を実行しているクリーンインストールです。

ログは以下の通りです。回避策について何か提案はありますか?

[2024-08-03 16:45:29] CREATE INDEX
[2024-08-03 16:45:29] CREATE INDEX
[2024-08-03 16:45:29] ERROR:  function discourse_functions.raise_discourse_voting_category_settings_readonly() does not exist
[2024-08-03 16:45:29] EXCEPTION: psql failed: ERROR:  function discourse_functions.raise_discourse_voting_category_settings_readonly() does not exist

ローカルインスタンスにも同じプラグインセットがありますか?

「いいね!」 1

こんにちは。

いいえ、問題はPost Voting Pluginがインストールされていなかったことでした。興味深いことに、メインサイトでは有効になっていませんでしたが(デフォルトでインストールされていただけ)、それだけでエラーを引き起こすには十分だったようです。ありがとうございました。

「いいね!」 2

開発インスタンスでも同じエラーが発生しています(pgvector の最新バージョンを取得するために pg16 にアップグレードしたばかりで、以前はこの復元が失敗していました)。これは git pull したばかりのものです。

投稿投票とトピック投票の両方を追加しました(トピック投票はソースにありました)。

私の考えでは、

 DROP table discourse_voting_category_settings;

を実行することでしたが、その後 CASCADE を追加する必要があることに気づき、怖気づいてステージングへの復元を試みました。

ステージングサイトで、同じデータベースを復元しようとすると、次のエラーが発生します。

ERROR:  type "hotlinked_media_status" already exists
EXCEPTION: psql failed: ERROR:  type "hotlinked_media_status" already exists
/var/www/discourse/lib/backup_restore/database_restorer.rb:92:in `restore_dump'
/var/www/discourse/lib/backup_restore/database_restorer.rb:26:in `restore'
/var/www/discourse/lib/backup_restore/restorer.rb:51:in `run'

それは違うようです。過去3週間は忘れていましたが、それ以来、投稿投票プラグインがインストールされていない場合にバックアップの復元に失敗するケースがいくつかありました。ですから、それは確かに問題です。

しかし、hotlinked_media_status は2022年からのコアテーブルです…ですから、それは何か別のものに違いありません。

./db/migrate/20220428094026_create_post_hotlinked_media.rb

(ちなみに、過去11年間のすべての問題の日記をつけていますが、その問題については何も言及されていません)

「いいね!」 2

開発インスタンスには、本番サイトと同じプラグインがすべて含まれており、そこにバックアップを復元したことを確認しました。

しかし、ステージングサイト(なぜかMicrosoft認証プラグインがありませんが、それが原因ということはないですよね?!?!?)では、まだ EXCEPTION: psql failed: ERROR: type \"hotlinked_media_status\" already exists という問題が発生しています。

でも、検索してみると:

以前にも似たような問題が修正されたようです。

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