diff options
author | Satya B <satya.bn@sun.com> | 2009-07-17 14:13:53 +0530 |
---|---|---|
committer | Satya B <satya.bn@sun.com> | 2009-07-17 14:13:53 +0530 |
commit | 342553252fc0315762abe3491889491728d06998 (patch) | |
tree | a20fc98e70384f275c89e5cf5e57bdd252b932b4 /include | |
parent | 1a4bc9a1e429697f86f63f2599e49a4f2d29cd32 (diff) | |
download | mariadb-git-342553252fc0315762abe3491889491728d06998.tar.gz |
Fix for BUG#18828 - If InnoDB runs out of undo slots,
it returns misleading 'table is full'
Innodb returns a misleading error message "table is full"
when the number of active concurrent transactions is greater
than 1024.
Fixed by adding errorcode "ER_TOO_MANY_CONCURRENT_TRXS" to the
error codes. Innodb should return HA_TOO_MANY_CONCURRENT_TRXS
to mysql which is then mapped to ER_TOO_MANY_CONCURRENT_TRXS
Note: testcase is not written as this was reproducible only by
changing innodb code.
extra/perror.c:
Add error number and message for HA_ERR_TOO_MANY_CONCURRENT_TRXS
include/my_base.h:
Add error number and message for HA_ERR_TOO_MANY_CONCURRENT_TRXS
sql/ha_innodb.cc:
Return HA_ERR_TOO_MANY_CONCURRENT_TRXS to mysql server
sql/handler.cc:
Add error number and message for HA_ERR_TOO_MANY_CONCURRENT_TRXS
sql/share/errmsg.txt:
Add error message for ER_TOO_MANY_CONCURRENT_TRXS
Diffstat (limited to 'include')
-rw-r--r-- | include/my_base.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/my_base.h b/include/my_base.h index e45a73d68ed..181824012d9 100644 --- a/include/my_base.h +++ b/include/my_base.h @@ -377,9 +377,10 @@ enum ha_base_keytype { #define HA_ERR_TABLE_READONLY 161 /* The table is not writable */ #define HA_ERR_AUTOINC_READ_FAILED 162/* Failed to get the next autoinc value */ #define HA_ERR_AUTOINC_ERANGE 163 /* Failed to set the row autoinc value */ +#define HA_ERR_TOO_MANY_CONCURRENT_TRXS 164 /*Too many active concurrent transactions */ /* You must also add numbers and description to extra/perror.c ! */ -#define HA_ERR_LAST 163 /*Copy last error nr.*/ +#define HA_ERR_LAST 164 /*Copy last error nr.*/ /* Add error numbers before HA_ERR_LAST and change it accordingly. */ #define HA_ERR_ERRORS (HA_ERR_LAST - HA_ERR_FIRST + 1) |