summaryrefslogtreecommitdiff
path: root/bdb
diff options
context:
space:
mode:
authorunknown <monty@donna.mysql.fi>2001-05-09 23:02:36 +0300
committerunknown <monty@donna.mysql.fi>2001-05-09 23:02:36 +0300
commit0fece375f2ae4bb173357609b46924a997113593 (patch)
tree288f7cc7d0ca91ae340b7a568971bb02d8eb798d /bdb
parent2321260ff07b0a90e3f84c756370a328ac17f990 (diff)
downloadmariadb-git-0fece375f2ae4bb173357609b46924a997113593.tar.gz
Applied patches for BDB tables
Fixes to InnoDB to compile on Windows Fix for temporary InnoDB tables Fixed bug in REPLACE() Fixed sub char keys for InnoDB Docs/manual.texi: Changelog + update of table types bdb/include/log.h: Patch from Sleepycat bdb/log/log.c: Patch from Sleepycat bdb/log/log_rec.c: Patch from Sleepycat client/mysqladmin.c: Cleanup innobase/include/univ.i: Fix for compilation on Windows innobase/os/os0file.c: cleanup innobase/pars/pars0grm.y: Fix for compilation on Windows mysql-test/r/innodb.result: New test case mysql-test/t/innodb.test: New test case sql/ha_innobase.cc: cleanup sql/ha_innobase.h: Fix for prefix keys sql/handler.h: Fix for temporary Innodb tables sql/item_strfunc.cc: Fixed bug in REPLACE() sql/lock.cc: Fix for temporary Innodb tables sql/mysqld.cc: Added --skip-stack-trace sql/share/english/errmsg.txt: Better error messages sql/sql_base.cc: Fix for temporary Innodb tables sql/sql_select.cc: Fix for temporary Innodb tables sql/sql_table.cc: Fixed sub char keys for InnoDB sql/table.h: Fix for temporary Innodb tables
Diffstat (limited to 'bdb')
-rw-r--r--bdb/include/log.h1
-rw-r--r--bdb/log/log.c14
-rw-r--r--bdb/log/log_rec.c2
3 files changed, 11 insertions, 6 deletions
diff --git a/bdb/include/log.h b/bdb/include/log.h
index 1cac0492252..81ecb4174a6 100644
--- a/bdb/include/log.h
+++ b/bdb/include/log.h
@@ -198,6 +198,7 @@ struct __fname {
*/
typedef enum {
DB_LV_INCOMPLETE,
+ DB_LV_NONEXISTENT,
DB_LV_NORMAL,
DB_LV_OLD_READABLE,
DB_LV_OLD_UNREADABLE
diff --git a/bdb/log/log.c b/bdb/log/log.c
index 69af1624824..8ddb7bcaf7d 100644
--- a/bdb/log/log.c
+++ b/bdb/log/log.c
@@ -309,13 +309,13 @@ __log_find(dblp, find_first, valp, statusp)
int find_first, *valp;
logfile_validity *statusp;
{
- logfile_validity clv_status, status;
+ logfile_validity logval_status, status;
u_int32_t clv, logval;
int cnt, fcnt, ret;
const char *dir;
char **names, *p, *q, savech;
- clv_status = status = DB_LV_NORMAL;
+ logval_status = status = DB_LV_NONEXISTENT;
/* Return a value of 0 as the log file number on failure. */
*valp = 0;
@@ -385,10 +385,14 @@ __log_find(dblp, find_first, valp, statusp)
* as a valid log file.
*/
break;
+ case DB_LV_NONEXISTENT:
+ /* Should never happen. */
+ DB_ASSERT(0);
+ break;
case DB_LV_NORMAL:
case DB_LV_OLD_READABLE:
logval = clv;
- clv_status = status;
+ logval_status = status;
break;
case DB_LV_OLD_UNREADABLE:
/*
@@ -410,7 +414,7 @@ __log_find(dblp, find_first, valp, statusp)
*/
if (!find_first) {
logval = clv;
- clv_status = status;
+ logval_status = status;
}
break;
}
@@ -420,7 +424,7 @@ __log_find(dblp, find_first, valp, statusp)
err: __os_dirfree(names, fcnt);
__os_freestr(p);
- *statusp = clv_status;
+ *statusp = logval_status;
return (ret);
}
diff --git a/bdb/log/log_rec.c b/bdb/log/log_rec.c
index ad6d9f7ead2..493dd06d4c6 100644
--- a/bdb/log/log_rec.c
+++ b/bdb/log/log_rec.c
@@ -430,7 +430,7 @@ __log_add_logid(dbenv, logp, dbp, ndx)
TAILQ_INIT(&logp->dbentry[i].dblist);
else
TAILQ_REINSERT_HEAD(
- &logp->dbentry[i].dblist, dbp, links);
+ &logp->dbentry[i].dblist, dbtmp, links);
}
/* Initialize the new entries. */