Rewritten rows on unchanged values - Mailing list pgsql-general

From Bertrand Janin
Subject Rewritten rows on unchanged values
Date
Msg-id 20130322123254.GA21592@tamentis.com
Whole thread Raw
Responses Re: Rewritten rows on unchanged values
List pgsql-general
I noticed how rows were re-written to a different location (new ctid) even
without changes to the values. This illustrate what I mean:

    CREATE TABLE demo (id serial, value text);

    -- generate a few pages of dummy data
    INSERT INTO demo (value)
    SELECT md5(s.a::text)
    FROM generate_series(1, 1000) AS s(a);

    -- ctid = (0,1)
    SELECT id, xmin, ctid, value
    FROM demo
    WHERE id = 1;

    UPDATE demo
    SET value = value
    WHERE id = 1;

    -- ctid = (8,41)
    SELECT id, xmin, ctid, value
    FROM demo
    WHERE id = 1;

I'm curious as to what would prevent keeping the row where it is and maybe
change xmin in place?

Thanks,
-b


pgsql-general by date:

Previous
From: Juraj Fabo
Date:
Subject: Why is pg_xlog/archive_status of HotStandby synced with master?
Next
From: Adrian Klaver
Date:
Subject: Re: Rewritten rows on unchanged values