1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-07 00:04:31 +03:00

Merge 10.11 into 11.4

This commit is contained in:
Marko Mäkelä
2024-12-02 11:35:34 +02:00
420 changed files with 6452 additions and 4162 deletions

View File

@@ -103,16 +103,16 @@ const LEX_CSTRING plugin_type_names[MYSQL_MAX_PLUGIN_TYPE_NUM]=
{ STRING_WITH_LEN("FUNCTION") }
};
extern int initialize_schema_table(st_plugin_int *plugin);
extern int finalize_schema_table(st_plugin_int *plugin);
extern int initialize_schema_table(void *plugin);
extern int finalize_schema_table(void *plugin);
extern int initialize_audit_plugin(st_plugin_int *plugin);
extern int finalize_audit_plugin(st_plugin_int *plugin);
extern int initialize_audit_plugin(void *plugin);
extern int finalize_audit_plugin(void *plugin);
extern int initialize_encryption_plugin(st_plugin_int *plugin);
extern int finalize_encryption_plugin(st_plugin_int *plugin);
extern int initialize_encryption_plugin(void *plugin);
extern int finalize_encryption_plugin(void *plugin);
extern int initialize_data_type_plugin(st_plugin_int *plugin);
extern int initialize_data_type_plugin(void *plugin);
/*
The number of elements in both plugin_type_initialize and
@@ -1449,8 +1449,9 @@ static int plugin_do_initialize(struct st_plugin_int *plugin, uint &state)
mysql_mutex_assert_not_owner(&LOCK_plugin);
plugin_type_init init= plugin_type_initialize[plugin->plugin->type];
if (!init)
init= (plugin_type_init) plugin->plugin->init;
init= plugin->plugin->init;
if (init)
{
if (int ret= init(plugin))
{
/* Plugin init failed and did not requested a retry */
@@ -1458,6 +1459,7 @@ static int plugin_do_initialize(struct st_plugin_int *plugin, uint &state)
print_init_failed_error(plugin);
DBUG_RETURN(ret);
}
}
state= PLUGIN_IS_READY; // plugin->init() succeeded
if (plugin->plugin->status_vars)
@@ -1516,25 +1518,23 @@ static int plugin_initialize(MEM_ROOT *tmp_root, struct st_plugin_int *plugin,
}
extern "C" uchar *get_plugin_hash_key(const uchar *, size_t *, my_bool);
extern "C" uchar *get_bookmark_hash_key(const uchar *, size_t *, my_bool);
extern "C" const uchar *get_plugin_hash_key(const void *, size_t *, my_bool);
extern "C" const uchar *get_bookmark_hash_key(const void *, size_t *, my_bool);
uchar *get_plugin_hash_key(const uchar *buff, size_t *length,
my_bool not_used __attribute__((unused)))
const uchar *get_plugin_hash_key(const void *buff, size_t *length, my_bool)
{
struct st_plugin_int *plugin= (st_plugin_int *)buff;
*length= (uint)plugin->name.length;
return((uchar *)plugin->name.str);
auto plugin= static_cast<const st_plugin_int *>(buff);
*length= plugin->name.length;
return reinterpret_cast<const uchar *>(plugin->name.str);
}
uchar *get_bookmark_hash_key(const uchar *buff, size_t *length,
my_bool not_used __attribute__((unused)))
const uchar *get_bookmark_hash_key(const void *buff, size_t *length, my_bool)
{
struct st_bookmark *var= (st_bookmark *)buff;
auto var= static_cast<const st_bookmark *>(buff);
*length= var->name_len + 1;
return (uchar*) var->key;
return reinterpret_cast<const uchar *>(var->key);
}
static inline void convert_dash_to_underscore(char *str, size_t len)
@@ -3402,7 +3402,7 @@ void plugin_thdvar_cleanup(THD *thd)
if ((idx= thd->lex->plugins.elements))
{
list= ((plugin_ref*) thd->lex->plugins.buffer) + idx - 1;
DBUG_PRINT("info",("unlocking %d plugins", idx));
DBUG_PRINT("info",("unlocking %zu plugins", idx));
while ((uchar*) list >= thd->lex->plugins.buffer)
intern_plugin_unlock(NULL, *list--);
}