mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Add new user variables for tuning memory usage:
query_alloc_block_size, query_prealloc_size, range_alloc_block_size,transaction_alloc_block_size and transaction_prealloc_size Add more checks for "out of memory" detection in range optimization configure.in: Added detection of mallinfo mysql-test/r/variables.result: Test of new variables mysql-test/t/variables.test: Test of new variables sql/ha_berkeley.cc: Use init_sql_alloc instead of init_alloc_root for better OOM detection sql/log_event.cc: Add new user variables for tuning memory usage sql/mysql_priv.h: Add new user variables for tuning memory usage sql/mysqld.cc: Add new user variables for tuning memory usage sql/opt_ft.cc: Add new user variables for tuning memory usage sql/opt_ft.h: Add new user variables for tuning memory usage sql/opt_range.cc: Add new user variables for tuning memory usage Add more checks for out of memory conditions sql/opt_range.h: Add new user variables for tuning memory usage sql/set_var.cc: Add new user variables for tuning memory usage sql/sql_acl.cc: Add new user variables for tuning memory usage sql/sql_class.h: Add new user variables for tuning memory usage sql/sql_delete.cc: Add new user variables for tuning memory usage sql/sql_parse.cc: Add new user variables for tuning memory usage sql/sql_select.cc: Add new user variables for tuning memory usage sql/sql_test.cc: Add information about memory useage if system supports mallinfo() sql/sql_udf.cc: Add new user variables for tuning memory usage sql/sql_update.cc: Add new user variables for tuning memory usage sql/table.cc: Add new user variables for tuning memory usage
This commit is contained in:
@ -22,6 +22,7 @@
|
||||
#include "sql_select.h"
|
||||
#include <hash.h>
|
||||
#include <thr_alarm.h>
|
||||
#include <malloc.h>
|
||||
|
||||
/* Intern key cache variables */
|
||||
extern "C" pthread_mutex_t THR_LOCK_keycache;
|
||||
@ -257,6 +258,32 @@ Next alarm time: %lu\n",
|
||||
thd->proc_info="malloc";
|
||||
my_checkmalloc();
|
||||
TERMINATE(stdout); // Write malloc information
|
||||
|
||||
#ifdef HAVE_MALLINFO
|
||||
struct mallinfo info= mallinfo();
|
||||
printf("\nMemory status:\n\
|
||||
Non-mmapped space allocated from system: %d\n\
|
||||
Number of free chunks: %d\n\
|
||||
Number of fastbin blocks: %d\n\
|
||||
Number of mmapped regions: %d\n\
|
||||
Space in mmapped regions: %d\n\
|
||||
Maximum total allocated space: %d\n\
|
||||
Space available in freed fastbin blocks: %d\n\
|
||||
Total allocated space: %d\n\
|
||||
Total free space: %d\n\
|
||||
Top-most, releasable space: %d\n",
|
||||
(int) info.arena,
|
||||
(int) info.ordblks,
|
||||
(int) info.smblks,
|
||||
(int) info.hblks,
|
||||
(int) info.hblkhd,
|
||||
(int) info.usmblks,
|
||||
(int) info.fsmblks,
|
||||
(int) info.uordblks,
|
||||
(int) info.fordblks,
|
||||
(int) info.keepcost);
|
||||
#endif
|
||||
puts("");
|
||||
if (thd)
|
||||
thd->proc_info=0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user