summaryrefslogtreecommitdiff
path: root/sql/handler.h
diff options
context:
space:
mode:
authorunknown <monty@tik.mysql.fi>2001-03-21 01:02:22 +0200
committerunknown <monty@tik.mysql.fi>2001-03-21 01:02:22 +0200
commit6257ee7613836c397bda6c3533ca4a114d60e045 (patch)
tree8a311781a9b85fe972ca9c89a0dc75654d3b3250 /sql/handler.h
parentd1782bea92ebf698cdcf898007f3b015ba502493 (diff)
downloadmariadb-git-6257ee7613836c397bda6c3533ca4a114d60e045.tar.gz
Added isolation levels
Added SELECT .. FOR UPDATE and SELECT .. IN SHARE MODE Docs/manual.texi: Updated information about SET TRANSACTION ISOLATION LEVEL configure.in: Upgraded version number isam/_dbug.c: Fixed wrong fprintf isam/isamchk.c: Added new error message myisam/mi_check.c: Added new error message mysql-test/mysql-test-run.sh: Don't wait too long for server start mysys/mf_keycache.c: Cleaned up some error messages scripts/mysqlhotcopy.sh: Applied patch for --resetmaster --resetslave sql-bench/bench-init.pl.sh: Fix for windows sql/handler.cc: Added isolation levels and gemini spinlocks sql/handler.h: Added isolation levels sql/item_strfunc.cc: Cleanup of CONCAT_WS() sql/lex.h: Added isolation levels sql/mysql_priv.h: Added isolation levels sql/mysqld.cc: Added isolation levels sql/sql_class.cc: Added isolation levels Moved variable initialization to different code segments sql/sql_class.h: Added isolation levels sql/sql_lex.h: Added isolation levels sql/sql_parse.cc: Added isolation levels sql/sql_update.cc: cleanup BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
Diffstat (limited to 'sql/handler.h')
-rw-r--r--sql/handler.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/sql/handler.h b/sql/handler.h
index 1c8a83ac9ed..463eef20ee4 100644
--- a/sql/handler.h
+++ b/sql/handler.h
@@ -108,7 +108,7 @@ enum db_type { DB_TYPE_UNKNOWN=0,DB_TYPE_DIAB_ISAM=1,
DB_TYPE_HASH,DB_TYPE_MISAM,DB_TYPE_PISAM,
DB_TYPE_RMS_ISAM, DB_TYPE_HEAP, DB_TYPE_ISAM,
DB_TYPE_MRG_ISAM, DB_TYPE_MYISAM, DB_TYPE_MRG_MYISAM,
- DB_TYPE_BERKELEY_DB, DB_TYPE_INNOBASE,
+ DB_TYPE_BERKELEY_DB, DB_TYPE_INNOBASE, DB_TYPE_GEMINI,
DB_TYPE_DEFAULT };
enum row_type { ROW_TYPE_DEFAULT, ROW_TYPE_FIXED, ROW_TYPE_DYNAMIC,
@@ -127,6 +127,9 @@ typedef struct st_thd_trans {
void *gemini_tid;
} THD_TRANS;
+enum enum_tx_isolation { ISO_READ_UNCOMMITTED, ISO_READ_COMMITTED,
+ ISO_REPEATABLE_READ, ISO_SERIALIZABLE};
+
typedef struct st_ha_create_information
{
ulong table_options;
@@ -310,7 +313,7 @@ public:
/* Some extern variables used with handlers */
extern const char *ha_row_type[];
-extern TYPELIB ha_table_typelib;
+extern TYPELIB ha_table_typelib, tx_isolation_typelib;
/* Wrapper functions */
#define ha_commit_stmt(thd) (ha_commit_trans((thd), &((thd)->transaction.stmt)))
@@ -332,5 +335,6 @@ void ha_key_cache(void);
int ha_commit_trans(THD *thd, THD_TRANS *trans);
int ha_rollback_trans(THD *thd, THD_TRANS *trans);
int ha_autocommit_or_rollback(THD *thd, int error);
+void ha_set_spin_retries(uint retries);
bool ha_flush_logs(void);