Bug #10424 | Got error 139 from storage engine | ||
---|---|---|---|
Submitted: | 6 May 2005 20:17 | Modified: | 6 May 2005 20:42 |
Reporter: | Tim Gustafson | Email Updates: | |
Status: | Not a Bug | Impact on me: | |
Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
Version: | 4.1.10 | OS: | FreeBSD (FreeBSD 4.11-STABLE) |
Assigned to: | CPU Architecture: | Any |
[6 May 2005 20:17]
Tim Gustafson
[6 May 2005 20:42]
MySQL Verification Team
Not enough information was provided for us to be able to handle this bug. Please re-read the instructions at http://bugs.mysql.com/how-to-report.php If you can provide more information, feel free to add it to this bug and change the status back to 'Open'. Thank you for your interest in MySQL. Additional info: miguel@hegel:~/dbs/4.1$ bin/perror 139 MySQL error code 139: Too big row miguel@hegel:~/dbs/4.1$
[6 May 2005 20:42]
Heikki Tuuri
Hi! You are probably running out of memory. Please check the .err log of mysqld. Regards, Heikki row0sel.c: if (len != UNIV_SQL_NULL) { if (templ->type == DATA_BLOB) { ut_a(prebuilt->templ_contains_blob); /* A heuristic test that we can allocate the memory for a big BLOB. We have a safety margin of 1000000 bytes. Since the test takes some CPU time, we do not use it for small BLOBs. */ if (len > 2000000 && !ut_test_malloc(len + 1000000)) { ut_print_timestamp(stderr); fprintf(stderr, " InnoDB: Warning: could not allocate %lu + 1000000 bytes to retrieve\n" "InnoDB: a big column. Table name ", (ulong) len); ut_print_name(stderr, prebuilt->trx, prebuilt->table->name); putc('\n', stderr); if (extern_field_heap) { mem_heap_free( extern_field_heap); } return(FALSE); }
[10 May 2005 14:48]
Tim Gustafson
You are correct. mysqld wasn't able to allocate more memory because FreeBSD has a 512MB hard limit. I have recompiled my kernel and will try again. Thanks for all your help!