diff options
author | Satya B <satya.bn@sun.com> | 2009-05-15 16:33:08 +0530 |
---|---|---|
committer | Satya B <satya.bn@sun.com> | 2009-05-15 16:33:08 +0530 |
commit | 1e37c919ef557f00476779b660ecf0c309c99457 (patch) | |
tree | 1b06fc5572cee939621b7545a98f4e6ab6e9f6f2 /sql/mysql_priv.h | |
parent | c5548ad7bdb8faa673c8455ebd4d98aad93b43eb (diff) | |
download | mariadb-git-1e37c919ef557f00476779b660ecf0c309c99457.tar.gz |
Fix for BUG#10206 - InnoDB: Transaction requiring Max_BinLog_Cache_size > 4GB
always rollsback.
The global variable max_binlog_cache_size cannot be set more than 4GB on
32 bit systems, limiting transactions of all storage engines to 4G of changes.
The problem is max_binlog_cache_size is declared as ulong which is 4 bytes
on 32 bit and 8 bytes on 64 bit machines.
Fixed by using ulonglong for max_binlog_cache_size which is 8bytes on 32
and 64 bit machines.The range for max_binlog_cache_size on 32 bit and 64 bit
systems is 4096-18446744073709547520 bytes.
mysql-test/r/variables.result:
Result file for BUG#10206
mysql-test/t/variables.test:
Testcase for BUG#10206
sql/mysql_priv.h:
change the extern declaration of max_binlog_cache_size to ulonglong
sql/mysqld.cc:
change the declaration of max_binlog_cache_size to ulonglong and the option is fixed to extend the range of max_binlog_cache_size
sql/set_var.cc:
change the variable declaration of max_binlog_cache_size to ulonglong
Diffstat (limited to 'sql/mysql_priv.h')
-rw-r--r-- | sql/mysql_priv.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/mysql_priv.h b/sql/mysql_priv.h index 69a789284b0..0e5956847ed 100644 --- a/sql/mysql_priv.h +++ b/sql/mysql_priv.h @@ -1935,7 +1935,8 @@ extern uint max_user_connections; extern ulong what_to_log,flush_time; extern ulong query_buff_size; extern ulong max_prepared_stmt_count, prepared_stmt_count; -extern ulong binlog_cache_size, max_binlog_cache_size, open_files_limit; +extern ulong binlog_cache_size, open_files_limit; +extern ulonglong max_binlog_cache_size; extern ulong max_binlog_size, max_relay_log_size; extern ulong opt_binlog_rows_event_max_size; extern ulong rpl_recovery_rank, thread_cache_size, thread_pool_size; |