On Fri, 2009-08-28 at 17:55 +0300, Martin Pihlak wrote: > This is weird, indeed it seems that for some reason the recovery restartpoints > are not created. > > Looking quickly at RecoveryRestartPoint() in xlog.c, there are two cases when it > doesn't do a checkpoint. For one thing, it checks if if enough time has elapsed > since last controlfile modification. If not, the checkpoint is skipped. I'm wondering > if it does the correct thing if the clocks of two machines are too far apart. Probably not that. > Another check is "is it safe to do a checkpoint". This is logged with DEBUG2, so > it should be visible if you set the logging level accordingly. This seems like the most likely cause. I would guess that one of your GiST indexes has a corruption in it and is preventing a restartpoint from taking place. That has happened previously. > Alternatively, you could attach a debugger to the recovery process and see if the > RecoveryRestartPoint() and CheckPointGuts() functions are called at all. I would say no need for that, but you can check the Gist pending actions table. -- Simon Riggs www.2ndQuadrant.com -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general