OK, ciężko mi to publikować, ponieważ czuję się głupio, ale bezpośrednim rozwiązaniem mojego problemu było to, że nie upubliczniłem mojego linku w Amazon S3. Dlatego otrzymywałem błąd 403.
Potencjalne zamieszanie polega na tym, że możesz użyć linku niepublicznego, który jest długim ciągiem zakodowanych znaków. Ale używa buforowanego adresu URL. Ponieważ pamięć podręczna jest tymczasowa, pamięć podręczna została wyrzucona przed zakończeniem procesu przywracania.
Tak więc odpowiedzią jest upublicznienie linku Amazon S3, a następnie użycie linku publicznego, np.:https://s3-us-west-2.amazonaws.com/your_bucket_name/your_file_name.dump
.
Następnie:heroku pg:backups restore 'https://s3-us-west-2.amazonaws.com/your_bucket_name/your_file_name.dump' HEROKU_DATABASE_URL
.
To powiedziawszy, jednocześnie z tym problemem uważam, że nadal istnieje problem „zakleszczenia” związany z AccessExclusiveLock
że muszę rozwiązać osobno, co powodowało, że pg_restore trwało wystarczająco długo, aby pamięć podręczna wygasła, ale to osobny problem.