こんにちは。
しばらくの間、Discourseインスタンスのバックアップ(およびアップグレード)ができない状態にあります。
バックアップを実行すると、このエラーが発生します。
pg_dump: public.email_change_requests テーブルの内容をダンプしています
pg_dump: public.email_logs テーブルのデータを処理しています
pg_dump: public.email_logs テーブルの内容をダンプしています
pg_dump: エラー: テーブル "email_logs" の内容のダンプに失敗しました: PQgetResult() が失敗しました。
pg_dump: エラー: サーバーからのエラーメッセージ: エラー: トランザクション 4156776275 のステータスにアクセスできませんでした
詳細: ファイル "pg_xact/0F7C" を開けませんでした: そのようなファイルやディレクトリはありません。
pg_dump: エラー: コマンドは次のとおりでした: COPY public.email_logs (id, to_address, email_type, user_id, created_at, updated_at, post_id, bounce_key, bounced, message_id, smtp_group_id, cc_addresses, cc_user_ids, raw, topic_id) TO stdout;
例外: pg_dump が失敗しました
ここで多くの投稿を読み、多くのことを試した後、最終的にそのテーブルをクエリしようとしましたが、このエラーが発生しました。
discourse=# select * from email_logs;
ERROR: トランザクション 4156776275 のステータスにアクセスできませんでした
詳細: ファイル "pg_xact/0F7C" を開けませんでした: そのようなファイルやディレクトリはありません。
discourse=#
この問題は長期間続いており、最後のバックアップからの復元は実際には選択肢ではありません。この「バックアップの問題」以外は、Discourseは正常に動作しています。
Email_logs は単なるログテーブルのように見え、バックアップが再び実行されるようになれば、メールの最終的なログを失っても問題ありません。email_logs テーブルを TRUNCATE しても問題ありませんか、それとも失われたデータがさらにエラーを発生させますか?
ご協力ありがとうございます。