removed unneeded table name pointer
transaction-live memory cleanup moved to ha_commit/ha_rollback fixed query cache validator to work correctly on systems that allocate unaligned dat sql/handler.cc: transaction-live memory cleanup moved to ha_commit/ha_rollback sql/sql_cache.cc: removed unneeded table name pointer fixed debug enter message fixed query cache validator to work correctly on systems that allocate unaligned data sql/sql_class.cc: removed unneeded table name pointer sql/sql_parse.cc: transaction-live memory cleanup moved to ha_commit/ha_rollback sql/table.h: removed unneeded table name pointer
This commit is contained in:
parent
fb104d76b5
commit
6a2eec80b0
@ -316,7 +316,10 @@ int ha_commit_trans(THD *thd, THD_TRANS* trans)
|
||||
sql_print_error("Error: Got error during commit; Binlog is not up to date!");
|
||||
thd->tx_isolation=thd->session_tx_isolation;
|
||||
if (operation_done)
|
||||
{
|
||||
statistic_increment(ha_commit_count,&LOCK_status);
|
||||
thd->transaction.cleanup();
|
||||
}
|
||||
}
|
||||
#endif // using transactions
|
||||
DBUG_RETURN(error);
|
||||
@ -361,7 +364,10 @@ int ha_rollback_trans(THD *thd, THD_TRANS *trans)
|
||||
thd->transaction.trans_log.end_of_file= max_binlog_cache_size;
|
||||
thd->tx_isolation=thd->session_tx_isolation;
|
||||
if (operation_done)
|
||||
{
|
||||
statistic_increment(ha_rollback_count,&LOCK_status);
|
||||
thd->transaction.cleanup();
|
||||
}
|
||||
}
|
||||
#endif /* USING_TRANSACTIONS */
|
||||
DBUG_RETURN(error);
|
||||
|
@ -1073,7 +1073,8 @@ void Query_cache::invalidate(CHANGED_TABLE_LIST *tables_used)
|
||||
{
|
||||
invalidate_table((byte*) tables_used->key, tables_used->key_length);
|
||||
DBUG_PRINT("qcache", (" db %s, table %s", tables_used->key,
|
||||
tables_used->table_name));
|
||||
tables_used->key+
|
||||
strlen(tables_used->key)+1));
|
||||
}
|
||||
}
|
||||
STRUCT_UNLOCK(&structure_guard_mutex);
|
||||
@ -1994,7 +1995,7 @@ Query_cache_block *
|
||||
Query_cache::allocate_block(ulong len, my_bool not_less, ulong min,
|
||||
my_bool under_guard)
|
||||
{
|
||||
DBUG_ENTER("Query_cache::allocate_n_lock_block");
|
||||
DBUG_ENTER("Query_cache::allocate_block");
|
||||
DBUG_PRINT("qcache", ("len %lu, not less %d, min %lu, uder_guard %d",
|
||||
len, not_less,min,under_guard));
|
||||
|
||||
@ -3060,7 +3061,8 @@ my_bool Query_cache::check_integrity(bool not_locked)
|
||||
DBUG_PRINT("qcache", ("block 0x%lx, type %u...",
|
||||
(ulong) block, (uint) block->type));
|
||||
// Check allignment
|
||||
if ((ulonglong)block % ALIGN_SIZE(1))
|
||||
if ((((ulonglong)block) % (ulonglong)ALIGN_SIZE(1)) !=
|
||||
(((ulonglong)first_block) % (ulonglong)ALIGN_SIZE(1)))
|
||||
{
|
||||
DBUG_PRINT("error",
|
||||
("block 0x%lx do not aligned by %d", (ulong) block,
|
||||
|
@ -345,11 +345,7 @@ CHANGED_TABLE_LIST* THD::changed_table_dup(TABLE *table)
|
||||
ALIGN_SIZE(sizeof(CHANGED_TABLE_LIST)));
|
||||
new_table->next = 0;
|
||||
new_table->key_length = table->key_length;
|
||||
uint32 db_len = ((new_table->table_name =
|
||||
::strmake(new_table->key, table->table_cache_key,
|
||||
table->key_length) + 1) - new_table->key);
|
||||
::memcpy(new_table->key + db_len, table->table_cache_key + db_len,
|
||||
table->key_length - db_len);
|
||||
::memcpy(new_table->key, table->table_cache_key, table->key_length);
|
||||
return new_table;
|
||||
}
|
||||
|
||||
|
@ -2432,7 +2432,6 @@ mysql_execute_command(void)
|
||||
}
|
||||
else
|
||||
res= -1;
|
||||
thd->transaction.cleanup();
|
||||
break;
|
||||
}
|
||||
case SQLCOM_ROLLBACK:
|
||||
@ -2447,7 +2446,6 @@ mysql_execute_command(void)
|
||||
else
|
||||
res= -1;
|
||||
thd->options&= ~(ulong) (OPTION_BEGIN | OPTION_STATUS_NO_TRANS_UPDATE);
|
||||
thd->transaction.cleanup();
|
||||
break;
|
||||
default: /* Impossible */
|
||||
send_ok(&thd->net);
|
||||
|
@ -154,7 +154,7 @@ typedef struct st_table_list {
|
||||
|
||||
typedef struct st_changed_table_list {
|
||||
struct st_changed_table_list *next;
|
||||
char *key, *table_name;
|
||||
char *key;
|
||||
uint32 key_length;
|
||||
} CHANGED_TABLE_LIST;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user