Migrate PostgreSQL.
Zero downtime.
Exodus deploys as a wire-protocol proxy with dual-write, two-phase commit, and instant rollback. No code changes, no maintenance windows.
Supported Systems
Amazon RDS
Amazon Aurora
Google Cloud SQL
Azure Database
Supabase
Neon
CockroachDB
Databricks Lakebase
Self-HostedHow it works
11 steps to a zero-downtime PostgreSQL migration
Current State/ Direct Connection
Your applications connect directly to your existing PostgreSQL database. No proxy, no intermediary.

Deploy Exodus/ Wire-Protocol Proxy
Exodus deploys as a transparent proxy that speaks native PostgreSQL wire protocol. Clients connect without code changes.
Analyze/ Traffic + Schema
Exodus analyzes traffic patterns, schema structure, triggers, sequences, replication state, and session behavior. Builds a complete migration profile.

Recommend Target/ Optimal Configuration
Based on traffic analysis, Exodus recommends the optimal target PostgreSQL deployment with the right configuration and sizing.
Connect Target/ Dual-Write Activation
Exodus establishes connections to both databases. Dual-write mode activates — every write is applied to both source and target.
Shadow Test/ Correctness Validation
Exodus replays production traffic against the target and compares responses. Validates query plans, implicit casts, collation behavior, and latency.

Redirect to Exodus/ Proxy Activated
Update your connection string to point at Exodus. Exodus proxies everything to the source database while mirroring all writes to the target via dual-write.
Canary Migration/ Gradual Read Shift
Reads shift gradually from source to target with WAL lag-aware routing. The write serializer prevents ordering anomalies. Instant rollback at every step.
Complete Migration/ Full Cutover
All traffic flows through Exodus to the target database. The source is idle, still running as a fallback. Divergence detection confirms consistency.

Decommission Source/ Clean Up
Source database decommissioned. Exodus stays as the orchestration layer, monitoring and ready for the next migration.

Remove Exodus/ Optional
Optionally remove Exodus. Your applications connect directly to the target database. No lock-in, no residual dependencies.

Built for production PostgreSQL
Every feature driven by real-world migration challenges
Two-Phase Commit
True cross-database atomicity using PostgreSQL's native PREPARE TRANSACTION mechanism. Both databases commit or neither does.
Dual-Write Proxy
Transparent wire-protocol proxy that intercepts connections and mirrors writes to both source and target databases in real time.
Shadow Testing
Replays live production traffic against the target and compares responses. Validates correctness and latency before any cutover.
Instant Rollback
Roll back to the source at any point during migration. The interlay proxy redirects traffic in milliseconds with zero data loss.
Write Serialization
Per-row mutex map serializes concurrent writes to the same row across both databases, preventing ordering anomalies.
Replay Queue
Background retry with exponential backoff for failed secondary writes. Transaction batches are replayed atomically with BEGIN/COMMIT wrapping.
WAL Lag-Aware Routing
Monitors pg_replication_slots in real time. Reads are redirected away from lagging replicas to prevent stale data.
Session State Replication
SET, RESET, and DISCARD commands are mirrored to both endpoints. Transaction replays include session context for identical behavior.
Divergence Detection
Background polling compares row counts across databases on a configurable interval. Trigger-bearing tables are prioritized.
Full Protocol Coverage
Both Simple Query and Extended Query (prepared statements) protocols are fully supported with identical dual-write semantics.
Read-Your-Writes Consistency
Session affinity tracker pins reads to the authoritative side after secondary failures. Integrates with replay queue depth for automatic clearing.

Datadog Observability
Per-request metrics exported to Datadog for full migration visibility. Track latency, error rates, and throughput across both endpoints in real time.
Multiple migration strategies
Choose the right approach for your risk tolerance and timeline
Big Bang
All traffic switches to the target at once. Fastest cutover for systems that can tolerate a brief maintenance window.
Canary
Gradual traffic shift from 5% to 100% with instant rollback at every step. The safest path for most production systems.
Blue/Green
Run both environments in parallel, validate the target under real load, then switch over with a single routing change.
User-by-User
Migrate individual users or tenants incrementally. Ideal for multi-tenant systems where per-tenant rollback is required.
Shadow
Mirror production traffic to the target for validation without affecting live users. Proves correctness before any cutover.
Write consistency policies
Choose the right trade-off between consistency, latency, and availability
TwoPhaseCommit
StrongestACID, true 2PC using PREPARE TRANSACTION. Both databases commit atomically or neither does.
BothRequired
RecommendedNon-ACID, sequential execution on both databases. Failed secondary writes are enqueued for replay.
OldAuthoritative
Source database is the source of truth. Target receives replayed writes on failure.
NewAuthoritative
Target database is the source of truth. Source receives replayed writes on failure.
BestEffort
Fire-and-forget to the secondary. Lowest latency impact during migration.
Every correctness gap, documented
26 gaps identified in joint review. Here's how each one is handled.
Ready to migrate PostgreSQL?
PostgreSQL migration is in early access. We work directly with your team to plan, test, and execute the migration.