Loading Docs/manual.texi +20 −1 Original line number Diff line number Diff line Loading @@ -50810,6 +50810,23 @@ not yet 100% confident in this code. @appendixsubsec Changes in release 3.23.52 @itemize @bullet @item Fixed a security bug with empty db column in db table @item Changed initialisation of @code{RND()} to make it less predicatable. @item Fixed problem with @code{GROUP BY} on result with expression that created a @code{BLOB} field. @item Fixed problem with privilege tables when downgrading from 4.0.2 to 3.23. @item Fixed thread bug in @code{SLAVE START}, @code{SLAVE STOP} and automatic repair of MyISAM tables that could cause table cache to be corrupted. @item Fixed possible thread related key-cache-corruption problem with @code{OPTIMIZE TABLE} and @code{REPAIR TABLE}. @item Added name of 'administrator command' logs. @item Fixed bug with creating an auto-increment value on second part of a @code{UNIQUE()} key where first part could contain NULL values. @item Loading @@ -50817,7 +50834,9 @@ Don't write slave-timeout reconnects to the error log. @item Fixed bug with slave net read timeouting @item Fixed bug in ALTERing TABLE of BDB type. Fixed a core-dump bug with @code{MERGE} tables and @code{MAX()} function. @item Fixed bug in @code{ALTER TABLE} with BDB tables. @item Fixed bug when logging @code{LOAD DATA INFILE} to binary log with no active database. include/mysql_version.h.in +1 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ #define MYSQL_VERSION_ID @MYSQL_VERSION_ID@ #define MYSQL_PORT @MYSQL_TCP_PORT@ #define MYSQL_UNIX_ADDR "@MYSQL_UNIX_ADDR@" #define MYSQL_CONFIG_NAME "my" /* mysqld compile time options */ #ifndef MYSQL_CHARSET Loading innobase/btr/btr0cur.c +7 −1 Original line number Diff line number Diff line Loading @@ -808,7 +808,7 @@ btr_cur_optimistic_insert( if (!dtuple_check_typed_no_assert(entry)) { fprintf(stderr, "InnoDB: Error in a tuple to insert into table %lu index %lu\n", "InnoDB: Error in a tuple to insert into table %lu index %s\n", index->table_name, index->name); } Loading Loading @@ -1213,6 +1213,8 @@ btr_cur_parse_update_in_place( rec_offset = mach_read_from_2(ptr); ptr += 2; ut_a(rec_offset <= UNIV_PAGE_SIZE); heap = mem_heap_create(256); ptr = row_upd_index_parse(ptr, end_ptr, heap, &update); Loading Loading @@ -1977,6 +1979,8 @@ btr_cur_parse_del_mark_set_clust_rec( offset = mach_read_from_2(ptr); ptr += 2; ut_a(offset <= UNIV_PAGE_SIZE); if (page) { rec = page + offset; Loading Loading @@ -2127,6 +2131,8 @@ btr_cur_parse_del_mark_set_sec_rec( offset = mach_read_from_2(ptr); ptr += 2; ut_a(offset <= UNIV_PAGE_SIZE); if (page) { rec = page + offset; Loading innobase/btr/btr0sea.c +1 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ Created 2/17/1996 Heikki Tuuri #include "btr0cur.h" #include "btr0pcur.h" #include "btr0btr.h" #include "ha0ha.h" ulint btr_search_n_succ = 0; ulint btr_search_n_hash_fail = 0; Loading innobase/buf/buf0buf.c +32 −10 Original line number Diff line number Diff line Loading @@ -286,7 +286,7 @@ buf_page_print( ut_print_timestamp(stderr); fprintf(stderr, " InnoDB: Page dump in ascii and hex (%u bytes):\n%s", UNIV_PAGE_SIZE, buf); (ulint)UNIV_PAGE_SIZE, buf); fprintf(stderr, "InnoDB: End of page dump\n"); mem_free(buf); Loading Loading @@ -1707,10 +1707,11 @@ buf_print(void) mutex_enter(&(buf_pool->mutex)); printf("LRU len %lu \n", UT_LIST_GET_LEN(buf_pool->LRU)); printf("free len %lu \n", UT_LIST_GET_LEN(buf_pool->free)); printf("flush len %lu \n", UT_LIST_GET_LEN(buf_pool->flush_list)); printf("buf_pool size %lu \n", size); printf("database pages %lu \n", UT_LIST_GET_LEN(buf_pool->LRU)); printf("free pages %lu \n", UT_LIST_GET_LEN(buf_pool->free)); printf("modified database pages %lu \n", UT_LIST_GET_LEN(buf_pool->flush_list)); printf("n pending reads %lu \n", buf_pool->n_pend_reads); Loading Loading @@ -1819,13 +1820,20 @@ buf_print_io( mutex_enter(&(buf_pool->mutex)); buf += sprintf(buf, "Free list length %lu \n", UT_LIST_GET_LEN(buf_pool->free)); "Buffer pool size %lu\n", size); buf += sprintf(buf, "Free buffers %lu\n", UT_LIST_GET_LEN(buf_pool->free)); buf += sprintf(buf, "LRU list length %lu \n", UT_LIST_GET_LEN(buf_pool->LRU)); "Database pages %lu\n", UT_LIST_GET_LEN(buf_pool->LRU)); /* buf += sprintf(buf, "Flush list length %lu \n", "Lock heap buffers %lu\n", buf_pool->n_lock_heap_pages); buf += sprintf(buf, "Hash index buffers %lu\n", buf_pool->n_adaptive_hash_pages); */ buf += sprintf(buf, "Modified db pages %lu\n", UT_LIST_GET_LEN(buf_pool->flush_list)); buf += sprintf(buf, "Buffer pool size %lu\n", size); buf += sprintf(buf, "Pending reads %lu \n", buf_pool->n_pend_reads); Loading @@ -1836,8 +1844,8 @@ buf_print_io( buf_pool->n_flush[BUF_FLUSH_SINGLE_PAGE]); current_time = time(NULL); time_elapsed = difftime(current_time, buf_pool->last_printout_time); time_elapsed = 0.001 + difftime(current_time, buf_pool->last_printout_time); buf_pool->last_printout_time = current_time; buf += sprintf(buf, "Pages read %lu, created %lu, written %lu\n", Loading Loading @@ -1870,6 +1878,20 @@ buf_print_io( mutex_exit(&(buf_pool->mutex)); } /************************************************************************** Refreshes the statistics used to print per-second averages. */ void buf_refresh_io_stats(void) /*======================*/ { buf_pool->last_printout_time = time(NULL); buf_pool->n_page_gets_old = buf_pool->n_page_gets; buf_pool->n_pages_read_old = buf_pool->n_pages_read; buf_pool->n_pages_created_old = buf_pool->n_pages_created; buf_pool->n_pages_written_old = buf_pool->n_pages_written; } /************************************************************************* Checks that all file pages in the buffer are in a replaceable state. */ Loading Loading
Docs/manual.texi +20 −1 Original line number Diff line number Diff line Loading @@ -50810,6 +50810,23 @@ not yet 100% confident in this code. @appendixsubsec Changes in release 3.23.52 @itemize @bullet @item Fixed a security bug with empty db column in db table @item Changed initialisation of @code{RND()} to make it less predicatable. @item Fixed problem with @code{GROUP BY} on result with expression that created a @code{BLOB} field. @item Fixed problem with privilege tables when downgrading from 4.0.2 to 3.23. @item Fixed thread bug in @code{SLAVE START}, @code{SLAVE STOP} and automatic repair of MyISAM tables that could cause table cache to be corrupted. @item Fixed possible thread related key-cache-corruption problem with @code{OPTIMIZE TABLE} and @code{REPAIR TABLE}. @item Added name of 'administrator command' logs. @item Fixed bug with creating an auto-increment value on second part of a @code{UNIQUE()} key where first part could contain NULL values. @item Loading @@ -50817,7 +50834,9 @@ Don't write slave-timeout reconnects to the error log. @item Fixed bug with slave net read timeouting @item Fixed bug in ALTERing TABLE of BDB type. Fixed a core-dump bug with @code{MERGE} tables and @code{MAX()} function. @item Fixed bug in @code{ALTER TABLE} with BDB tables. @item Fixed bug when logging @code{LOAD DATA INFILE} to binary log with no active database.
include/mysql_version.h.in +1 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ #define MYSQL_VERSION_ID @MYSQL_VERSION_ID@ #define MYSQL_PORT @MYSQL_TCP_PORT@ #define MYSQL_UNIX_ADDR "@MYSQL_UNIX_ADDR@" #define MYSQL_CONFIG_NAME "my" /* mysqld compile time options */ #ifndef MYSQL_CHARSET Loading
innobase/btr/btr0cur.c +7 −1 Original line number Diff line number Diff line Loading @@ -808,7 +808,7 @@ btr_cur_optimistic_insert( if (!dtuple_check_typed_no_assert(entry)) { fprintf(stderr, "InnoDB: Error in a tuple to insert into table %lu index %lu\n", "InnoDB: Error in a tuple to insert into table %lu index %s\n", index->table_name, index->name); } Loading Loading @@ -1213,6 +1213,8 @@ btr_cur_parse_update_in_place( rec_offset = mach_read_from_2(ptr); ptr += 2; ut_a(rec_offset <= UNIV_PAGE_SIZE); heap = mem_heap_create(256); ptr = row_upd_index_parse(ptr, end_ptr, heap, &update); Loading Loading @@ -1977,6 +1979,8 @@ btr_cur_parse_del_mark_set_clust_rec( offset = mach_read_from_2(ptr); ptr += 2; ut_a(offset <= UNIV_PAGE_SIZE); if (page) { rec = page + offset; Loading Loading @@ -2127,6 +2131,8 @@ btr_cur_parse_del_mark_set_sec_rec( offset = mach_read_from_2(ptr); ptr += 2; ut_a(offset <= UNIV_PAGE_SIZE); if (page) { rec = page + offset; Loading
innobase/btr/btr0sea.c +1 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ Created 2/17/1996 Heikki Tuuri #include "btr0cur.h" #include "btr0pcur.h" #include "btr0btr.h" #include "ha0ha.h" ulint btr_search_n_succ = 0; ulint btr_search_n_hash_fail = 0; Loading
innobase/buf/buf0buf.c +32 −10 Original line number Diff line number Diff line Loading @@ -286,7 +286,7 @@ buf_page_print( ut_print_timestamp(stderr); fprintf(stderr, " InnoDB: Page dump in ascii and hex (%u bytes):\n%s", UNIV_PAGE_SIZE, buf); (ulint)UNIV_PAGE_SIZE, buf); fprintf(stderr, "InnoDB: End of page dump\n"); mem_free(buf); Loading Loading @@ -1707,10 +1707,11 @@ buf_print(void) mutex_enter(&(buf_pool->mutex)); printf("LRU len %lu \n", UT_LIST_GET_LEN(buf_pool->LRU)); printf("free len %lu \n", UT_LIST_GET_LEN(buf_pool->free)); printf("flush len %lu \n", UT_LIST_GET_LEN(buf_pool->flush_list)); printf("buf_pool size %lu \n", size); printf("database pages %lu \n", UT_LIST_GET_LEN(buf_pool->LRU)); printf("free pages %lu \n", UT_LIST_GET_LEN(buf_pool->free)); printf("modified database pages %lu \n", UT_LIST_GET_LEN(buf_pool->flush_list)); printf("n pending reads %lu \n", buf_pool->n_pend_reads); Loading Loading @@ -1819,13 +1820,20 @@ buf_print_io( mutex_enter(&(buf_pool->mutex)); buf += sprintf(buf, "Free list length %lu \n", UT_LIST_GET_LEN(buf_pool->free)); "Buffer pool size %lu\n", size); buf += sprintf(buf, "Free buffers %lu\n", UT_LIST_GET_LEN(buf_pool->free)); buf += sprintf(buf, "LRU list length %lu \n", UT_LIST_GET_LEN(buf_pool->LRU)); "Database pages %lu\n", UT_LIST_GET_LEN(buf_pool->LRU)); /* buf += sprintf(buf, "Flush list length %lu \n", "Lock heap buffers %lu\n", buf_pool->n_lock_heap_pages); buf += sprintf(buf, "Hash index buffers %lu\n", buf_pool->n_adaptive_hash_pages); */ buf += sprintf(buf, "Modified db pages %lu\n", UT_LIST_GET_LEN(buf_pool->flush_list)); buf += sprintf(buf, "Buffer pool size %lu\n", size); buf += sprintf(buf, "Pending reads %lu \n", buf_pool->n_pend_reads); Loading @@ -1836,8 +1844,8 @@ buf_print_io( buf_pool->n_flush[BUF_FLUSH_SINGLE_PAGE]); current_time = time(NULL); time_elapsed = difftime(current_time, buf_pool->last_printout_time); time_elapsed = 0.001 + difftime(current_time, buf_pool->last_printout_time); buf_pool->last_printout_time = current_time; buf += sprintf(buf, "Pages read %lu, created %lu, written %lu\n", Loading Loading @@ -1870,6 +1878,20 @@ buf_print_io( mutex_exit(&(buf_pool->mutex)); } /************************************************************************** Refreshes the statistics used to print per-second averages. */ void buf_refresh_io_stats(void) /*======================*/ { buf_pool->last_printout_time = time(NULL); buf_pool->n_page_gets_old = buf_pool->n_page_gets; buf_pool->n_pages_read_old = buf_pool->n_pages_read; buf_pool->n_pages_created_old = buf_pool->n_pages_created; buf_pool->n_pages_written_old = buf_pool->n_pages_written; } /************************************************************************* Checks that all file pages in the buffer are in a replaceable state. */ Loading