From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Andres Freund <andres(at)anarazel(dot)de> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: dump/restore doesn't preserve row ordering? |
Date: | 2016-08-24 01:43:43 |
Message-ID: | 1591.1472003023@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Andres Freund <andres(at)anarazel(dot)de> writes:
> On 2016-08-23 17:22:03 -0400, Tom Lane wrote:
>> I can't immediately think of a reason for this. In everyday
>> updates you could theorize about effects like autovacuum
>> asynchonously updating the FSM, but surely the FSM should have no
>> impact on where COPY puts stuff when loading into an empty table.
> It seems possible that a larger row didn't fit on a page anymore, then
> later when a new page was is needed for a smaller row, the earlier page
> is found again. Due to RelationGetBufferForTuple() updating the fsm
> when an old target buffer is present:
Ah. That matches the symptoms --- small groups of rows are getting
relocated, seems like. And there's definitely a wide range of row
lengths in this data.
It's interesting that nobody has complained about this behavior.
Maybe the old fogies are all gone ...
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tsunakawa, Takayuki | 2016-08-24 02:35:40 | Re: [RFC] Change the default of update_process_title to off |
Previous Message | neha khatri | 2016-08-24 01:40:31 | Re: New SQL counter statistics view (pg_stat_sql) |