summaryrefslogtreecommitdiff
path: root/sql/handler.h
diff options
context:
space:
mode:
authorunknown <bell@sanja.is.com.ua>2003-04-16 20:35:29 +0300
committerunknown <bell@sanja.is.com.ua>2003-04-16 20:35:29 +0300
commit48935d0536e28032a2ce021bd2c3e22ccf97cba7 (patch)
treee3388f92b12d4fbdfc30361d0fcde4c8f490ff05 /sql/handler.h
parentdf5ff1daeae5b07019afe4a0e820984d069071a6 (diff)
parentd4280aedcac74739511bfdc75cc8a25b0984ebd4 (diff)
downloadmariadb-git-48935d0536e28032a2ce021bd2c3e22ccf97cba7.tar.gz
merging
sql/ha_innodb.cc: Auto merged sql/handler.cc: Auto merged sql/handler.h: Auto merged sql/sql_cache.cc: Auto merged sql/sql_cache.h: Auto merged
Diffstat (limited to 'sql/handler.h')
-rw-r--r--sql/handler.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/sql/handler.h b/sql/handler.h
index c6a4578a26c..557fec0de0e 100644
--- a/sql/handler.h
+++ b/sql/handler.h
@@ -116,6 +116,11 @@
#define HA_OPTION_NO_DELAY_KEY_WRITE (1L << 18)
#define HA_MAX_REC_LENGTH 65535
+/* Table caching type */
+#define HA_CACHE_TBL_NONTRANSACT 0
+#define HA_CACHE_TBL_ASKTRANSACT 1
+#define HA_CACHE_TBL_TRANSACT 2
+
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,
@@ -342,6 +347,16 @@ public:
virtual THR_LOCK_DATA **store_lock(THD *thd,
THR_LOCK_DATA **to,
enum thr_lock_type lock_type)=0;
+
+ /* Type of table for caching query */
+ virtual uint8 table_cache_type() { return HA_CACHE_TBL_NONTRANSACT; }
+ /*
+ Is query with this cable cachable (have sense only for ASKTRANSACT
+ tables)
+ */
+ static bool caching_allowed(THD* thd, char* table_key,
+ uint key_length, uint8 cahe_type);
+
};
/* Some extern variables used with handlers */