mirror of
https://github.com/MariaDB/server.git
synced 2025-01-31 11:01:52 +01:00
Merge dev3-138.dev.cn.tlan:/home/zhl/mysql/mysql-4.1/bug19352
into dev3-138.dev.cn.tlan:/home/zhl/mysql/mysql-5.0/bug19352
This commit is contained in:
commit
fbcba85129
1 changed files with 8 additions and 6 deletions
|
@ -658,24 +658,26 @@ SimulatedBlock::allocRecord(const char * type, size_t s, size_t n, bool clear)
|
|||
|
||||
void * p = NULL;
|
||||
size_t size = n*s;
|
||||
Uint64 real_size = (Uint64)((Uint64)n)*((Uint64)s);
|
||||
refresh_watch_dog();
|
||||
if (size > 0){
|
||||
if (real_size > 0){
|
||||
#ifdef VM_TRACE_MEM
|
||||
ndbout_c("%s::allocRecord(%s, %u, %u) = %u bytes",
|
||||
ndbout_c("%s::allocRecord(%s, %u, %u) = %llu bytes",
|
||||
getBlockName(number()),
|
||||
type,
|
||||
s,
|
||||
n,
|
||||
size);
|
||||
real_size);
|
||||
#endif
|
||||
if( real_size == (Uint64)size )
|
||||
p = ndbd_malloc(size);
|
||||
if (p == NULL){
|
||||
char buf1[255];
|
||||
char buf2[255];
|
||||
BaseString::snprintf(buf1, sizeof(buf1), "%s could not allocate memory for %s",
|
||||
getBlockName(number()), type);
|
||||
BaseString::snprintf(buf2, sizeof(buf2), "Requested: %ux%u = %u bytes",
|
||||
(Uint32)s, (Uint32)n, (Uint32)size);
|
||||
BaseString::snprintf(buf2, sizeof(buf2), "Requested: %ux%u = %llu bytes",
|
||||
(Uint32)s, (Uint32)n, (Uint64)real_size);
|
||||
ERROR_SET(fatal, NDBD_EXIT_MEMALLOC, buf1, buf2);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue