raised checkpoint limit & manual checkpoint - Mailing list pgsql-hackers

From Fabien COELHO
Subject raised checkpoint limit & manual checkpoint
Date
Msg-id alpine.DEB.2.20.1609240818210.6473@lancre
Whole thread Raw
Responses Re: raised checkpoint limit & manual checkpoint
List pgsql-hackers
Hello,

The checkpoint time limit has just been raised to one day after a 
discussion started by Andres Freund:

https://www.postgresql.org/message-id/20160202001320.GP8743%40awork2.anarazel.de

I would have gone further up, say one week or even one month, but I think 
that this new limit is an improvement over the previous 1 hour maximum.

Now ISTM that there is a possible use case which arises with this new 
setting and is not well addressed by postgresql:

Let us say that an application has periods of high and low usage, say over 
a day, so that I want to avoid a checkpoint from 8 to 20, but I'm okay 
after that. I could raise the size and time limits so that they do not 
occur during these hours and plan to do a manual CHECKPOINT once a day 
when I see fit.

Now the problem I see is that CHECKPOINT means "do a CHECKPOINT right now 
as fast as possible", i.e. there is no throttling whatsoever, which leads 
to heavy IO and may result in a very unresponsive database.

I would suggest that a good complementary feature would be to allow a 
manual checkpoint to run over a period of time, say something like:
  CHECKPOINT OVER '10 hours';

That would target to complete after this period (whether it succeeds or 
not is another issue) instead of going as fast as possible, thus avoiding
some performance degradation.

Any thoughts?

-- 
Fabien.



pgsql-hackers by date:

Previous
From: Pavel Stehule
Date:
Subject: Re: patch: function xmltable
Next
From: Craig Ringer
Date:
Subject: Re: 9.6 TAP tests and extensions