Re: buffer cache structure in SGA
Date: Wed, 4 Apr 2018 08:47:50 +0000
Message-ID: <MM1P123MB09881FC4DA11C85604CCBD35A5A40_at_MM1P123MB0988.GBRP123.PROD.OUTLOOK.COM>
Orlando,
All the details about linked lists, hash tables etc. are actually about structures called buffer headers (or possibly buffer handles), the X$BH structure. As you surmise, each buffer header has a pointer to a buffer.
"The book", if you really want to read up a lot of the detail, is https://www.amazon.co.uk/dp/1430239549/ (change .co.uk to .com for USA) "Oracle Core: Essential Internals for DBAs and Developers: Essential Internals for DBAs and Developers".
Regards
Jonathan Lewis
From: Orlando L <oralrnr_at_gmail.com>
Sent: 04 April 2018 00:07
To: Jonathan Lewis
Cc: oracle-l_at_freelists.org
Subject: Re: buffer cache structure in SGA
"It's probably worth including the point that the linked list is still there".
Am I correct in assuming the linked list points to buffers in the hash table?
On Tue, Apr 3, 2018 at 2:29 AM, Jonathan Lewis <jonathan_at_jlcomp.demon.co.uk<mailto:jonathan_at_jlcomp.demon.co.uk>> wrote:
It's probably worth including the point that the linked list is still there - the effect of the touch count is that a buffer is not moved to the head of the list every time it is touched (which is why the latch activity became a threat), but it only moved when it reaches the tail of the list, and then only if it has been touched on the way down.
(Obviously lots more detail I've omitted - but it's in the book)
Regards
Jonathan Lewis
-- http://www.freelists.org/webpage/oracle-lReceived on Wed Apr 04 2018 - 10:47:50 CEST