Re: Change pgarch_readyXlog() to return .history files first

From: David Steele <david(at)pgmasters(dot)net>
To: Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Cc: Michael Paquier <michael(at)paquier(dot)xyz>
Subject: Re: Change pgarch_readyXlog() to return .history files first
Date: 2018-12-13 18:45:30
Message-ID: 43343793-7e7b-f9d4-be3e-283f19b90e87@pgmasters.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 12/13/18 11:53 AM, David Steele wrote:
> Hackers,
>
> The alphabetical ordering of pgarch_readyXlog() means that on promotion
> 000000010000000100000001.partial will be archived before 00000002.history.
>
> This appears harmless, but the .history files are what other potential
> primaries use to decide what timeline they should pick. The additional
> latency of compressing/transferring the much larger partial file means
> that archiving of the .history file is delayed and greatly increases the
> chance that another primary will promote to the same timeline.
>
> Teach pgarch_readyXlog() to return .history files first (and in order)
> to reduce the window where this can happen. This won't prevent all
> conflicts, but it is a simple change and should greatly reduce
> real-world occurrences.
>
> I also think we should consider back-patching this change. It's hard to
> imagine that archive commands would have trouble with this reordering
> and the current ordering causes real pain in HA clusters.

Some gcc versions wanted more parens, so updated in attached.

--
-David
david(at)pgmasters(dot)net

Attachment Content-Type Size
history-files-first-v2.patch text/plain 3.4 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Hugh Ranalli 2018-12-13 18:50:37 Re: BUG #15548: Unaccent does not remove combining diacritical characters
Previous Message Peter Eisentraut 2018-12-13 18:43:52 Re: tab-completion debug print