ばかげているので投稿するのは難しいですが、私の問題の直接的な解決策は、AmazonS3でリンクを公開しなかったことです。そのため、403エラーが発生していました。
潜在的な混乱は、エンコードされた文字の長い文字列である非公開リンクを使用できることです。ただし、キャッシュされたURLを使用します。キャッシュは一時的なものであるため、復元プロセスが完了する前にキャッシュが破棄されました。
したがって、答えは、Amazon S3リンクを公開してから、公開リンクを使用することです。例:https://s3-us-west-2.amazonaws.com/your_bucket_name/your_file_name.dump
。
次に:heroku pg:backups restore 'https://s3-us-west-2.amazonaws.com/your_bucket_name/your_file_name.dump' HEROKU_DATABASE_URL
。
そうは言っても、この問題と同時に、AccessExclusiveLock
に関連する「デッドロック」の問題がまだあると思います。 個別に解決する必要があること、つまり、キャッシュがタイムアウトするのに十分な時間がpg_restoreにかかることでしたが、それは別の問題です。