Got it. Many thanks.
On Wed, Feb 8, 2012 at 10:19 AM, Sunny Bains <Sunny.Bains@stripped> wrote:
> On 08/02/2012, at 1:03 PM, Xuekun Hu wrote:
>> Hi, sunny
>> On Wed, Feb 8, 2012 at 9:50 AM, Sunny Bains <Sunny.Bains@stripped>
>>> On 08/02/2012, at 12:02 PM, Xuekun Hu wrote:
>>>> Hi, Libing
>>>> Many thanks. From the file page types definition, I found
>>>> FIL_PAGE_UNDO_LOG which should represent the undo log page in buffer
>>>> pool. So it also means every change to undo log page in buffer pool
>>>> also follows the page flushing mechanism of buffer pool (writing to
>>>> disk in background, writing to doublewrite buffer, writing the changes
>>>> to transaction log etc). My understanding is right?
>>>> However I also think it is not very accurate about "Innodb buffer pool
>>>> is for all things in table spaces" like you said. :-) I think it
>>>> should exclude the data dictionary which has own memory cache and
>>>> doublewrite buffer. :-)
>>> Song Libing is correct. The data dictionary cache is simply another
>>> of the data dictionary that is on disk. There is no separate buffer pool
>>> for the dictionary cache and it doesn't have a separate double write buffer.
>> Sorry, I don't quite understand the meanings of "separate". You mean
>> the dictionary cache is a part of buffer pool? Also the 2MB of
>> doublewrite buffer in memory is also a part of buffer pool?
> There are many sub-systems that use the buffer pool as a backing store. Heap
> creation takes a flag that determines which backing store to use. Using the
> pool memory is one such flag. By separate I meant that the data dictionary doesn't
> use a special double write buffer.