S3へのバックアップアップロードが失敗した場合、バックアップはローカルに保存されますが、バックアップ制限は無視されます

マルチパートアップロードによる Scaleway S3 へのバックアップが、いまだに機能しません。Backup Upload to S3 Fails on scaleway (multipart upload)

問題は、アップロードが失敗した場合、通常のローカルバックアップと同様にバックアップがローカルに保存されたままになる点です。これは良いことです。しかし、バックアップの制限が無視されるため、ダウンタイムを引き起こすまで、ローカルディスクがバックアップで無限に埋め尽くされてしまいます。

これは 2.6.4 stable での現象です。

Wasabi S3 を使用しているあるサイトで、ディスクがいっぱいになる問題が発生していました。Discourse でも Wasabi でも、ログにエラーは表示されませんでした。

現在、別の S3 プロバイダーに切り替えたのか、それとも問題が解決しているのかは覚えていません。これは最新の情報です。

「いいね!」 3

よくわかりません。Scaleway S3 が動作しないことを知っているのに、なぜそこにバックアップを保存しようとしているのですか?別の S3 プロバイダーを使用するか、backup_location を「local」に設定するのが最善の解決策だと思います。

いずれにせよ、アップロードに失敗した場合、Discourse はローカルのバックアップを削除するはずです。バックアップログの末尾付近に「Removing archive from local storage…」というメッセージが表示されるはずです。

「いいね!」 6

ローカルストレージから S3 ストレージへの移行時に、この事実は私には知らされていませんでした。メインストレージとは異なる S3 プロバイダーをバックアップ用に使用することはできず、代替プロバイダーを使用するにはメインストレージの完全な移行を行う必要があります。

Scaleway は修正をリリースしている可能性があります(私がリンクした投稿でご確認ください)。そのため、動作確認のためにダウンタイムを伴って何度も再構築するのではなく、週に一度成功するまで試行させています。アップロードに失敗したバックアップは、いずれにせよローカルバックアップフォルダに保持されるためです。

私の投稿で述べたとおり、それは行われません。私の記憶が正しければ、削除されると示すメッセージがログに表示されますが、実際にはそのようなことは起こりません。このエッジケースのバグについて理解したい方がいれば、確認できます。