Re: InnnoDb - change innodb_buffer_pool_size ?

2005-06-15 Thread Joerg Bruehe

Hello Michael!


Michael Gale wrote:

Hello,

I have finished reading something similer on the web, why is there a 
2GB limit ?


I assume you are using Linux on an x86 compatible machine (Pentium, 
Athlon, ...), so you have 32 bit addresses.
32 bit give you 4 G different values; as each address identifies a 
single byte, you can address 4 GB on the machine.


The Linux kernel differs between user and system addresses, this is 
essential to pass data around, for example in system calls.
Traditionally, this was done on the highest address bit (2 GB system 
address space, 2 GB user). With the growing size of applications, this 
has become configurable (with kernel generation) to a 1 / 3 ratio.




If I can compile the kernel to say eys there is 4GB of memory why can 
mysql not use 3GB of it ?


But still these 3 GB (space of virtual addresses) must hold everything 
the application (in your case: MySQL) can address, so it contains code, 
stacks of all threads in the process, static data, all configurable 
buffers etc.


As a first step, you can use the size command on mysqld to get some 
of these values, then calculate the total thread stack space and add it.
Subtract that from your user address space size (2 or 3 GB), and 
distribute the result among all buffers, caches etc.


In any case, I see no way to use 3 GB just for the InnoDB buffer pool on 
a 32 bit system.



Joerg Bruehe

--
Joerg Bruehe, Senior Production Engineer
MySQL AB, www.mysql.com


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: InnnoDb - change innodb_buffer_pool_size ?

2005-06-15 Thread Jeff Smelser
On Tuesday 14 June 2005 11:57 pm, Michael Gale wrote:

   Even if I change the value to 2G it still will not load ? Because the
 value was 500M before do I not have to remove the ib* files and have
 them recreated ?

2g is still to large.. its 2gig for all buffer pools, not just that one..

I keep mine to 1.5 and all the others are really low or turned off.

Jeff


pgpTAtr1JpbRo.pgp
Description: PGP signature


InnnoDb - change innodb_buffer_pool_size ?

2005-06-14 Thread Michael Gale

Hello,

	I am running mysql 4.0.20 with Innodb and we have upgrade grade the RAM 
in the system from 1GB to 4GB :).


Now If I change the:

innodb_buffer_pool_size

From 500M to 3G the service will not start. I remember reading 
something about this before and I believe I need to delete the 
ib_logfile* files or something .. and they will get recreated on start up ??


Any help is appreciated :)

Here is my mysql.log output:

050614 19:50:50  mysqld started
050614 19:50:50 Warning: Asked for 196608 thread stack, but got 126976
InnoDB: Fatal error: cannot allocate 3221241856 bytes of
InnoDB: memory with malloc! Total allocated memory
InnoDB: by InnoDB 20288332 bytes. Operating system errno: 12
InnoDB: Cannot continue operation!
InnoDB: Check if you should increase the swap file or
InnoDB: ulimits of your operating system.
InnoDB: On FreeBSD check you have compiled the OS with
InnoDB: a big enough maximum process size.
InnoDB: We now intentionally generate a seg fault so that
InnoDB: on Linux we get a stack trace.
mysqld got signal 11;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help 
diagnose
the problem, but since we have already crashed, something is definitely 
wrong

and this may fail.

key_buffer_size=67108864
read_buffer_size=2093056
max_used_connections=0
max_connections=100
threads_connected=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections 
= 3546735 K

bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

thd=0x8424780
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
Bogus stack limit or frame pointer, fp=0xbfffeb88, 
stack_bottom=0x20386365, thread_stack=126976, aborting backtrace.

Trying to get some variables.
Some pointers may be invalid and cause the dump to abort...
thd-query at 0x64207369  is invalid pointer
thd-thread_id=484
The manual page at http://www.mysql.com/doc/en/Crashing.html contains
information that should help you find out what is causing the crash.
050614 19:50:50  mysqld ended


Michael

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



RE: InnnoDb - change innodb_buffer_pool_size ?

2005-06-14 Thread Partha Dutta
If you are running on a 32 bit operating system, (e.g. Linux) you can not
allocate that much memory for InnoDB.  The max you could allocate would be
2GB, but that would be pushing it.  You also have to account for MyISAM
memory usage (key_buffer_size) and per thread memory allocations as well.

Partha

--
Partha Dutta, Senior Consultant
MySQL Inc, NY, USA, www.mysql.com
 
Are you MySQL certified?  www.mysql.com/certification
 
 -Original Message-
 From: Michael Gale [mailto:[EMAIL PROTECTED]
 Sent: Tuesday, June 14, 2005 10:04 PM
 To: mysql@lists.mysql.com
 Subject: InnnoDb - change innodb_buffer_pool_size ?
 
 Hello,
 
   I am running mysql 4.0.20 with Innodb and we have upgrade grade the
 RAM
 in the system from 1GB to 4GB :).
 
 Now If I change the:
 
 innodb_buffer_pool_size
 
  From 500M to 3G the service will not start. I remember reading
 something about this before and I believe I need to delete the
 ib_logfile* files or something .. and they will get recreated on start up
 ??
 
 Any help is appreciated :)
 
 Here is my mysql.log output:
 
 050614 19:50:50  mysqld started
 050614 19:50:50 Warning: Asked for 196608 thread stack, but got 126976
 InnoDB: Fatal error: cannot allocate 3221241856 bytes of
 InnoDB: memory with malloc! Total allocated memory
 InnoDB: by InnoDB 20288332 bytes. Operating system errno: 12
 InnoDB: Cannot continue operation!
 InnoDB: Check if you should increase the swap file or
 InnoDB: ulimits of your operating system.
 InnoDB: On FreeBSD check you have compiled the OS with
 InnoDB: a big enough maximum process size.
 InnoDB: We now intentionally generate a seg fault so that
 InnoDB: on Linux we get a stack trace.
 mysqld got signal 11;
 This could be because you hit a bug. It is also possible that this binary
 or one of the libraries it was linked against is corrupt, improperly
 built,
 or misconfigured. This error can also be caused by malfunctioning
 hardware.
 We will try our best to scrape up some info that will hopefully help
 diagnose
 the problem, but since we have already crashed, something is definitely
 wrong
 and this may fail.
 
 key_buffer_size=67108864
 read_buffer_size=2093056
 max_used_connections=0
 max_connections=100
 threads_connected=0
 It is possible that mysqld could use up to
 key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections
 = 3546735 K
 bytes of memory
 Hope that's ok; if not, decrease some variables in the equation.
 
 thd=0x8424780
 Attempting backtrace. You can use the following information to find out
 where mysqld died. If you see no messages after this, something went
 terribly wrong...
 Bogus stack limit or frame pointer, fp=0xbfffeb88,
 stack_bottom=0x20386365, thread_stack=126976, aborting backtrace.
 Trying to get some variables.
 Some pointers may be invalid and cause the dump to abort...
 thd-query at 0x64207369  is invalid pointer
 thd-thread_id=484
 The manual page at http://www.mysql.com/doc/en/Crashing.html contains
 information that should help you find out what is causing the crash.
 050614 19:50:50  mysqld ended
 
 
 Michael
 
 --
 MySQL General Mailing List
 For list archives: http://lists.mysql.com/mysql
 To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: InnnoDb - change innodb_buffer_pool_size ?

2005-06-14 Thread Michael Gale

Hello,

	I have finished reading something similer on the web, why is there a 
2GB limit ?


If I can compile the kernel to say eys there is 4GB of memory why can 
mysql not use 3GB of it ?


For know I have set the limit at 2GB.

Michael

Partha Dutta wrote:

If you are running on a 32 bit operating system, (e.g. Linux) you can not
allocate that much memory for InnoDB.  The max you could allocate would be
2GB, but that would be pushing it.  You also have to account for MyISAM
memory usage (key_buffer_size) and per thread memory allocations as well.

Partha

--
Partha Dutta, Senior Consultant
MySQL Inc, NY, USA, www.mysql.com
 
Are you MySQL certified?  www.mysql.com/certification
 


-Original Message-
From: Michael Gale [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 14, 2005 10:04 PM
To: mysql@lists.mysql.com
Subject: InnnoDb - change innodb_buffer_pool_size ?

Hello,

I am running mysql 4.0.20 with Innodb and we have upgrade grade the
RAM
in the system from 1GB to 4GB :).

Now If I change the:

innodb_buffer_pool_size

From 500M to 3G the service will not start. I remember reading
something about this before and I believe I need to delete the
ib_logfile* files or something .. and they will get recreated on start up
??

Any help is appreciated :)

Here is my mysql.log output:

050614 19:50:50  mysqld started
050614 19:50:50 Warning: Asked for 196608 thread stack, but got 126976
InnoDB: Fatal error: cannot allocate 3221241856 bytes of
InnoDB: memory with malloc! Total allocated memory
InnoDB: by InnoDB 20288332 bytes. Operating system errno: 12
InnoDB: Cannot continue operation!
InnoDB: Check if you should increase the swap file or
InnoDB: ulimits of your operating system.
InnoDB: On FreeBSD check you have compiled the OS with
InnoDB: a big enough maximum process size.
InnoDB: We now intentionally generate a seg fault so that
InnoDB: on Linux we get a stack trace.
mysqld got signal 11;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly
built,
or misconfigured. This error can also be caused by malfunctioning
hardware.
We will try our best to scrape up some info that will hopefully help
diagnose
the problem, but since we have already crashed, something is definitely
wrong
and this may fail.

key_buffer_size=67108864
read_buffer_size=2093056
max_used_connections=0
max_connections=100
threads_connected=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections
= 3546735 K
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

thd=0x8424780
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
Bogus stack limit or frame pointer, fp=0xbfffeb88,
stack_bottom=0x20386365, thread_stack=126976, aborting backtrace.
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort...
thd-query at 0x64207369  is invalid pointer
thd-thread_id=484
The manual page at http://www.mysql.com/doc/en/Crashing.html contains
information that should help you find out what is causing the crash.
050614 19:50:50  mysqld ended


Michael

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]





--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: InnnoDb - change innodb_buffer_pool_size ?

2005-06-14 Thread Michael Gale

Hello,

	Even if I change the value to 2G it still will not load ? Because the 
value was 500M before do I not have to remove the ib* files and have 
them recreated ?


Michael


Michael Gale wrote:

Hello,

I am running mysql 4.0.20 with Innodb and we have upgrade grade the 
RAM in the system from 1GB to 4GB :).


Now If I change the:

innodb_buffer_pool_size

 From 500M to 3G the service will not start. I remember reading 
something about this before and I believe I need to delete the 
ib_logfile* files or something .. and they will get recreated on start 
up ??


Any help is appreciated :)

Here is my mysql.log output:

050614 19:50:50  mysqld started
050614 19:50:50 Warning: Asked for 196608 thread stack, but got 126976
InnoDB: Fatal error: cannot allocate 3221241856 bytes of
InnoDB: memory with malloc! Total allocated memory
InnoDB: by InnoDB 20288332 bytes. Operating system errno: 12
InnoDB: Cannot continue operation!
InnoDB: Check if you should increase the swap file or
InnoDB: ulimits of your operating system.
InnoDB: On FreeBSD check you have compiled the OS with
InnoDB: a big enough maximum process size.
InnoDB: We now intentionally generate a seg fault so that
InnoDB: on Linux we get a stack trace.
mysqld got signal 11;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help 
diagnose
the problem, but since we have already crashed, something is definitely 
wrong

and this may fail.

key_buffer_size=67108864
read_buffer_size=2093056
max_used_connections=0
max_connections=100
threads_connected=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections 
= 3546735 K

bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

thd=0x8424780
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
Bogus stack limit or frame pointer, fp=0xbfffeb88, 
stack_bottom=0x20386365, thread_stack=126976, aborting backtrace.

Trying to get some variables.
Some pointers may be invalid and cause the dump to abort...
thd-query at 0x64207369  is invalid pointer
thd-thread_id=484
The manual page at http://www.mysql.com/doc/en/Crashing.html contains
information that should help you find out what is causing the crash.
050614 19:50:50  mysqld ended


Michael



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]