RE: Table with ~255+ columns

From: Mark W. Farnham <>
Date: Wed, 2 Dec 2020 14:22:42 -0500
Message-ID: <094101d6c8e0$81ac98d0$8505ca70$>

That all makes sense, I DID miss that memo.  

I was always clear on the “one step away” part. Which is n+1 for multi-piece rows maximum where n is the number of pieces, right?  

But the un-migration was news to me. I’m actually a bit surprised, since that goes against the “least work in real time” general rule, but on the other hand they are changing the block anyway, so the marginal work is very low and the every time hence forth worth is high.  

Now the question about “un-piecing” remains, right?  


From: [] On Behalf Of Jonathan Lewis Sent: Tuesday, December 01, 2020 6:16 PM To: Oracle L
Subject: Re: Table with ~255+ columns    


My comment was about migrated rows, not chained rows, ,and I specifically said that Oracle "MIGHT also do something sensible with chained rows".

There are too many variations that would need investigating with chained rows (especially with the 11g bugs) to make it worth anyone's time looking at them unless they really, really, needed to.  

The suggestion you've heard, though, SOUNDS LIKE a red herring. Chained rows (like migrated rows) have not moved - i.e. their rowids have not changed - therefore enabling row movement should be irrelevant. On the other hand the chained row pieces have to have their directory entries deleted if they're going to taken back to their original block, so there may be some cases where it matters.  


Jonathan Lewis        

On Tue, 1 Dec 2020 at 22:41, Mladen Gogala <> wrote:

Hi Jonathan,

I have known about that for some time, but I missed your article. However, I was told that enabling row movement is a requirement for moving chained rows back to the original block. You didn't enable row movement in your example. Is there any difference, can you comment on that?


On 11/30/20 5:05 PM, Jonathan Lewis wrote:  


You missed a memo - Oracle can MIGRATE a row back to its original location on an update:

The note is a bit old, so I really ought to check it for newer versions, I guess.  

Oracle MIGHT also do something sensible with rows that are chained because of column lengths when the number of columns is no more than 255, but anything might happen if there are more than 255 non-null columns in the row.  


Jonathan Lewis    

Received on Wed Dec 02 2020 - 20:22:42 CET

Original text of this message