Merge 10.0 into 10.1
This commit is contained in:
commit
bae21bfb5d
@ -1,6 +1,6 @@
|
|||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
|
|
||||||
Copyright (c) 1996, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
Copyright (c) 1996, 2016, Oracle and/or its affiliates. All Rights Reserved.
|
||||||
Copyright (c) 2012, Facebook Inc.
|
Copyright (c) 2012, Facebook Inc.
|
||||||
Copyright (c) 2013, 2018, MariaDB Corporation.
|
Copyright (c) 2013, 2018, MariaDB Corporation.
|
||||||
|
|
||||||
@ -3381,10 +3381,7 @@ dict_foreign_find_index(
|
|||||||
table, col_names, columns, n_cols,
|
table, col_names, columns, n_cols,
|
||||||
index, types_idx,
|
index, types_idx,
|
||||||
check_charsets, check_null,
|
check_charsets, check_null,
|
||||||
error, err_col_no,err_index)
|
error, err_col_no,err_index)) {
|
||||||
&& (!(index->online_status ==
|
|
||||||
ONLINE_INDEX_ABORTED_DROPPED
|
|
||||||
||index->online_status == ONLINE_INDEX_ABORTED))) {
|
|
||||||
if (error) {
|
if (error) {
|
||||||
*error = DB_SUCCESS;
|
*error = DB_SUCCESS;
|
||||||
}
|
}
|
||||||
|
@ -870,19 +870,19 @@ fts_drop_index(
|
|||||||
err = fts_drop_index_tables(trx, index);
|
err = fts_drop_index_tables(trx, index);
|
||||||
|
|
||||||
while (index->index_fts_syncing
|
while (index->index_fts_syncing
|
||||||
&& !trx_is_interrupted(trx)) {
|
&& !trx_is_interrupted(trx)) {
|
||||||
DICT_BG_YIELD(trx);
|
DICT_BG_YIELD(trx);
|
||||||
}
|
}
|
||||||
|
|
||||||
fts_free(table);
|
fts_free(table);
|
||||||
|
|
||||||
return(err);
|
return(err);
|
||||||
}
|
}
|
||||||
|
|
||||||
while (index->index_fts_syncing
|
while (index->index_fts_syncing
|
||||||
&& !trx_is_interrupted(trx)) {
|
&& !trx_is_interrupted(trx)) {
|
||||||
DICT_BG_YIELD(trx);
|
DICT_BG_YIELD(trx);
|
||||||
}
|
}
|
||||||
|
|
||||||
current_doc_id = table->fts->cache->next_doc_id;
|
current_doc_id = table->fts->cache->next_doc_id;
|
||||||
first_doc_id = table->fts->cache->first_doc_id;
|
first_doc_id = table->fts->cache->first_doc_id;
|
||||||
@ -901,9 +901,9 @@ fts_drop_index(
|
|||||||
|
|
||||||
if (index_cache != NULL) {
|
if (index_cache != NULL) {
|
||||||
while (index->index_fts_syncing
|
while (index->index_fts_syncing
|
||||||
&& !trx_is_interrupted(trx)) {
|
&& !trx_is_interrupted(trx)) {
|
||||||
DICT_BG_YIELD(trx);
|
DICT_BG_YIELD(trx);
|
||||||
}
|
}
|
||||||
if (index_cache->words) {
|
if (index_cache->words) {
|
||||||
fts_words_free(index_cache->words);
|
fts_words_free(index_cache->words);
|
||||||
rbt_free(index_cache->words);
|
rbt_free(index_cache->words);
|
||||||
|
@ -2357,11 +2357,6 @@ innobase_get_lower_case_table_names(void)
|
|||||||
{
|
{
|
||||||
return(lower_case_table_names);
|
return(lower_case_table_names);
|
||||||
}
|
}
|
||||||
/** return one of the tmpdir path
|
|
||||||
@return tmpdir path*/
|
|
||||||
UNIV_INTERN
|
|
||||||
char*
|
|
||||||
innobase_mysql_tmpdir(void) { return (mysql_tmpdir); }
|
|
||||||
|
|
||||||
/** Create a temporary file in the location specified by the parameter
|
/** Create a temporary file in the location specified by the parameter
|
||||||
path. If the path is null, then it will be created in tmpdir.
|
path. If the path is null, then it will be created in tmpdir.
|
||||||
@ -12872,36 +12867,35 @@ innobase_rename_table(
|
|||||||
|
|
||||||
row_mysql_lock_data_dictionary(trx);
|
row_mysql_lock_data_dictionary(trx);
|
||||||
|
|
||||||
dict_table_t* table = NULL;
|
dict_table_t* table = dict_table_open_on_name(norm_from, TRUE, FALSE,
|
||||||
table = dict_table_open_on_name(norm_from, TRUE, FALSE,
|
DICT_ERR_IGNORE_NONE);
|
||||||
DICT_ERR_IGNORE_NONE);
|
|
||||||
|
|
||||||
/* Since DICT_BG_YIELD has sleep for 250 milliseconds,
|
/* Since DICT_BG_YIELD has sleep for 250 milliseconds,
|
||||||
Convert lock_wait_timeout unit from second to 250 milliseconds */
|
Convert lock_wait_timeout unit from second to 250 milliseconds */
|
||||||
long int lock_wait_timeout = thd_lock_wait_timeout(thd) * 4;
|
long int lock_wait_timeout = thd_lock_wait_timeout(thd) * 4;
|
||||||
if (table != NULL) {
|
if (table != NULL) {
|
||||||
for (dict_index_t* index = dict_table_get_first_index(table);
|
for (dict_index_t* index = dict_table_get_first_index(table);
|
||||||
index != NULL;
|
index != NULL;
|
||||||
index = dict_table_get_next_index(index)) {
|
index = dict_table_get_next_index(index)) {
|
||||||
|
|
||||||
if (index->type & DICT_FTS) {
|
if (index->type & DICT_FTS) {
|
||||||
/* Found */
|
/* Found */
|
||||||
while (index->index_fts_syncing
|
while (index->index_fts_syncing
|
||||||
&& !trx_is_interrupted(trx)
|
&& !trx_is_interrupted(trx)
|
||||||
&& (lock_wait_timeout--) > 0) {
|
&& (lock_wait_timeout--) > 0) {
|
||||||
DICT_BG_YIELD(trx);
|
DICT_BG_YIELD(trx);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
dict_table_close(table, TRUE, FALSE);
|
dict_table_close(table, TRUE, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* FTS sync is in progress. We shall timeout this operation */
|
/* FTS sync is in progress. We shall timeout this operation */
|
||||||
if (lock_wait_timeout < 0) {
|
if (lock_wait_timeout < 0) {
|
||||||
error = DB_LOCK_WAIT_TIMEOUT;
|
error = DB_LOCK_WAIT_TIMEOUT;
|
||||||
row_mysql_unlock_data_dictionary(trx);
|
row_mysql_unlock_data_dictionary(trx);
|
||||||
DBUG_RETURN(error);
|
DBUG_RETURN(error);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Transaction must be flagged as a locking transaction or it hasn't
|
/* Transaction must be flagged as a locking transaction or it hasn't
|
||||||
been started yet. */
|
been started yet. */
|
||||||
@ -13056,14 +13050,12 @@ ha_innobase::rename_table(
|
|||||||
my_error(ER_TABLE_EXISTS_ERROR, MYF(0), to);
|
my_error(ER_TABLE_EXISTS_ERROR, MYF(0), to);
|
||||||
|
|
||||||
error = DB_ERROR;
|
error = DB_ERROR;
|
||||||
|
} else if (error == DB_LOCK_WAIT_TIMEOUT) {
|
||||||
|
my_error(ER_LOCK_WAIT_TIMEOUT, MYF(0), to);
|
||||||
|
|
||||||
|
error = DB_LOCK_WAIT;
|
||||||
}
|
}
|
||||||
|
|
||||||
else if (error == DB_LOCK_WAIT_TIMEOUT) {
|
|
||||||
my_error(ER_LOCK_WAIT_TIMEOUT, MYF(0), to);
|
|
||||||
|
|
||||||
error = DB_LOCK_WAIT;
|
|
||||||
}
|
|
||||||
|
|
||||||
DBUG_RETURN(convert_error_code_to_mysql(error, 0, NULL));
|
DBUG_RETURN(convert_error_code_to_mysql(error, 0, NULL));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4283,23 +4283,11 @@ oom:
|
|||||||
table. Either way, we should be seeing and
|
table. Either way, we should be seeing and
|
||||||
reporting a bogus duplicate key error. */
|
reporting a bogus duplicate key error. */
|
||||||
dup_key = NULL;
|
dup_key = NULL;
|
||||||
} else if (prebuilt->trx->error_key_num == 0) {
|
} else {
|
||||||
|
DBUG_ASSERT(prebuilt->trx->error_key_num
|
||||||
|
< ha_alter_info->key_count);
|
||||||
dup_key = &ha_alter_info->key_info_buffer[
|
dup_key = &ha_alter_info->key_info_buffer[
|
||||||
prebuilt->trx->error_key_num];
|
prebuilt->trx->error_key_num];
|
||||||
} else {
|
|
||||||
/* Check if there is generated cluster index column */
|
|
||||||
if (ctx->num_to_add_index > ha_alter_info->key_count) {
|
|
||||||
DBUG_ASSERT(prebuilt->trx->error_key_num
|
|
||||||
<= ha_alter_info->key_count);
|
|
||||||
dup_key = &ha_alter_info->key_info_buffer[
|
|
||||||
prebuilt->trx->error_key_num - 1];
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
DBUG_ASSERT(prebuilt->trx->error_key_num
|
|
||||||
< ha_alter_info->key_count);
|
|
||||||
dup_key = &ha_alter_info->key_info_buffer[
|
|
||||||
prebuilt->trx->error_key_num];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
print_keydup_error(altered_table, dup_key, MYF(0));
|
print_keydup_error(altered_table, dup_key, MYF(0));
|
||||||
break;
|
break;
|
||||||
@ -5234,18 +5222,9 @@ commit_try_rebuild(
|
|||||||
FTS_DOC_ID. */
|
FTS_DOC_ID. */
|
||||||
dup_key = NULL;
|
dup_key = NULL;
|
||||||
} else {
|
} else {
|
||||||
if (ctx->num_to_add_index > ha_alter_info->key_count) {
|
DBUG_ASSERT(err_key < ha_alter_info->key_count);
|
||||||
DBUG_ASSERT(err_key <=
|
dup_key = &ha_alter_info
|
||||||
ha_alter_info->key_count);
|
->key_info_buffer[err_key];
|
||||||
dup_key = &ha_alter_info
|
|
||||||
->key_info_buffer[err_key - 1];
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
DBUG_ASSERT(err_key <
|
|
||||||
ha_alter_info->key_count);
|
|
||||||
dup_key = &ha_alter_info
|
|
||||||
->key_info_buffer[err_key];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
print_keydup_error(altered_table, dup_key, MYF(0));
|
print_keydup_error(altered_table, dup_key, MYF(0));
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
|
|
||||||
Copyright (c) 1995, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
Copyright (c) 1995, 2017, Oracle and/or its affiliates. All Rights Reserved.
|
||||||
Copyright (c) 2009, Percona Inc.
|
Copyright (c) 2009, Percona Inc.
|
||||||
Copyright (c) 2013, 2017, MariaDB Corporation.
|
Copyright (c) 2013, 2017, MariaDB Corporation.
|
||||||
|
|
||||||
@ -1323,10 +1323,6 @@ os_file_get_status(
|
|||||||
file can be opened in RW mode */
|
file can be opened in RW mode */
|
||||||
|
|
||||||
#if !defined(UNIV_HOTBACKUP)
|
#if !defined(UNIV_HOTBACKUP)
|
||||||
|
|
||||||
/** return one of the tmpdir path
|
|
||||||
@return tmpdir path*/
|
|
||||||
char *innobase_mysql_tmpdir(void);
|
|
||||||
/** Create a temporary file in the location specified by the parameter
|
/** Create a temporary file in the location specified by the parameter
|
||||||
path. If the path is null, then it will be created in tmpdir.
|
path. If the path is null, then it will be created in tmpdir.
|
||||||
@param[in] path location for creating temporary file
|
@param[in] path location for creating temporary file
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
|
|
||||||
Copyright (c) 2005, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
Copyright (c) 2005, 2017, Oracle and/or its affiliates. All Rights Reserved.
|
||||||
Copyright (c) 2014, 2018, MariaDB Corporation.
|
Copyright (c) 2014, 2018, MariaDB Corporation.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify it under
|
This program is free software; you can redistribute it and/or modify it under
|
||||||
@ -3339,10 +3339,9 @@ row_merge_file_create_low(
|
|||||||
file APIs, add instrumentation to register with
|
file APIs, add instrumentation to register with
|
||||||
performance schema */
|
performance schema */
|
||||||
struct PSI_file_locker* locker = NULL;
|
struct PSI_file_locker* locker = NULL;
|
||||||
|
|
||||||
PSI_file_locker_state state;
|
PSI_file_locker_state state;
|
||||||
if (!path) {
|
if (!path) {
|
||||||
path = innobase_mysql_tmpdir();
|
path = mysql_tmpdir;
|
||||||
}
|
}
|
||||||
static const char label[] = "/Innodb Merge Temp File";
|
static const char label[] = "/Innodb Merge Temp File";
|
||||||
char* name = static_cast<char*>(
|
char* name = static_cast<char*>(
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
|
|
||||||
Copyright (c) 1997, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
Copyright (c) 1997, 2017, Oracle and/or its affiliates. All Rights Reserved.
|
||||||
Copyright (c) 2008, Google Inc.
|
Copyright (c) 2008, Google Inc.
|
||||||
Copyright (c) 2015, 2018, MariaDB Corporation.
|
Copyright (c) 2015, 2018, MariaDB Corporation.
|
||||||
|
|
||||||
@ -4721,7 +4721,7 @@ no_gap_lock:
|
|||||||
prebuilt->new_rec_locks = 1;
|
prebuilt->new_rec_locks = 1;
|
||||||
}
|
}
|
||||||
err = DB_SUCCESS;
|
err = DB_SUCCESS;
|
||||||
break;
|
/* fall through */
|
||||||
case DB_SUCCESS:
|
case DB_SUCCESS:
|
||||||
break;
|
break;
|
||||||
case DB_LOCK_WAIT:
|
case DB_LOCK_WAIT:
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
|
|
||||||
Copyright (c) 1996, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
Copyright (c) 1996, 2017, Oracle and/or its affiliates. All Rights Reserved.
|
||||||
Copyright (c) 2012, Facebook Inc.
|
Copyright (c) 2012, Facebook Inc.
|
||||||
Copyright (c) 2013, 2018, MariaDB Corporation.
|
Copyright (c) 2013, 2018, MariaDB Corporation.
|
||||||
|
|
||||||
@ -3394,10 +3394,7 @@ dict_foreign_find_index(
|
|||||||
table, col_names, columns, n_cols,
|
table, col_names, columns, n_cols,
|
||||||
index, types_idx,
|
index, types_idx,
|
||||||
check_charsets, check_null,
|
check_charsets, check_null,
|
||||||
error, err_col_no,err_index)
|
error, err_col_no,err_index)) {
|
||||||
&& (!(index->online_status ==
|
|
||||||
ONLINE_INDEX_ABORTED_DROPPED
|
|
||||||
||index->online_status == ONLINE_INDEX_ABORTED))) {
|
|
||||||
if (error) {
|
if (error) {
|
||||||
*error = DB_SUCCESS;
|
*error = DB_SUCCESS;
|
||||||
}
|
}
|
||||||
|
@ -870,19 +870,19 @@ fts_drop_index(
|
|||||||
err = fts_drop_index_tables(trx, index);
|
err = fts_drop_index_tables(trx, index);
|
||||||
|
|
||||||
while (index->index_fts_syncing
|
while (index->index_fts_syncing
|
||||||
&& !trx_is_interrupted(trx)) {
|
&& !trx_is_interrupted(trx)) {
|
||||||
DICT_BG_YIELD(trx);
|
DICT_BG_YIELD(trx);
|
||||||
}
|
}
|
||||||
|
|
||||||
fts_free(table);
|
fts_free(table);
|
||||||
|
|
||||||
return(err);
|
return(err);
|
||||||
}
|
}
|
||||||
|
|
||||||
while (index->index_fts_syncing
|
while (index->index_fts_syncing
|
||||||
&& !trx_is_interrupted(trx)) {
|
&& !trx_is_interrupted(trx)) {
|
||||||
DICT_BG_YIELD(trx);
|
DICT_BG_YIELD(trx);
|
||||||
}
|
}
|
||||||
|
|
||||||
current_doc_id = table->fts->cache->next_doc_id;
|
current_doc_id = table->fts->cache->next_doc_id;
|
||||||
first_doc_id = table->fts->cache->first_doc_id;
|
first_doc_id = table->fts->cache->first_doc_id;
|
||||||
@ -901,9 +901,9 @@ fts_drop_index(
|
|||||||
|
|
||||||
if (index_cache != NULL) {
|
if (index_cache != NULL) {
|
||||||
while (index->index_fts_syncing
|
while (index->index_fts_syncing
|
||||||
&& !trx_is_interrupted(trx)) {
|
&& !trx_is_interrupted(trx)) {
|
||||||
DICT_BG_YIELD(trx);
|
DICT_BG_YIELD(trx);
|
||||||
}
|
}
|
||||||
if (index_cache->words) {
|
if (index_cache->words) {
|
||||||
fts_words_free(index_cache->words);
|
fts_words_free(index_cache->words);
|
||||||
rbt_free(index_cache->words);
|
rbt_free(index_cache->words);
|
||||||
|
@ -106,8 +106,8 @@ extern int ftserror(const char* p);
|
|||||||
typedef int (*fts_scanner)(YYSTYPE* val, yyscan_t yyscanner);
|
typedef int (*fts_scanner)(YYSTYPE* val, yyscan_t yyscanner);
|
||||||
|
|
||||||
struct fts_lexer_t {
|
struct fts_lexer_t {
|
||||||
fts_scanner scanner;
|
fts_scanner scanner;
|
||||||
void* yyscanner;
|
void* yyscanner;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -52,8 +52,8 @@ extern int ftserror(const char* p);
|
|||||||
typedef int (*fts_scanner)(YYSTYPE* val, yyscan_t yyscanner);
|
typedef int (*fts_scanner)(YYSTYPE* val, yyscan_t yyscanner);
|
||||||
|
|
||||||
struct fts_lexer_struct {
|
struct fts_lexer_struct {
|
||||||
fts_scanner scanner;
|
fts_scanner scanner;
|
||||||
void* yyscanner;
|
void* yyscanner;
|
||||||
};
|
};
|
||||||
|
|
||||||
%}
|
%}
|
||||||
|
@ -13464,36 +13464,35 @@ innobase_rename_table(
|
|||||||
|
|
||||||
row_mysql_lock_data_dictionary(trx);
|
row_mysql_lock_data_dictionary(trx);
|
||||||
|
|
||||||
dict_table_t* table = NULL;
|
dict_table_t* table = dict_table_open_on_name(norm_from, TRUE, FALSE,
|
||||||
table = dict_table_open_on_name(norm_from, TRUE, FALSE,
|
DICT_ERR_IGNORE_NONE);
|
||||||
DICT_ERR_IGNORE_NONE);
|
|
||||||
|
|
||||||
/* Since DICT_BG_YIELD has sleep for 250 milliseconds,
|
/* Since DICT_BG_YIELD has sleep for 250 milliseconds,
|
||||||
Convert lock_wait_timeout unit from second to 250 milliseconds */
|
Convert lock_wait_timeout unit from second to 250 milliseconds */
|
||||||
long int lock_wait_timeout = thd_lock_wait_timeout(thd) * 4;
|
long int lock_wait_timeout = thd_lock_wait_timeout(thd) * 4;
|
||||||
if (table != NULL) {
|
if (table != NULL) {
|
||||||
for (dict_index_t* index = dict_table_get_first_index(table);
|
for (dict_index_t* index = dict_table_get_first_index(table);
|
||||||
index != NULL;
|
index != NULL;
|
||||||
index = dict_table_get_next_index(index)) {
|
index = dict_table_get_next_index(index)) {
|
||||||
|
|
||||||
if (index->type & DICT_FTS) {
|
if (index->type & DICT_FTS) {
|
||||||
/* Found */
|
/* Found */
|
||||||
while (index->index_fts_syncing
|
while (index->index_fts_syncing
|
||||||
&& !trx_is_interrupted(trx)
|
&& !trx_is_interrupted(trx)
|
||||||
&& (lock_wait_timeout--) > 0) {
|
&& (lock_wait_timeout--) > 0) {
|
||||||
DICT_BG_YIELD(trx);
|
DICT_BG_YIELD(trx);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
dict_table_close(table, TRUE, FALSE);
|
dict_table_close(table, TRUE, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* FTS sync is in progress. We shall timeout this operation */
|
/* FTS sync is in progress. We shall timeout this operation */
|
||||||
if (lock_wait_timeout < 0) {
|
if (lock_wait_timeout < 0) {
|
||||||
error = DB_LOCK_WAIT_TIMEOUT;
|
error = DB_LOCK_WAIT_TIMEOUT;
|
||||||
row_mysql_unlock_data_dictionary(trx);
|
row_mysql_unlock_data_dictionary(trx);
|
||||||
DBUG_RETURN(error);
|
DBUG_RETURN(error);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Transaction must be flagged as a locking transaction or it hasn't
|
/* Transaction must be flagged as a locking transaction or it hasn't
|
||||||
been started yet. */
|
been started yet. */
|
||||||
@ -13659,12 +13658,6 @@ ha_innobase::rename_table(
|
|||||||
error = DB_LOCK_WAIT;
|
error = DB_LOCK_WAIT;
|
||||||
}
|
}
|
||||||
|
|
||||||
else if (error == DB_LOCK_WAIT_TIMEOUT) {
|
|
||||||
my_error(ER_LOCK_WAIT_TIMEOUT, MYF(0), to);
|
|
||||||
|
|
||||||
error = DB_LOCK_WAIT;
|
|
||||||
}
|
|
||||||
|
|
||||||
DBUG_RETURN(convert_error_code_to_mysql(error, 0, NULL));
|
DBUG_RETURN(convert_error_code_to_mysql(error, 0, NULL));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -525,7 +525,7 @@ dtype_get_fixed_size_low(
|
|||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
#endif /* UNIV_DEBUG */
|
#endif /* UNIV_DEBUG */
|
||||||
// fallthrough
|
/* fall through */
|
||||||
case DATA_CHAR:
|
case DATA_CHAR:
|
||||||
case DATA_FIXBINARY:
|
case DATA_FIXBINARY:
|
||||||
case DATA_INT:
|
case DATA_INT:
|
||||||
@ -603,7 +603,7 @@ dtype_get_min_size_low(
|
|||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
#endif /* UNIV_DEBUG */
|
#endif /* UNIV_DEBUG */
|
||||||
// fallthrough
|
/* fall through */
|
||||||
case DATA_CHAR:
|
case DATA_CHAR:
|
||||||
case DATA_FIXBINARY:
|
case DATA_FIXBINARY:
|
||||||
case DATA_INT:
|
case DATA_INT:
|
||||||
|
@ -378,7 +378,8 @@ dict_mem_table_add_col(
|
|||||||
const char* name, /*!< in: column name, or NULL */
|
const char* name, /*!< in: column name, or NULL */
|
||||||
ulint mtype, /*!< in: main datatype */
|
ulint mtype, /*!< in: main datatype */
|
||||||
ulint prtype, /*!< in: precise type */
|
ulint prtype, /*!< in: precise type */
|
||||||
ulint len); /*!< in: precision */
|
ulint len) /*!< in: precision */
|
||||||
|
MY_ATTRIBUTE((nonnull(1)));
|
||||||
/**********************************************************************//**
|
/**********************************************************************//**
|
||||||
Renames a column of a table in the data dictionary cache. */
|
Renames a column of a table in the data dictionary cache. */
|
||||||
UNIV_INTERN
|
UNIV_INTERN
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
|
|
||||||
Copyright (c) 2012, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
Copyright (c) 2012, 2016, Oracle and/or its affiliates. All Rights Reserved.
|
||||||
Copyright (c) 2015, 2018, MariaDB Corporation.
|
Copyright (c) 2015, 2018, MariaDB Corporation.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify it under
|
This program is free software; you can redistribute it and/or modify it under
|
||||||
@ -1949,11 +1949,7 @@ PageConverter::update_index_page(
|
|||||||
return(DB_SUCCESS);
|
return(DB_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!page_is_leaf(block->frame)) {
|
return page_is_leaf(block->frame) ? update_records(block) : DB_SUCCESS;
|
||||||
return (DB_SUCCESS);
|
|
||||||
}
|
|
||||||
|
|
||||||
return(update_records(block));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -4239,4 +4235,3 @@ row_import_for_mysql(
|
|||||||
|
|
||||||
return(row_import_cleanup(prebuilt, trx, err));
|
return(row_import_cleanup(prebuilt, trx, err));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2738,7 +2738,8 @@ row_sel_field_store_in_mysql_format_func(
|
|||||||
case DATA_SYS:
|
case DATA_SYS:
|
||||||
/* These column types should never be shipped to MySQL. */
|
/* These column types should never be shipped to MySQL. */
|
||||||
ut_ad(0);
|
ut_ad(0);
|
||||||
break;
|
/* fall through */
|
||||||
|
|
||||||
case DATA_CHAR:
|
case DATA_CHAR:
|
||||||
case DATA_FIXBINARY:
|
case DATA_FIXBINARY:
|
||||||
case DATA_FLOAT:
|
case DATA_FLOAT:
|
||||||
@ -4729,7 +4730,7 @@ no_gap_lock:
|
|||||||
prebuilt->new_rec_locks = 1;
|
prebuilt->new_rec_locks = 1;
|
||||||
}
|
}
|
||||||
err = DB_SUCCESS;
|
err = DB_SUCCESS;
|
||||||
break;
|
/* fall through */
|
||||||
case DB_SUCCESS:
|
case DB_SUCCESS:
|
||||||
break;
|
break;
|
||||||
case DB_LOCK_WAIT:
|
case DB_LOCK_WAIT:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user