1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Merge 10.3 into 10.4

This commit is contained in:
Marko Mäkelä
2023-01-03 16:10:02 +02:00
149 changed files with 2784 additions and 1991 deletions

View File

@ -2,7 +2,7 @@
#define HANDLER_INCLUDED
/*
Copyright (c) 2000, 2019, Oracle and/or its affiliates.
Copyright (c) 2009, 2022, MariaDB
Copyright (c) 2009, 2023, MariaDB
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@ -1984,7 +1984,8 @@ struct Vers_parse_info: public Table_period_info
Vers_parse_info() :
Table_period_info(STRING_WITH_LEN("SYSTEM_TIME")),
versioned_fields(false),
unversioned_fields(false)
unversioned_fields(false),
can_native(-1)
{}
Table_period_info::start_end_t as_row;
@ -2013,6 +2014,9 @@ protected:
bool need_check(const Alter_info *alter_info) const;
bool check_conditions(const Lex_table_name &table_name,
const Lex_table_name &db) const;
bool create_sys_field(THD *thd, const char *field_name,
Alter_info *alter_info, int flags);
public:
static const Lex_ident default_start;
static const Lex_ident default_end;
@ -2022,8 +2026,7 @@ public:
bool fix_create_like(Alter_info &alter_info, HA_CREATE_INFO &create_info,
TABLE_LIST &src_table, TABLE_LIST &table);
bool check_sys_fields(const Lex_table_name &table_name,
const Lex_table_name &db, Alter_info *alter_info,
bool can_native) const;
const Lex_table_name &db, Alter_info *alter_info) const;
/**
At least one field was specified 'WITH/WITHOUT SYSTEM VERSIONING'.
@ -2031,6 +2034,7 @@ public:
*/
bool versioned_fields : 1;
bool unversioned_fields : 1;
int can_native;
};
/**
@ -2147,6 +2151,7 @@ struct Table_scope_and_contents_source_st:
int select_count= 0);
bool check_period_fields(THD *thd, Alter_info *alter_info);
void vers_check_native();
bool vers_fix_system_fields(THD *thd, Alter_info *alter_info,
const TABLE_LIST &create_table);
@ -2154,7 +2159,6 @@ struct Table_scope_and_contents_source_st:
const Lex_table_name &table_name,
const Lex_table_name &db,
int select_count= 0);
};