From the innodb.com site (bugs & fixes):
>On Linux x86 you must be careful you do not set memory usage too high.
glibc will allow the process heap to grow over thread stacks, >which
will crash your server. Make sure
>innodb_buffer_pool_size + key_buffer +
>max_connections * (sort_buffer + record_buffer) + max_connections * 1 MB
>is significantly smaller than 2 GB. Each thread will use a stack
(often 1 MB) and in the worst case also sort_buffer + record_buffer
>additional memory.
This has me worried, but I haven't seen this behaviour on our site. We have
innodb_buffer_pool = 1100Mb
key_buffer = 400 Mb
record_buffer = 10Mb
sort_buffer = 20Mb
max_connections = 220
which according to this formula gives me 1100 + 400 + (220 * (20 + 10))
+ ( 220 * 1) = 8320Mb at max capacity. At roughly half capacity (96
connections) we're using only 1390Mb, so I'm finding it hard to believe
it's going to scale that badly right now. We "only" have 4Gb memory on
our linux-based database machine right now - should I be upgrading? ;-)
Does anyone have any information that either supports or refutes the
statement above? I'd be interested if you did....
Thanks,
John
John Kemp
Director, Software Development
Streetmail Inc.