One or more non-transitory computer media storing one or more programs for providing a linearizable primary-secondary database system to a client even though database data is replicated with eventual consistency, the one or more programs for execution by a computing system comprising one or more processors and storage media, the one or more programs comprising instructions configured for:
- obtaining a read request;
- lingering the read request until a secondary database is in a consistent replication state with respect to a primary database;
- causing the read request to be executed against the secondary database, if the secondary database reaches the consistent replication state before expiration of a timer;
- and
- causing the read request to be executed against the primary database, if the secondary database does not reach the consistent replication state before expiration of the timer.