OK, điều này thật khó để tôi đăng vì tôi cảm thấy rất ngu ngốc, nhưng giải pháp trực tiếp cho vấn đề của tôi là tôi đã không công khai liên kết của mình trên Amazon S3. Đó là lý do tại sao tôi gặp lỗi 403.
Sự nhầm lẫn tiềm ẩn là bạn có thể sử dụng liên kết không công khai, là một chuỗi dài các ký tự được mã hóa. Nhưng nó sử dụng một URL được lưu trong bộ nhớ cache. Vì bộ nhớ cache là tạm thời, bộ nhớ cache đã bị loại bỏ trước khi quá trình khôi phục của tôi có thể kết thúc.
Vì vậy, câu trả lời là đặt liên kết Amazon S3 ở chế độ công khai và sau đó sử dụng liên kết công khai, ví dụ:https://s3-us-west-2.amazonaws.com/your_bucket_name/your_file_name.dump
.
Sau đó:heroku pg:backups restore 'https://s3-us-west-2.amazonaws.com/your_bucket_name/your_file_name.dump' HEROKU_DATABASE_URL
.
Đã nói rằng, đồng thời với sự cố này, tôi tin rằng vẫn còn sự cố 'khóa' liên quan đến AccessExclusiveLock
mà tôi cần giải quyết riêng, điều đó đã làm cho pg_restore mất đủ thời gian để bộ nhớ cache hết thời gian chờ, nhưng đó là một vấn đề riêng biệt.