On 08/23/2014 12:47 PM, Andres Freund wrote:
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.





I think this needs to be documented very clearly and explicitly. My question about the mechanism was similar to Simon's, and I looked in vain for any clue about it in the committed docs.

cheers

andrew


--
Sent via pgsql-committers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers

Reply via email to