On 2014-08-23 17:28:38 +0100, Simon Riggs wrote: > On 23 August 2014 14:57, Andres Freund <[email protected]> wrote: > > On August 23, 2014 3:49:32 PM CEST, Simon Riggs <[email protected]> > > wrote: > >>On 22 August 2014 19:30, Alvaro Herrera <[email protected]> > >>wrote: > >> > >>> Implement ALTER TABLE .. SET LOGGED / UNLOGGED > >>> > > >>When moving from unlogged to logged, where do we remove the init fork? > >> > >>Couldn't see the keywords fork or init anywhere in the patch, so maybe > >>its hidden somewhere. > > > > A new relfilenode is filled with the data - the old one, including the init > > fork, gets removed by the normal mechanics of rewriting rels. > > Why do we do that? Table rewrite takes hours.
There was a long thread about it on -hackers. Doing it without a rewrite and without loosing transactional semantics is really rather hard. And having the capability of doing it with a rewrite is better than not having it at all. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-committers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers
