summaryrefslogtreecommitdiff
path: root/sql/sql_plugin.cc
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.com>2019-10-07 10:46:25 +0400
committerAlexander Barkov <bar@mariadb.com>2019-10-07 11:31:32 +0400
commitcbf6beba40fea189b1d8e5c3a3487caf0cefbbea (patch)
tree8299313b5763886ff3db2aa505404a342525834b /sql/sql_plugin.cc
parent3616175fdd41b256133e16eecb3a197bb312428e (diff)
downloadmariadb-git-cbf6beba40fea189b1d8e5c3a3487caf0cefbbea.tar.gz
MDEV-20764 Add MariaDB_FUNCTION_COLLECTION_PLUGIN
Diffstat (limited to 'sql/sql_plugin.cc')
-rw-r--r--sql/sql_plugin.cc17
1 files changed, 12 insertions, 5 deletions
diff --git a/sql/sql_plugin.cc b/sql/sql_plugin.cc
index e957f63bb1e..7e56e0c3a67 100644
--- a/sql/sql_plugin.cc
+++ b/sql/sql_plugin.cc
@@ -39,6 +39,7 @@
#include <mysql/plugin_password_validation.h>
#include <mysql/plugin_encryption.h>
#include <mysql/plugin_data_type.h>
+#include <mysql/plugin_function_collection.h>
#include "sql_plugin_compat.h"
#ifdef HAVE_LINK_H
@@ -92,7 +93,8 @@ const LEX_CSTRING plugin_type_names[MYSQL_MAX_PLUGIN_TYPE_NUM]=
{ STRING_WITH_LEN("AUTHENTICATION") },
{ STRING_WITH_LEN("PASSWORD VALIDATION") },
{ STRING_WITH_LEN("ENCRYPTION") },
- { STRING_WITH_LEN("DATA TYPE") }
+ { STRING_WITH_LEN("DATA TYPE") },
+ { STRING_WITH_LEN("FUNCTION COLLECTION") }
};
extern int initialize_schema_table(st_plugin_int *plugin);
@@ -112,13 +114,15 @@ extern int finalize_encryption_plugin(st_plugin_int *plugin);
plugin_type_init plugin_type_initialize[MYSQL_MAX_PLUGIN_TYPE_NUM]=
{
0, ha_initialize_handlerton, 0, 0,initialize_schema_table,
- initialize_audit_plugin, 0, 0, 0, initialize_encryption_plugin, 0
+ initialize_audit_plugin, 0, 0, 0, initialize_encryption_plugin, 0,
+ Plugin_function_collection::init_plugin
};
plugin_type_init plugin_type_deinitialize[MYSQL_MAX_PLUGIN_TYPE_NUM]=
{
0, ha_finalize_handlerton, 0, 0, finalize_schema_table,
- finalize_audit_plugin, 0, 0, 0, finalize_encryption_plugin, 0
+ finalize_audit_plugin, 0, 0, 0, finalize_encryption_plugin, 0,
+ Plugin_function_collection::deinit_plugin
};
/*
@@ -131,6 +135,7 @@ static int plugin_type_initialization_order[MYSQL_MAX_PLUGIN_TYPE_NUM]=
MYSQL_DAEMON_PLUGIN,
MariaDB_ENCRYPTION_PLUGIN,
MariaDB_DATA_TYPE_PLUGIN,
+ MariaDB_FUNCTION_COLLECTION_PLUGIN,
MYSQL_STORAGE_ENGINE_PLUGIN,
MYSQL_INFORMATION_SCHEMA_PLUGIN,
MYSQL_FTPARSER_PLUGIN,
@@ -173,7 +178,8 @@ static int min_plugin_info_interface_version[MYSQL_MAX_PLUGIN_TYPE_NUM]=
MIN_AUTHENTICATION_INTERFACE_VERSION,
MariaDB_PASSWORD_VALIDATION_INTERFACE_VERSION,
MariaDB_ENCRYPTION_INTERFACE_VERSION,
- MariaDB_DATA_TYPE_INTERFACE_VERSION
+ MariaDB_DATA_TYPE_INTERFACE_VERSION,
+ MariaDB_FUNCTION_COLLECTION_INTERFACE_VERSION
};
static int cur_plugin_info_interface_version[MYSQL_MAX_PLUGIN_TYPE_NUM]=
{
@@ -187,7 +193,8 @@ static int cur_plugin_info_interface_version[MYSQL_MAX_PLUGIN_TYPE_NUM]=
MYSQL_AUTHENTICATION_INTERFACE_VERSION,
MariaDB_PASSWORD_VALIDATION_INTERFACE_VERSION,
MariaDB_ENCRYPTION_INTERFACE_VERSION,
- MariaDB_DATA_TYPE_INTERFACE_VERSION
+ MariaDB_DATA_TYPE_INTERFACE_VERSION,
+ MariaDB_FUNCTION_COLLECTION_INTERFACE_VERSION
};
static struct