On 11/1/22 08:34, Laurenz Albe wrote:
On Tue, 2022-11-01 at 02:43 -0500, Ron wrote:
On 11/1/22 01:53, Laurenz Albe wrote:
On Tue, 2022-11-01 at 06:44 +0000, Sacheen Birhade wrote:
If replication is in asynchronous then there will be data loss, right Laurenz?
Why? The data will perhaps show up on the standby a little later, but why is
that data loss? Remember that the question was about replication, and there
was no mention of failover.
No, the question was about a crash during replication: OP (not Sacheen, unless that person
is using two email addresses) explicitly asked "When the primary crashes due an unforeseen
reason (what happens)?"
If the two database systems are really busy, and especially if the network connection
isn't fast enough, async replication means there might be some transactions committed
on Primary which were queued for transmission, but hadn't yet made it to the Secondary, right?
Right. And how does that constitute data loss? If you start the primary again, the transaction
will be replicated just fine. Now if you call it *data delay*, I would agree.
Primary has
crashed, according to OP; it's not coming back any time soon. And thus you promote Secondary to be New Primary, and go about your work. When the Old Primary comes back up (hours or days later), you do a pg_basebackup to make it the New Secondary.
--
Angular momentum makes the world go 'round.