"Jim C. Nasby" <jnasby@xxxxxxxxxxxxx> writes: >> PITR wants all changes. Without PITR we can optimise certain logging >> actions. > The only change here is that we're creating a new table based on the > results of a SELECT. If that SELECT doesn't use anything that's > non-deterministic, then the machine doing the recovery should already > have all the data it needs, provided that we log the SELECT that was > used in the CTAS. This is based on a fundamental misconception about the way PITR log-shipping works. We log actions at the physical level (put this tuple here), not the logical here's-the-statement-we-executed level. The two approaches cannot mix, because as soon as there's any physical discrepancy at all, physical-level actions would be incorrectly applied to the slave database. regards, tom lane