Backups to two different S3 regions no longer work

AI-generated summary

After updating to the latest Discourse commit, the S3 backup system stopped working for a user. The error message suggests that the bucket is being accessed from the wrong endpoint barreeeiroo. The issue seems to be related to the fact that the backups bucket is hosted in a different region (Oregon) than the media bucket (Dublin).

Developer gerhard revealed that using different regions for backups and uploads was never a supported configuration and was actually a bug that has been fixed. The bug caused the s3_region setting to be ignored, allowing the system to work despite the region mismatch gerhard.

However, some users, including schleifer, think that having the option to store backups in a different region could be beneficial for disaster recovery and would like to see this feature added in the future.

Today we have updated Discourse to latest commit, and S3 backup system stopped working

When accessing to /admin/backups, an error failed message is raised, and the JSON outputs this:
The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint

Just before updating, it was working correctly
Now we can’t either make new backups or view current ones


We also use media uploads to S3, which is working properly at this moment
The media bucket is “kodular-community”, and it’s hosted in Dublin

However, the backups bucket is called “kodular-community-backups” and it’s hosted in Oregon

Maybe this issue could be releated in some way to the fact that it’s trying to fetch the “kodular-community-backups” from Dublin endpoint, as it’s the region it’s specified in Admin (?)

But I don’t know why it was working before and suddenly after updating it stopped working

I don’t think using different regions for backups and uploads is a supported configuration. If it ever worked it was a bug.

Yes, it was a bug that I fixed two days ago. Both buckets must be in the same region.

But how was that a bug? What was the effect of it?
Everything was working properly before :confused:

The bug was that the s3_region setting was completely ignored. That prevented Discourse from creating a new bucket and I think other things like uploading/downloading backups from the browser should have failed as well when the bucket’s region differed from the s3_region setting.

It doesn’t make any sense for them to be geographically separate.

An option for the backup bucket to be in a different region would actually be a good idea. How hard would it be to add @gerhard? Default to the same as assets, but override if set.

If your site is hosted in us-east-1[1], and that region has downtime, you can still pull a backup from another region and stand up the site elsewhere.


  1. Don’t host your site there. It’s the worst region ever. ↩︎