Bug #35432 Can't set maria_pagecache_buffer_size at runtime.
Submitted: 19 Mar 2008 11:42 Modified: 5 May 2008 16:38
Reporter: Santo Leto Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Maria storage engine Severity:S3 (Non-critical)
Version:5.1.23a-maria-alpha OS:Windows (XPSP2)
Assigned to: CPU Architecture:Any
Tags: maria tuning, maria_pagecache_buffer_size

[19 Mar 2008 11:42] Santo Leto
Description:
If I am not mistaken, the variable maria_pagecache_buffer_size is the maria equivalent of key_buffer_size.
If yes, it should be a dynamic variable but, unfortunately, it can't be edited using the SET GLOBAL syntax.

Is that a bug or a feat. request?

How to repeat:
set global maria_pagecache_buffer_size=20971520;

mysql> set global maria_pagecache_buffer_size=20971520;
ERROR 1238 (HY000): Variable 'maria_pagecache_buffer_size' is a read only variable

Suggested fix:
Tag maria_pagecache_buffer_size as a dynamic variable (if possible).
[19 Mar 2008 13:02] Guilhem Bichot
Hello!
Yes in MyISAM you can set it dynamically. Assuming this is set to a smaller value than the current value, this has to shrink MyISAM's key cache, while not preventing reads and writes to the table, which is a tricky algorithm (known as "key cache online resizing"). Such algorithm is not yet implemented in Maria, this is why maria_page_buffer_size is not dynamically settable.
We are sorry that we have forgotten to list this difference in
http://dev.mysql.com/doc/refman/5.1-maria/en/se-maria-designnotes.html
we will soon add it.
[19 Mar 2008 13:05] Guilhem Bichot
Docs team: could you please, in
http://dev.mysql.com/doc/refman/5.1-maria/en/se-maria-designnotes.html
paragraph "Disadvantages of Maria  (compared to MyISAM), that will be fixed in forthcoming releases":
page cache size (maria_page_buffer_size) is not dynamically settable like MyISAM's key cache size (key_buffer_size is) is.
[5 May 2008 16:38] Paul DuBois
Added to the "disadvantage" list:

The maria_page_buffer_size system variable that controls the Maria
page cache size is not dynamically settable like the corresponding
MyISAM variable, key_buffer_size.