summaryrefslogtreecommitdiff
path: root/include/mysql
diff options
context:
space:
mode:
authorserg@sergbook.mysql.com <>2006-05-28 14:51:01 +0200
committerserg@sergbook.mysql.com <>2006-05-28 14:51:01 +0200
commitfe97dbb5879cbb143ee288350ca86d618889731f (patch)
treef608495a4495b48130506f40d940b93ebdb1bfe1 /include/mysql
parent9c26c629a27d1ac41a2b9cedf31d5f8d2c6327a6 (diff)
downloadmariadb-git-fe97dbb5879cbb143ee288350ca86d618889731f.tar.gz
handlerton cleanup:
duplicate fields removed, st_mysql_storage_engine added to support run-time handlerton initialization (no compiler warnings), handler API is now tied to MySQL version, handlerton->plugin mapping added (slot-based), dummy default_hton removed, plugin-type-specific initialization generalized, built-in plugins are now initialized too, --default-storage-engine no longer needs a list of storage engines in handle_options(). mysql-test-run.pl bugfixes
Diffstat (limited to 'include/mysql')
-rw-r--r--include/mysql/plugin.h24
1 files changed, 22 insertions, 2 deletions
diff --git a/include/mysql/plugin.h b/include/mysql/plugin.h
index ab5ca6e7be4..926b7e34c5b 100644
--- a/include/mysql/plugin.h
+++ b/include/mysql/plugin.h
@@ -28,7 +28,7 @@
*/
#define MYSQL_UDF_PLUGIN 0 /* User-defined function */
#define MYSQL_STORAGE_ENGINE_PLUGIN 1 /* Storage Engine */
-#define MYSQL_FTPARSER_PLUGIN 2 /* Full-text [pre]parser */
+#define MYSQL_FTPARSER_PLUGIN 2 /* Full-text parser plugin */
#define MYSQL_MAX_PLUGIN_TYPE_NUM 3 /* The number of plugin types */
/*
@@ -95,7 +95,7 @@ struct st_mysql_plugin
};
/*************************************************************************
- API for Full-text [pre]parser plugin. (MYSQL_FTPARSER_PLUGIN)
+ API for Full-text parser plugin. (MYSQL_FTPARSER_PLUGIN)
*/
#define MYSQL_FTPARSER_INTERFACE_VERSION 0x0000
@@ -265,5 +265,25 @@ struct st_mysql_ftparser
int (*init)(MYSQL_FTPARSER_PARAM *param);
int (*deinit)(MYSQL_FTPARSER_PARAM *param);
};
+
+/*************************************************************************
+ API for Storage Engine plugin. (MYSQL_STORAGE_ENGINE_PLUGIN)
+*/
+
+/* handlertons of different MySQL releases are incompatible */
+#define MYSQL_HANDLERTON_INTERFACE_VERSION (MYSQL_VERSION_ID << 8)
+
+/*
+ The real API is in the sql/handler.h
+ Here we define only the descriptor structure, that is referred from
+ st_mysql_plugin.
+*/
+
+struct st_mysql_storage_engine
+{
+ int interface_version;
+ struct handlerton *handlerton;
+};
+
#endif