Urgent.News

One page, thousands of outlets. See who else covered it.

Editions

Tech

Cross-Region S3 Replication Without the Gotchas (2026)

Cross-Region S3 Replication Without the Gotchas (2026) Cross-region S3 replication copies objects from a source bucket to a destination in another region, continuously. AWS S3, MinIO, and RustFS all do it, but the failures almost never come from the copy itself. They come from versioning, IAM, and delete-marker defaults you forgot to set. Key facts before you start Check What the official docs…

Cross-region S3 replication is a feature that automatically copies new objects from a source bucket in one region to a destination bucket in another region. The process is asynchronous, meaning that the source bucket acknowledges the write before the destination bucket receives the copy, resulting in eventual consistency rather than real-time synchronization.

This functionality is supported by various systems, including AWS S3, MinIO, and RustFS, which are used for disaster recovery and to provide faster access to data for users in different regions.

However, several often-overlooked details can cause replication to fail silently. The first critical requirement is versioning, which must be enabled on both the source and destination buckets. If versioning is not enabled on either side, the replication process will not function. Additionally, objects that are written before the replication configuration is applied will not be replicated. To address this, tools like S3 Batch Replication can be used to backfill these pre-existing objects.

In terms of permissions, the AWS IAM role used by replication needs specific S3 actions, totaling seven different actions. These include GetReplicationConfiguration, ListBucket, GetObjectVersionForReplication, Acl, and Tagging, as well as ReplicateObject, Delete, and Tags actions. The IAM role also requires a trust policy that allows s3.amazonaws.com to assume the role.

A common mistake is to miss one of these actions or to omit the principal s3.amazonaws.com in the trust policy, leading to silent failures where replication does not occur.

To correctly set up the IAM role and avoid silent failures, the trust policy must include s3.amazonaws.com, and the permissions policy must grant the full set of replication actions. Any omission can result in the absence of data in the destination bucket with no error messages to indicate what went wrong.

The final step involves attaching a replication configuration file, typically in JSON format, to the source bucket using the AWS CLI command. The minimal replication configuration includes specifying the role used for replication and defining the destination bucket. A common mistake is to leave the filter prefix empty, meaning "all objects," which can inadvertently replicate all data, including objects that were not intended to be replicated.

Additionally, the priority of the replication rule must be set, especially when multiple rules are defined.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

How to Reach Your Full Potential as a Programmer (It's Probably Not What You Think)

Every programmer wants to improve. We all dream about becoming the person who can look at a difficult problem, think for a few minutes, and confidently build a solution from scratch.

  • Focus on fundamentals beyond tutorials to understand why code works
  • Experiment with code changes to learn through curiosity and problem-solving
  • Step out of comfort zone by working on unfamiliar technologies and projects

What are your goals for the week? #192

What are your goals for the week? What are you building this week? What do you want to learn? What events are you attending this week? This Week's Goals. Job Search. Network Apply Project work.

  • Goals for the week include job search, networking, and applying for positions
  • Attend Memphis Python User group meeting on Monday and Virtual Coffee session on Thursday
  • Plans involve completing CSS Battles, exploring Codepen features, and potential blogging

MCP Servers for Figma, Jira, GitLab and Playwright

People typing "figma mcp server" or "jira mcp server" into search are usually after the same thing: a connection between a tool they use every day and the AI assistant they already work in.

  • MCP servers connect AI assistants with data sources like Figma, Jira, GitLab, and Playwright.
  • Figma offers local and remote MCP server options, with remote recommended for data protection.
  • GitLab's MCP server is built-in since version 18.3, requiring GitLab Duo and access to MCP.

Laravel Concurrency: Atomicity, Transactions, and Locking

Two customers try to purchase a product at exactly the same time. If the application isn't designed for concurrency, both requests might read stock = 1 and both complete the purchase.

  • Atomicity ensures database operations are treated as a single indivisible unit.
  • Laravel's DB::transaction() method can create atomic operations.
  • Transactions are finalized with COMMIT or undone with ROLLBACK.

More from Monday 17 August →