mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
- renaming TMP_TABLE to NON_TRANSACTIONAL_TMP_TABLE because this is
what it actually means (Monty approved the renaming) - correcting description of transaction_alloc command-line options (our manual is correct) - fix for a failure of rpl_trigger. mysql-test/t/rpl_misc_functions.test: test was cleaning up only on slave, but it's also needed on master, otherwise it influences rpl_trigger.test sql/lock.cc: clearer name sql/mysqld.cc: I checked the code that those two variables are not about binlogging but about the size of the transaction's memroot which is used to create savepoint structures and to store list of tables to be invalidated (for NDB). The manual has a correct description, no need to fix it. sql/sql_base.cc: clearer name sql/sql_derived.cc: clearer name sql/sql_select.cc: clearer name sql/table.h: clearer name: TMP_TABLE is used for non-transactional tables.
This commit is contained in:
parent
24c0048ed0
commit
685d21b72f
7 changed files with 13 additions and 10 deletions
|
@ -89,12 +89,14 @@ INSERT INTO t1 VALUES (test_replication_sf());
|
|||
--exec diff $MYSQLTEST_VARDIR/tmp/rpl_rand_master.sql $MYSQLTEST_VARDIR/tmp/rpl_rand_slave.sql
|
||||
|
||||
# Cleanup
|
||||
connection master;
|
||||
--disable_warnings
|
||||
DROP PROCEDURE IF EXISTS test_replication_sp1;
|
||||
DROP PROCEDURE IF EXISTS test_replication_sp2;
|
||||
DROP FUNCTION IF EXISTS test_replication_sf;
|
||||
DROP TABLE IF EXISTS t1;
|
||||
--enable_warnings
|
||||
--sync_slave_with_master
|
||||
|
||||
# If all is good, when can cleanup our dump files.
|
||||
--system rm $MYSQLTEST_VARDIR/tmp/rpl_rand_master.sql
|
||||
|
|
|
@ -544,7 +544,7 @@ TABLE_LIST *mysql_lock_have_duplicate(THD *thd, TABLE_LIST *needle,
|
|||
goto end;
|
||||
|
||||
/* A temporary table does not have locks. */
|
||||
if (table->s->tmp_table == TMP_TABLE)
|
||||
if (table->s->tmp_table == NON_TRANSACTIONAL_TMP_TABLE)
|
||||
goto end;
|
||||
|
||||
/* Get command lock or LOCK TABLES lock. Maybe empty for INSERT DELAYED. */
|
||||
|
@ -569,7 +569,7 @@ TABLE_LIST *mysql_lock_have_duplicate(THD *thd, TABLE_LIST *needle,
|
|||
if (haystack->placeholder())
|
||||
continue;
|
||||
table2= haystack->table;
|
||||
if (table2->s->tmp_table == TMP_TABLE)
|
||||
if (table2->s->tmp_table == NON_TRANSACTIONAL_TMP_TABLE)
|
||||
continue;
|
||||
|
||||
/* All tables in list must be in lock. */
|
||||
|
@ -655,7 +655,7 @@ static MYSQL_LOCK *get_lock_data(THD *thd, TABLE **table_ptr, uint count,
|
|||
*write_lock_used=0;
|
||||
for (i=tables=lock_count=0 ; i < count ; i++)
|
||||
{
|
||||
if (table_ptr[i]->s->tmp_table != TMP_TABLE)
|
||||
if (table_ptr[i]->s->tmp_table != NON_TRANSACTIONAL_TMP_TABLE)
|
||||
{
|
||||
tables+=table_ptr[i]->file->lock_count();
|
||||
lock_count++;
|
||||
|
@ -697,7 +697,7 @@ static MYSQL_LOCK *get_lock_data(THD *thd, TABLE **table_ptr, uint count,
|
|||
TABLE *table;
|
||||
enum thr_lock_type lock_type;
|
||||
|
||||
if ((table=table_ptr[i])->s->tmp_table == TMP_TABLE)
|
||||
if ((table=table_ptr[i])->s->tmp_table == NON_TRANSACTIONAL_TMP_TABLE)
|
||||
continue;
|
||||
lock_type= table->reginfo.lock_type;
|
||||
if (lock_type >= TL_WRITE_ALLOW_WRITE)
|
||||
|
|
|
@ -6120,12 +6120,12 @@ The minimum value for this variable is 4096.",
|
|||
(gptr*) &max_system_variables.tmp_table_size, 0, GET_ULL,
|
||||
REQUIRED_ARG, 32*1024*1024L, 1024, MAX_MEM_TABLE_SIZE, 0, 1, 0},
|
||||
{"transaction_alloc_block_size", OPT_TRANS_ALLOC_BLOCK_SIZE,
|
||||
"Allocation block size for transactions to be stored in binary log",
|
||||
"Allocation block size for various transaction-related structures",
|
||||
(gptr*) &global_system_variables.trans_alloc_block_size,
|
||||
(gptr*) &max_system_variables.trans_alloc_block_size, 0, GET_ULONG,
|
||||
REQUIRED_ARG, QUERY_ALLOC_BLOCK_SIZE, 1024, ~0L, 0, 1024, 0},
|
||||
{"transaction_prealloc_size", OPT_TRANS_PREALLOC_SIZE,
|
||||
"Persistent buffer for transactions to be stored in binary log",
|
||||
"Persistent buffer for various transaction-related structures",
|
||||
(gptr*) &global_system_variables.trans_prealloc_size,
|
||||
(gptr*) &max_system_variables.trans_prealloc_size, 0, GET_ULONG,
|
||||
REQUIRED_ARG, TRANS_ALLOC_PREALLOC_SIZE, 1024, ~0L, 0, 1024, 0},
|
||||
|
|
|
@ -2950,7 +2950,7 @@ TABLE *open_temporary_table(THD *thd, const char *path, const char *db,
|
|||
share= tmp_table->s;
|
||||
tmp_table->reginfo.lock_type=TL_WRITE; // Simulate locked
|
||||
share->tmp_table= (tmp_table->file->has_transactions() ?
|
||||
TRANSACTIONAL_TMP_TABLE : TMP_TABLE);
|
||||
TRANSACTIONAL_TMP_TABLE : NON_TRANSACTIONAL_TMP_TABLE);
|
||||
share->table_cache_key= (char*) (tmp_table+1);
|
||||
share->db= share->table_cache_key;
|
||||
share->key_length= (uint) (strmov(((char*) (share->table_name=
|
||||
|
|
|
@ -179,7 +179,7 @@ exit:
|
|||
orig_table_list->table_name= (char*) table->s->table_name;
|
||||
orig_table_list->table_name_length= strlen((char*)table->s->table_name);
|
||||
table->derived_select_number= first_select->select_number;
|
||||
table->s->tmp_table= TMP_TABLE;
|
||||
table->s->tmp_table= NON_TRANSACTIONAL_TMP_TABLE;
|
||||
#ifndef NO_EMBEDDED_ACCESS_CHECKS
|
||||
if (orig_table_list->referencing_view)
|
||||
table->grant= orig_table_list->grant;
|
||||
|
|
|
@ -9165,7 +9165,7 @@ create_tmp_table(THD *thd,TMP_TABLE_PARAM *param,List<Item> &fields,
|
|||
table->s->table_name= table->s->path= tmpname;
|
||||
table->s->db= "";
|
||||
table->s->blob_ptr_size= mi_portable_sizeof_char_ptr;
|
||||
table->s->tmp_table= TMP_TABLE;
|
||||
table->s->tmp_table= NON_TRANSACTIONAL_TMP_TABLE;
|
||||
table->s->db_low_byte_first=1; // True for HEAP and MyISAM
|
||||
table->s->table_charset= param->table_charset;
|
||||
table->s->keys_for_keyread.init();
|
||||
|
|
|
@ -55,7 +55,8 @@ typedef struct st_grant_info
|
|||
ulong orig_want_privilege;
|
||||
} GRANT_INFO;
|
||||
|
||||
enum tmp_table_type {NO_TMP_TABLE=0, TMP_TABLE=1, TRANSACTIONAL_TMP_TABLE=2,
|
||||
enum tmp_table_type {NO_TMP_TABLE=0,
|
||||
NON_TRANSACTIONAL_TMP_TABLE=1, TRANSACTIONAL_TMP_TABLE=2,
|
||||
SYSTEM_TMP_TABLE=3};
|
||||
|
||||
enum frm_type_enum
|
||||
|
|
Loading…
Add table
Reference in a new issue