Yeah, I'm pretty sure hrishy is aware of what Chaining/Migration is and it's effects. The questions was more, Why was a pointer maintained in the original block. Hence the discussion.
Cheers,
Printable View
Yeah, I'm pretty sure hrishy is aware of what Chaining/Migration is and it's effects. The questions was more, Why was a pointer maintained in the original block. Hence the discussion.
Cheers,
This is perhaphs the number one skill that i would look for in any DBAQuote:
Originally posted by grjohnson
Another sign of a good DBA: Might not know the answer, but knows where to find it. Very important...
:D
regards
Hrishy
Yeah .
I mistook it as a separate Q.(when row migration takes place)
Cheers
I belive this reason cud be the one of the reasons....Quote:
Originally posted by hrishy
Hi
2)when you have row migration why does oracle keep a pointer in the block to the row where it has moved now ?
regards
Hrishy
after Insert of data....a pointer pointing to memoray location is assinged to it.
after deletion of data....the pointer is dropped and not actual data is deleted, as writing 0 on disk takes too much time & unnecesssary use of resources.....
So if we think logically, and i AFAIK Oracle is wrriten in C to handle the memory allocation and deallocation part, Pointers to memory location can be assigned or dropped and can be updated but requires complex logic.......instead Pointer to Pointer wud be more flexible and easy....so when a row is migrated...a new pointer is assigned......
Correct me if i am wrong.......
Abhay.
No worries... :D I do it sometimes as well, skim the question and then answer. :pQuote:
Originally posted by k.chithra
Yeah .
I mistook it as a separate Q.(when row migration takes place)
Cheers