diff options
author | unknown <monty@hundin.mysql.fi> | 2002-08-08 15:24:47 +0300 |
---|---|---|
committer | unknown <monty@hundin.mysql.fi> | 2002-08-08 15:24:47 +0300 |
commit | 267b80834ad524c0d72976bc71e5b5bc9815ea1a (patch) | |
tree | e7f4a2013ed3d66e640f6574e62cb7e534a5d77f /innobase/include/buf0buf.ic | |
parent | ca1875f54033c5ea067ec3ec07b00375de6975d7 (diff) | |
parent | 40d3c3901b0427eba76119730f46784f946990b3 (diff) | |
download | mariadb-git-267b80834ad524c0d72976bc71e5b5bc9815ea1a.tar.gz |
merge with 3.23.52
BitKeeper/etc/logging_ok:
auto-union
configure.in:
Auto merged
Docs/manual.texi:
Auto merged
include/my_pthread.h:
Auto merged
include/mysql_com.h:
Auto merged
include/mysql_version.h.in:
Auto merged
innobase/btr/btr0cur.c:
Auto merged
innobase/btr/btr0sea.c:
Auto merged
innobase/buf/buf0buf.c:
Auto merged
innobase/buf/buf0lru.c:
Auto merged
innobase/configure.in:
Auto merged
innobase/dict/dict0dict.c:
Auto merged
innobase/fil/fil0fil.c:
Auto merged
innobase/fsp/fsp0fsp.c:
Auto merged
innobase/include/buf0buf.ic:
Auto merged
innobase/include/dyn0dyn.ic:
Auto merged
innobase/include/ha0ha.ic:
Auto merged
innobase/include/sync0rw.ic:
Auto merged
innobase/include/univ.i:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/log/log0log.c:
Auto merged
innobase/mem/mem0dbg.c:
Auto merged
innobase/os/os0file.c:
Auto merged
innobase/os/os0thread.c:
Auto merged
innobase/page/page0cur.c:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
innobase/sync/sync0arr.c:
Auto merged
innobase/sync/sync0rw.c:
Auto merged
innobase/sync/sync0sync.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
myisam/mi_create.c:
Auto merged
sql/ha_innodb.h:
Auto merged
sql/lex.h:
Auto merged
sql/log.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
strings/Makefile.am:
Auto merged
support-files/mysql.server.sh:
Auto merged
include/my_base.h:
merge with 3.23.52 (use local file)
include/sslopt-usage.h:
merge with 3.23.52 (use local file)
myisam/mi_search.c:
merge with 3.23.52 (use local file)
myisam/mi_write.c:
merge with 3.23.52 (use local file)
mysql-test/r/group_by.result:
merge with 3.23.52
(Need to be fixed before push)
mysys/my_pthread.c:
merge with 3.23.52 (use local file)
sql/gen_lex_hash.cc:
merge with 3.23.52 (use local file)
sql/ha_innodb.cc:
Total hand-merge with 3.23.52
sql/sql_yacc.yy:
merge with 3.23.52 (use local file)
support-files/mysql.spec.sh:
merge with 3.23.52 (use local file)
Diffstat (limited to 'innobase/include/buf0buf.ic')
-rw-r--r-- | innobase/include/buf0buf.ic | 37 |
1 files changed, 29 insertions, 8 deletions
diff --git a/innobase/include/buf0buf.ic b/innobase/include/buf0buf.ic index e5a2c480922..7227c79dc6a 100644 --- a/innobase/include/buf0buf.ic +++ b/innobase/include/buf0buf.ic @@ -211,8 +211,15 @@ buf_block_align( block = buf_pool_get_nth_block(buf_pool, ((ulint)(ptr - frame_zero)) >> UNIV_PAGE_SIZE_SHIFT); - ut_a(block >= buf_pool->blocks); - ut_a(block < buf_pool->blocks + buf_pool->max_size); + if (block < buf_pool->blocks + || block >= buf_pool->blocks + buf_pool->max_size) { + + fprintf(stderr, +"InnoDB: Error: trying to access a stray pointer %lx\n" +"InnoDB: buf pool start is at %lx, number of pages %lu\n", (ulint)ptr, + (ulint)frame_zero, buf_pool->max_size); + ut_a(0); + } return(block); } @@ -238,8 +245,15 @@ buf_block_align_low( block = buf_pool_get_nth_block(buf_pool, ((ulint)(ptr - frame_zero)) >> UNIV_PAGE_SIZE_SHIFT); - ut_a(block >= buf_pool->blocks); - ut_a(block < buf_pool->blocks + buf_pool->max_size); + if (block < buf_pool->blocks + || block >= buf_pool->blocks + buf_pool->max_size) { + + fprintf(stderr, +"InnoDB: Error: trying to access a stray pointer %lx\n" +"InnoDB: buf pool start is at %lx, number of pages %lu\n", (ulint)ptr, + (ulint)frame_zero, buf_pool->max_size); + ut_a(0); + } return(block); } @@ -259,10 +273,17 @@ buf_frame_align( frame = ut_align_down(ptr, UNIV_PAGE_SIZE); - ut_a((ulint)frame - >= (ulint)(buf_pool_get_nth_block(buf_pool, 0)->frame)); - ut_a((ulint)frame <= (ulint)(buf_pool_get_nth_block(buf_pool, - buf_pool->max_size - 1)->frame)); + if (((ulint)frame + < (ulint)(buf_pool->frame_zero)) + || ((ulint)frame > (ulint)(buf_pool_get_nth_block(buf_pool, + buf_pool->max_size - 1)->frame))) { + fprintf(stderr, +"InnoDB: Error: trying to access a stray pointer %lx\n" +"InnoDB: buf pool start is at %lx, number of pages %lu\n", (ulint)ptr, + (ulint)(buf_pool->frame_zero), buf_pool->max_size); + ut_a(0); + } + return(frame); } |