High availability errors
Errors
Troubleshooting replication failure errors
If you’re writing to the main instance and encounter a message like “Failed to replicate to SYNC replica ‘instance_1’: replica is not reachable or not in sync with the main”, several issues could be causing this.
The message identifies exactly which replicas failed, the replication mode (SYNC or STRICT_SYNC), and the specific failure reason. For a full list of possible failure reasons, see the replication errors reference.
Since Memgraph 3.13, a failure that only affects SYNC replicas does not fail
the query. The transaction is committed on the main instance and on every alive
replica, and the failure is delivered as a SyncReplicationFailure warning
notification in the query
summary. A ReplicationException is raised only when the transaction was rolled
back everywhere, which happens when a STRICT_SYNC replica can’t confirm it.
Below are common causes and how to resolve them:
- Network isn’t correctly configured between MAIN and REPLICAs — Check if hostnames/IPs can be reached from the MAIN instance.
- Replica is behind MAIN — It is possible that the replica is behind MAIN and that the recovery of the replica is in progress. Wait for a bit until the replica catches up with MAIN. If the replica is registered as a SYNC one, the transaction is already committed on MAIN and the replica is recovered automatically.
- Replica has diverged from MAIN — If the error indicates the replica has diverged, manual recovery or a force sync may be needed. See the force sync documentation.
- RPC timeout — If the error mentions an RPC timeout, the replica may be
overloaded, the network latency may be too high, or the replica may have
stopped making progress altogether. The message may suggest adjusting
the
deltas_batch_progress_sizecoordinator setting; as of 3.13 that setting no longer has any effect, because replicas now report progress on a fixed time interval and long single operations (index population, constraint validation, snapshot loading, storage clearing) are covered by that reporting. Check the replica’s logs and load instead.