1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Merge branch '10.11' into 11.2

This commit is contained in:
Oleksandr Byelkin
2024-10-29 16:39:47 +01:00
660 changed files with 8148 additions and 3604 deletions

View File

@ -892,6 +892,18 @@ void init_update_queries(void)
sql_command_flags[SQLCOM_DROP_TABLE]|= CF_WSREP_MAY_IGNORE_ERRORS;
sql_command_flags[SQLCOM_DROP_INDEX]|= CF_WSREP_MAY_IGNORE_ERRORS;
sql_command_flags[SQLCOM_ALTER_TABLE]|= CF_WSREP_MAY_IGNORE_ERRORS;
/*
Basic DML-statements that create writeset.
*/
sql_command_flags[SQLCOM_INSERT]|= CF_WSREP_BASIC_DML;
sql_command_flags[SQLCOM_INSERT_SELECT]|= CF_WSREP_BASIC_DML;
sql_command_flags[SQLCOM_REPLACE]|= CF_WSREP_BASIC_DML;
sql_command_flags[SQLCOM_REPLACE_SELECT]|= CF_WSREP_BASIC_DML;
sql_command_flags[SQLCOM_UPDATE]|= CF_WSREP_BASIC_DML;
sql_command_flags[SQLCOM_UPDATE_MULTI]|= CF_WSREP_BASIC_DML;
sql_command_flags[SQLCOM_LOAD]|= CF_WSREP_BASIC_DML;
sql_command_flags[SQLCOM_DELETE]|= CF_WSREP_BASIC_DML;
sql_command_flags[SQLCOM_DELETE_MULTI]|= CF_WSREP_BASIC_DML;
#endif /* WITH_WSREP */
}
@ -989,7 +1001,6 @@ int bootstrap(MYSQL_FILE *file)
#endif
/* The following must be called before DBUG_ENTER */
thd->thread_stack= (char*) &thd;
thd->store_globals();
thd->security_ctx->user= (char*) my_strdup(key_memory_MPVIO_EXT_auth_info,
@ -7359,7 +7370,9 @@ check_stack_overrun(THD *thd, long margin, uchar *buf __attribute__((unused)))
#ifndef __SANITIZE_ADDRESS__
long stack_used;
DBUG_ASSERT(thd == current_thd);
if ((stack_used= available_stack_size(thd->thread_stack, &stack_used)) >=
DBUG_ASSERT(thd->thread_stack);
if ((stack_used= available_stack_size(thd->thread_stack,
my_get_stack_pointer(&stack_used))) >=
(long) (my_thread_stack_size - margin))
{
thd->is_fatal_error= 1;
@ -8947,7 +8960,11 @@ Item *normalize_cond(THD *thd, Item *cond)
Item::Type type= cond->type();
if (type == Item::FIELD_ITEM || type == Item::REF_ITEM)
{
item_base_t is_cond_flag= cond->base_flags & item_base_t::IS_COND;
cond->base_flags&= ~item_base_t::IS_COND;
cond= new (thd->mem_root) Item_func_ne(thd, cond, new (thd->mem_root) Item_int(thd, 0));
if (cond)
cond->base_flags|= is_cond_flag;
}
else
{