summaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
authorSatya B <satya.bn@sun.com>2009-07-17 14:13:53 +0530
committerSatya B <satya.bn@sun.com>2009-07-17 14:13:53 +0530
commit342553252fc0315762abe3491889491728d06998 (patch)
treea20fc98e70384f275c89e5cf5e57bdd252b932b4 /extra
parent1a4bc9a1e429697f86f63f2599e49a4f2d29cd32 (diff)
downloadmariadb-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 'extra')
-rw-r--r--extra/perror.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/extra/perror.c b/extra/perror.c
index ba638aca819..1ee2ec08d83 100644
--- a/extra/perror.c
+++ b/extra/perror.c
@@ -108,6 +108,7 @@ static HA_ERRORS ha_errlist[]=
{ 161,"The table is not writable"},
{ 162,"Failed to get the next autoinc value"},
{ 163,"Failed to set the row autoinc value"},
+ { 164,"Too many active concurrent transactions"},
{ -30999, "DB_INCOMPLETE: Sync didn't finish"},
{ -30998, "DB_KEYEMPTY: Key/data deleted or never created"},
{ -30997, "DB_KEYEXIST: The key/data pair already exists"},