List:General Discussion« Previous MessageNext Message »
From:Shawn Green Date:May 14 2010 3:40pm
Subject:Re: Implementation of Key Caches
View as plain text  
James W. McKelvey wrote:
> According to the 5.1 docs, I can have multiple key caches for MYISAM on 
> a 32-bit host, each with up to 4G.
> 
> But that means that each cache can take the entire address space of a 
> process. How does the MySQL server get around the limitation?
> 

If the OS fails to allow the memory allocation, then the request will 
fail. That will stop your MySQL instance immediately.

The 4GB total limit is not something that 32 bit hardware can work 
around easily as it is endemic to the fact that there are, at most, only 
32 bits available for memory addressing.

What's even worse that that some Operating Systems will not provide the 
full 4GB to the applications. They, such as Windows, only give about 2GB 
to the processes and reserve the other 2 for the OS to use.

If you need to allocate more memory, it is best to upgrade to a 64 bit 
machine running a 64 bit OS.
-- 
Shawn Green
MySQL Principle Technical Support Engineer
Oracle USA, Inc.
Office: Blountville, TN
Thread
Implementation of Key CachesJames W. McKelvey14 May
  • Re: Implementation of Key CachesShawn Green14 May