On Fri, Jan 01, 2021 at 11:05:29PM +0500, Andrey Borodin wrote:
> I've found this thread in CF looking for something to review.

Thanks for taking a look.

> > 9 нояб. 2020 г., в 09:53, Noah Misch <n...@leadboat.com> написал(а):
> > 
> > Rebased both patches, necessitated by commit c732c3f (a repair of commit
> > dee663f).  As I mentioned on another branch of the thread, I'd be content if
> > someone reviews the slru-truncate-modulo patch and disclaims knowledge of 
> > the
> > slru-truncate-insurance patch; I would then abandon the latter patch.
> > <slru-truncate-modulo-v5.patch><slru-truncate-t-insurance-v4.patch>
> 
> Commit c732c3f adds some SYNC_FORGET_REQUESTs.
> slru-truncate-modulo-v5.patch fixes off-by-one error in functions like 
> *PagePrecedes(int page1, int page2).
> slru-truncate-t-insurance-v4.patch ensures that off-by-one errors do not 
> inflict data loss.
> 
> While I agree that fixing error is better than hiding it, I could not figure 
> out how c732c3f is connected to these patches.
> Can you please give me few pointers how to understand this connection?

Commit c732c3f is the last commit that caused a merge conflict.  There's no
other connection to this thread, and one can review patches on this thread
without studying commit c732c3f.  Specifically, this thread's
slru-truncate-modulo patch and commit c732c3f modify adjacent lines in
SlruScanDirCbDeleteCutoff(); here's the diff after merge conflict resolution:

--- a/src/backend/access/transam/slru.c
+++ b/src/backend/access/transam/slru.c
@@@ -1525,4 -1406,4 +1517,4 @@@ SlruScanDirCbDeleteCutoff(SlruCtl ctl, 
  
 -      if (ctl->PagePrecedes(segpage, cutoffPage))
 +      if (SlruMayDeleteSegment(ctl, segpage, cutoffPage))
-               SlruInternalDeleteSegment(ctl, filename);
+               SlruInternalDeleteSegment(ctl, segpage / 
SLRU_PAGES_PER_SEGMENT);
  


Reply via email to