1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-27 18:02:13 +03:00

IB, SQL: InnoDB partitioning [closes #118]

* native InnoDB partitioning for BY SYSTEM_TIME partitions.
This commit is contained in:
Aleksey Midenkov
2017-02-20 10:06:58 +03:00
parent fb801289f3
commit fc7da4dd4f
31 changed files with 6554 additions and 258 deletions

View File

@ -19,6 +19,41 @@
class THD;
class st_alter_tablespace;
/**
Enumerate possible status of a identifier name while determining
its validity
*/
enum enum_ident_name_check
{
IDENT_NAME_OK,
IDENT_NAME_WRONG,
IDENT_NAME_TOO_LONG
};
/**
Check if tablespace name is valid
@param tablespace_name Name of the tablespace
@note Tablespace names are not reflected in the file system, so
character case conversion or consideration is not relevant.
@note Checking for path characters or ending space is not done.
The only checks are for identifier length, both in terms of
number of characters and number of bytes.
@retval IDENT_NAME_OK Identifier name is ok (Success)
@retval IDENT_NAME_WRONG Identifier name is wrong, if length == 0
(ER_WRONG_TABLESPACE_NAME)
@retval IDENT_NAME_TOO_LONG Identifier name is too long if it is greater
than 64 characters (ER_TOO_LONG_IDENT)
@note In case of IDENT_NAME_TOO_LONG or IDENT_NAME_WRONG, the function
reports an error (using my_error()).
*/
enum_ident_name_check check_tablespace_name(const char *tablespace_name);
int mysql_alter_tablespace(THD* thd, st_alter_tablespace *ts_info);
#endif /* SQL_TABLESPACE_INCLUDED */