summaryrefslogtreecommitdiff
path: root/sql/handler.h
diff options
context:
space:
mode:
authorSinisa@sinisa.nasamreza.org <>2003-04-26 15:26:28 +0300
committerSinisa@sinisa.nasamreza.org <>2003-04-26 15:26:28 +0300
commit5dc8dbea5f40938d0d0d653b9820f5ab98a3e1f4 (patch)
tree1d443ccbc69a259401b8fbbdce0a7e01e41f9db7 /sql/handler.h
parent3ca1a152ebd5eaa0bf5c714404633444d69be5e4 (diff)
parent050d5b54879c9a29c20dad6441cd622b834fd0e6 (diff)
downloadmariadb-git-5dc8dbea5f40938d0d0d653b9820f5ab98a3e1f4.tar.gz
merge fix
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 06c24214d0f..8c23a3625e0 100644
--- a/sql/handler.h
+++ b/sql/handler.h
@@ -117,6 +117,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,
@@ -343,6 +348,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 */