List:Commits« Previous MessageNext Message »
From:Vinay Fisrekar Date:August 10 2011 10:54am
Subject:bzr commit into mysql-trunk branch (vinay.fisrekar:3353)
View as plain text  
#At file:///home/vinayf/repo/branches/mysql-trunk/ based on revid:marko.makela@stripped

 3353 Vinay Fisrekar	2011-08-10 [merge]
      Committing again (after branch diversion error) the Change On behalf Of Sneha Modi
      
      Merge 5.5 -> trunk 

    added:
      mysql-test/suite/sys_vars/r/innodb_file_format_max_basic.result
      mysql-test/suite/sys_vars/r/innodb_rollback_segments_basic.result
      mysql-test/suite/sys_vars/r/innodb_stats_method_basic.result
      mysql-test/suite/sys_vars/t/innodb_file_format_max_basic.test
      mysql-test/suite/sys_vars/t/innodb_rollback_segments_basic.test
      mysql-test/suite/sys_vars/t/innodb_stats_method_basic.test
    modified:
      mysql-test/suite/sys_vars/r/all_vars.result
      mysql-test/suite/sys_vars/r/innodb_file_format_check_basic.result
      mysql-test/suite/sys_vars/t/innodb_file_format_check_basic.test
=== modified file 'mysql-test/suite/sys_vars/r/all_vars.result'
--- a/mysql-test/suite/sys_vars/r/all_vars.result	2011-07-26 04:05:46 +0000
+++ b/mysql-test/suite/sys_vars/r/all_vars.result	2011-08-10 10:53:57 +0000
@@ -14,8 +14,6 @@ left join t1 on variable_name=test_name 
 There should be *no* variables listed below:
 INNODB_ANALYZE_IS_PERSISTENT
 INNODB_ANALYZE_IS_PERSISTENT
-INNODB_FILE_FORMAT_MAX
-INNODB_FILE_FORMAT_MAX
 INNODB_LARGE_PREFIX
 INNODB_LARGE_PREFIX
 INNODB_MONITOR_DISABLE
@@ -28,10 +26,6 @@ INNODB_MONITOR_RESET_ALL
 INNODB_MONITOR_RESET_ALL
 INNODB_PRINT_ALL_DEADLOCKS
 INNODB_PRINT_ALL_DEADLOCKS
-INNODB_ROLLBACK_SEGMENTS
-INNODB_ROLLBACK_SEGMENTS
-INNODB_STATS_METHOD
-INNODB_STATS_METHOD
 INNODB_STATS_PERSISTENT_SAMPLE_PAGES
 INNODB_STATS_PERSISTENT_SAMPLE_PAGES
 INNODB_STATS_TRANSIENT_SAMPLE_PAGES

=== modified file 'mysql-test/suite/sys_vars/r/innodb_file_format_check_basic.result'
--- a/mysql-test/suite/sys_vars/r/innodb_file_format_check_basic.result	2010-06-17 09:13:53 +0000
+++ b/mysql-test/suite/sys_vars/r/innodb_file_format_check_basic.result	2011-08-08 11:31:09 +0000
@@ -1,59 +1,80 @@
-SET @start_global_value = @@global.innodb_file_format_max;
+SET @start_global_value = @@global.innodb_file_format_check;
 SELECT @start_global_value;
 @start_global_value
-Antelope
-Valid values are 'Antelope' and 'Barracuda' 
-select @@global.innodb_file_format_max in ('Antelope', 'Barracuda');
-@@global.innodb_file_format_max in ('Antelope', 'Barracuda')
-1
-select @@global.innodb_file_format_max;
-@@global.innodb_file_format_max
-Antelope
-select @@session.innodb_file_format_max;
-ERROR HY000: Variable 'innodb_file_format_max' is a GLOBAL variable
-show global variables like 'innodb_file_format_max';
+1
+Valid values are 'ON' and 'OFF'
+SELECT @@global.innodb_file_format_check in (0, 1);
+@@global.innodb_file_format_check in (0, 1)
+1
+SELECT @@global.innodb_file_format_check;
+@@global.innodb_file_format_check
+1
+SELECT @@session.innodb_file_format_check;
+ERROR HY000: Variable 'innodb_file_format_check' is a GLOBAL variable
+SHOW global variables LIKE 'innodb_file_format_check';
 Variable_name	Value
-innodb_file_format_max	Antelope
-show session variables like 'innodb_file_format_max';
+innodb_file_format_check	ON
+SHOW session variables LIKE 'innodb_file_format_check';
 Variable_name	Value
-innodb_file_format_max	Antelope
-select * from information_schema.global_variables where variable_name='innodb_file_format_max';
-VARIABLE_NAME	VARIABLE_VALUE
-INNODB_FILE_FORMAT_MAX	Antelope
-select * from information_schema.session_variables where variable_name='innodb_file_format_max';
-VARIABLE_NAME	VARIABLE_VALUE
-INNODB_FILE_FORMAT_MAX	Antelope
-set global innodb_file_format_max='Antelope';
-select @@global.innodb_file_format_max;
-@@global.innodb_file_format_max
-Antelope
-select * from information_schema.global_variables where variable_name='innodb_file_format_max';
-VARIABLE_NAME	VARIABLE_VALUE
-INNODB_FILE_FORMAT_MAX	Antelope
-select * from information_schema.session_variables where variable_name='innodb_file_format_max';
-VARIABLE_NAME	VARIABLE_VALUE
-INNODB_FILE_FORMAT_MAX	Antelope
-set @@global.innodb_file_format_max='Barracuda';
-select @@global.innodb_file_format_max;
-@@global.innodb_file_format_max
-Barracuda
-select * from information_schema.global_variables where variable_name='innodb_file_format_max';
-VARIABLE_NAME	VARIABLE_VALUE
-INNODB_FILE_FORMAT_MAX	Barracuda
-select * from information_schema.session_variables where variable_name='innodb_file_format_max';
-VARIABLE_NAME	VARIABLE_VALUE
-INNODB_FILE_FORMAT_MAX	Barracuda
-set session innodb_file_format_max='Salmon';
-ERROR HY000: Variable 'innodb_file_format_max' is a GLOBAL variable and should be set with SET GLOBAL
-set @@session.innodb_file_format_max='Salmon';
-ERROR HY000: Variable 'innodb_file_format_max' is a GLOBAL variable and should be set with SET GLOBAL
-set global innodb_file_format_max=1.1;
-ERROR 42000: Incorrect argument type to variable 'innodb_file_format_max'
-set global innodb_file_format_max=1e1;
-ERROR 42000: Incorrect argument type to variable 'innodb_file_format_max'
-set global innodb_file_format_max='Salmon';
-ERROR 42000: Variable 'innodb_file_format_max' can't be set to the value of 'Salmon'
-SET @@global.innodb_file_format_max = @start_global_value;
-SELECT @@global.innodb_file_format_max;
-@@global.innodb_file_format_max
-Antelope
+innodb_file_format_check	ON
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_file_format_check';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_FILE_FORMAT_CHECK	ON
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_file_format_check';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_FILE_FORMAT_CHECK	ON
+SET @@global.innodb_file_format_check='Off';
+ERROR HY000: Variable 'innodb_file_format_check' is a read only variable
+Expected error 'Read only variable'
+SET @@global.innodb_file_format_check=1;
+ERROR HY000: Variable 'innodb_file_format_check' is a read only variable
+Expected error 'Read only variable'
+SET @@global.innodb_file_format_check=0;
+ERROR HY000: Variable 'innodb_file_format_check' is a read only variable
+Expected error 'Read only variable'
+SET @@global.innodb_file_format_check='On';
+ERROR HY000: Variable 'innodb_file_format_check' is a read only variable
+Expected error 'Read only variable'
+SET session innodb_large_prefix='OFF';
+ERROR HY000: Variable 'innodb_large_prefix' is a GLOBAL variable and should be set with SET GLOBAL
+SET @@session.innodb_stats_on_metadata='ON';
+ERROR HY000: Variable 'innodb_stats_on_metadata' is a GLOBAL variable and should be set with SET GLOBAL
+SELECT IF(@@GLOBAL.innodb_file_format_check, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='innodb_file_format_check';
+IF(@@GLOBAL.innodb_file_format_check, "ON", "OFF") = VARIABLE_VALUE
+1
+1 Expected
+SELECT COUNT(@@GLOBAL.innodb_file_format_check);
+COUNT(@@GLOBAL.innodb_file_format_check)
+1
+1 Expected
+SELECT COUNT(VARIABLE_VALUE)
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='innodb_file_format_check';
+COUNT(VARIABLE_VALUE)
+1
+1 Expected
+SELECT @@innodb_file_format_check = @@GLOBAL.innodb_file_format_check;
+@@innodb_file_format_check = @@GLOBAL.innodb_file_format_check
+1
+1 Expected
+SELECT COUNT(@@innodb_file_format_check);
+COUNT(@@innodb_file_format_check)
+1
+1 Expected
+SELECT COUNT(@@local.innodb_file_format_check);
+ERROR HY000: Variable 'innodb_file_format_check' is a GLOBAL variable
+Expected error 'Variable is a GLOBAL variable'
+SELECT COUNT(@@SESSION.innodb_file_format_check);
+ERROR HY000: Variable 'innodb_file_format_check' is a GLOBAL variable
+Expected error 'Variable is a GLOBAL variable'
+SELECT COUNT(@@GLOBAL.innodb_file_format_check);
+COUNT(@@GLOBAL.innodb_file_format_check)
+1
+1 Expected
+SELECT innodb_file_format_check = @@SESSION.innodb_file_format_check;
+ERROR 42S22: Unknown column 'innodb_file_format_check' in 'field list'
+Expected error 'Readonly variable'

=== added file 'mysql-test/suite/sys_vars/r/innodb_file_format_max_basic.result'
--- a/mysql-test/suite/sys_vars/r/innodb_file_format_max_basic.result	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/sys_vars/r/innodb_file_format_max_basic.result	2011-08-08 11:31:09 +0000
@@ -0,0 +1,65 @@
+SET @start_global_value = @@global.innodb_file_format_max;
+SELECT @start_global_value;
+@start_global_value
+Antelope
+Valid values are 'Antelope' and 'Barracuda' 
+SELECT @@global.innodb_file_format_max in ('Antelope', 'Barracuda');
+@@global.innodb_file_format_max in ('Antelope', 'Barracuda')
+1
+SELECT @@global.innodb_file_format_max;
+@@global.innodb_file_format_max
+Antelope
+SELECT @@session.innodb_file_format_max;
+ERROR HY000: Variable 'innodb_file_format_max' is a GLOBAL variable
+SHOW global variables LIKE 'innodb_file_format_max';
+Variable_name	Value
+innodb_file_format_max	Antelope
+SHOW session variables LIKE 'innodb_file_format_max';
+Variable_name	Value
+innodb_file_format_max	Antelope
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_file_format_max';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_FILE_FORMAT_MAX	Antelope
+SELECT * FROM information_schema.session_variables
+WHERE variable_name='innodb_file_format_max';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_FILE_FORMAT_MAX	Antelope
+SET global innodb_file_format_max='Antelope';
+SELECT @@global.innodb_file_format_max;
+@@global.innodb_file_format_max
+Antelope
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_file_format_max';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_FILE_FORMAT_MAX	Antelope
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_file_format_max';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_FILE_FORMAT_MAX	Antelope
+SET @@global.innodb_file_format_max='Barracuda';
+SELECT @@global.innodb_file_format_max;
+@@global.innodb_file_format_max
+Barracuda
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_file_format_max';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_FILE_FORMAT_MAX	Barracuda
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_file_format_max';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_FILE_FORMAT_MAX	Barracuda
+SET session innodb_file_format_max='Salmon';
+ERROR HY000: Variable 'innodb_file_format_max' is a GLOBAL variable and should be set with SET GLOBAL
+SET @@session.innodb_file_format_max='Salmon';
+ERROR HY000: Variable 'innodb_file_format_max' is a GLOBAL variable and should be set with SET GLOBAL
+SET global innodb_file_format_max=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_file_format_max'
+SET global innodb_file_format_max=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_file_format_max'
+SET global innodb_file_format_max='Salmon';
+ERROR 42000: Variable 'innodb_file_format_max' can't be set to the value of 'Salmon'
+SET @@global.innodb_file_format_max = @start_global_value;
+SELECT @@global.innodb_file_format_max;
+@@global.innodb_file_format_max
+Antelope

=== added file 'mysql-test/suite/sys_vars/r/innodb_rollback_segments_basic.result'
--- a/mysql-test/suite/sys_vars/r/innodb_rollback_segments_basic.result	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/sys_vars/r/innodb_rollback_segments_basic.result	2011-08-08 11:31:09 +0000
@@ -0,0 +1,64 @@
+SET @start_global_value = @@global.innodb_rollback_segments;
+SELECT @start_global_value;
+@start_global_value
+128
+Valid values are zero or above
+SELECT @@global.innodb_rollback_segments >=0;
+@@global.innodb_rollback_segments >=0
+1
+SELECT @@global.innodb_rollback_segments <=128;
+@@global.innodb_rollback_segments <=128
+1
+SELECT @@global.innodb_rollback_segments;
+@@global.innodb_rollback_segments
+128
+SELECT @@session.innodb_rollback_segments;
+ERROR HY000: Variable 'innodb_rollback_segments' is a GLOBAL variable
+SHOW global variables LIKE 'innodb_rollback_segments';
+Variable_name	Value
+innodb_rollback_segments	128
+SHOW session variables LIKE 'innodb_rollback_segments';
+Variable_name	Value
+innodb_rollback_segments	128
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_rollback_segments';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_ROLLBACK_SEGMENTS	128
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_rollback_segments';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_ROLLBACK_SEGMENTS	128
+SET global innodb_rollback_segments=100;
+SELECT @@global.innodb_rollback_segments;
+@@global.innodb_rollback_segments
+100
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_rollback_segments';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_ROLLBACK_SEGMENTS	100
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_rollback_segments';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_ROLLBACK_SEGMENTS	100
+SET session innodb_rollback_segments=1;
+ERROR HY000: Variable 'innodb_rollback_segments' is a GLOBAL variable and should be set with SET GLOBAL
+SET global innodb_rollback_segments=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_rollback_segments'
+SET global innodb_rollback_segments=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_rollback_segments'
+SET global innodb_rollback_segments="foo";
+ERROR 42000: Incorrect argument type to variable 'innodb_rollback_segments'
+SET global innodb_rollback_segments=-7;
+Warnings:
+Warning	1292	Truncated incorrect innodb_rollback_segments value: '-7'
+SELECT @@global.innodb_rollback_segments;
+@@global.innodb_rollback_segments
+1
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_rollback_segments';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_ROLLBACK_SEGMENTS	1
+SET @@global.innodb_rollback_segments = @start_global_value;
+SELECT @@global.innodb_rollback_segments;
+@@global.innodb_rollback_segments
+128

=== added file 'mysql-test/suite/sys_vars/r/innodb_stats_method_basic.result'
--- a/mysql-test/suite/sys_vars/r/innodb_stats_method_basic.result	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/sys_vars/r/innodb_stats_method_basic.result	2011-08-08 11:31:09 +0000
@@ -0,0 +1,83 @@
+SET @start_global_value = @@global.innodb_stats_method;
+SELECT @start_global_value;
+@start_global_value
+nulls_equal
+Valid values are 'nulls_equal', 'nulls_unequal', 'nulls_ignored'
+SELECT @@global.innodb_stats_method in ('nulls_equal', 'nulls_unequal', 
+'nulls_ignored');
+@@global.innodb_stats_method in ('nulls_equal', 'nulls_unequal', 
+'nulls_ignored')
+1
+SELECT @@global.innodb_stats_method;
+@@global.innodb_stats_method
+nulls_equal
+SELECT @@session.innodb_stats_method;
+ERROR HY000: Variable 'innodb_stats_method' is a GLOBAL variable
+SHOW global variables LIKE 'innodb_stats_method';
+Variable_name	Value
+innodb_stats_method	nulls_equal
+SHOW session variables LIKE 'innodb_stats_method';
+Variable_name	Value
+innodb_stats_method	nulls_equal
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_stats_method';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_STATS_METHOD	nulls_equal
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_stats_method';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_STATS_METHOD	nulls_equal
+SET global innodb_stats_method='nulls_equal';
+SELECT @@global.innodb_stats_method;
+@@global.innodb_stats_method
+nulls_equal
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_stats_method';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_STATS_METHOD	nulls_equal
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_stats_method';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_STATS_METHOD	nulls_equal
+SET @@global.innodb_stats_method='nulls_unequal';
+SELECT @@global.innodb_stats_method;
+@@global.innodb_stats_method
+nulls_unequal
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_stats_method';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_STATS_METHOD	nulls_unequal
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_stats_method';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_STATS_METHOD	nulls_unequal
+SET global innodb_stats_method=2;
+SELECT @@global.innodb_stats_method;
+@@global.innodb_stats_method
+nulls_ignored
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_stats_method';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_STATS_METHOD	nulls_ignored
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_stats_method';
+VARIABLE_NAME	VARIABLE_VALUE
+INNODB_STATS_METHOD	nulls_ignored
+SET session innodb_stats_method='nulls_equal';
+ERROR HY000: Variable 'innodb_stats_method' is a GLOBAL variable and should be set with SET GLOBAL
+SET @@session.innodb_stats_method='nulls_ignored';
+ERROR HY000: Variable 'innodb_stats_method' is a GLOBAL variable and should be set with SET GLOBAL
+SET global innodb_stats_method=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_stats_method'
+SET global innodb_stats_method=4;
+ERROR 42000: Variable 'innodb_stats_method' can't be set to the value of '4'
+SET global innodb_stats_method=-2;
+ERROR 42000: Variable 'innodb_stats_method' can't be set to the value of '-2'
+SET global innodb_stats_method=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_stats_method'
+SET global innodb_stats_method='some';
+ERROR 42000: Variable 'innodb_stats_method' can't be set to the value of 'some'
+SET @@global.innodb_stats_method = @start_global_value;
+SELECT @@global.innodb_stats_method;
+@@global.innodb_stats_method
+nulls_equal

=== modified file 'mysql-test/suite/sys_vars/t/innodb_file_format_check_basic.test'
--- a/mysql-test/suite/sys_vars/t/innodb_file_format_check_basic.test	2010-06-17 20:51:35 +0000
+++ b/mysql-test/suite/sys_vars/t/innodb_file_format_check_basic.test	2011-08-08 11:31:09 +0000
@@ -1,55 +1,95 @@
-
-
-# 2010-01-25 - Added
 #
+# 2011-08-02 - Added
+#
+
 --source include/not_embedded.inc
 --source include/have_innodb.inc
 
-SET @start_global_value = @@global.innodb_file_format_max;
+SET @start_global_value = @@global.innodb_file_format_check;
 SELECT @start_global_value;
 
 #
 # exists as global only
 #
---echo Valid values are 'Antelope' and 'Barracuda' 
-select @@global.innodb_file_format_max in ('Antelope', 'Barracuda');
-select @@global.innodb_file_format_max;
+--echo  Valid values are 'ON' and 'OFF'
+SELECT @@global.innodb_file_format_check in (0, 1);
+SELECT @@global.innodb_file_format_check;
+
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SELECT @@session.innodb_file_format_check;
+SHOW global variables LIKE 'innodb_file_format_check';
+SHOW session variables LIKE 'innodb_file_format_check';
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_file_format_check';
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_file_format_check';
+
+#
+# show that it's read only
+#
+
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SET @@global.innodb_file_format_check='Off';
+--echo Expected error 'Read only variable'
+
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SET @@global.innodb_file_format_check=1; 
+--echo Expected error 'Read only variable'
+
 --error ER_INCORRECT_GLOBAL_LOCAL_VAR
-select @@session.innodb_file_format_max;
-show global variables like 'innodb_file_format_max';
-show session variables like 'innodb_file_format_max';
-select * from information_schema.global_variables where variable_name='innodb_file_format_max';
-select * from information_schema.session_variables where variable_name='innodb_file_format_max';
-
-#
-# show that it's writable
-#
-set global innodb_file_format_max='Antelope';
-select @@global.innodb_file_format_max;
-select * from information_schema.global_variables where variable_name='innodb_file_format_max';
-select * from information_schema.session_variables where variable_name='innodb_file_format_max';
-set @@global.innodb_file_format_max='Barracuda';
-select @@global.innodb_file_format_max;
-select * from information_schema.global_variables where variable_name='innodb_file_format_max';
-select * from information_schema.session_variables where variable_name='innodb_file_format_max';
+SET @@global.innodb_file_format_check=0;
+--echo Expected error 'Read only variable'
+
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SET @@global.innodb_file_format_check='On';
+--echo Expected error 'Read only variable'
+
 --error ER_GLOBAL_VARIABLE
-set session innodb_file_format_max='Salmon';
+SET session innodb_large_prefix='OFF';
 --error ER_GLOBAL_VARIABLE
-set @@session.innodb_file_format_max='Salmon';
+SET @@session.innodb_stats_on_metadata='ON';
 
 #
-# incorrect types
+# Check if the value in GLOBAL Table matches value in variable 
 #
---error ER_WRONG_TYPE_FOR_VAR
-set global innodb_file_format_max=1.1;
---error ER_WRONG_TYPE_FOR_VAR
-set global innodb_file_format_max=1e1;
---error ER_WRONG_VALUE_FOR_VAR
-set global innodb_file_format_max='Salmon';
+
+SELECT IF(@@GLOBAL.innodb_file_format_check, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='innodb_file_format_check';
+--echo 1 Expected
+
+SELECT COUNT(@@GLOBAL.innodb_file_format_check);
+--echo 1 Expected
+
+SELECT COUNT(VARIABLE_VALUE)
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='innodb_file_format_check';
+--echo 1 Expected
 
 #
-# Cleanup
+# Check if accessing variable with and without GLOBAL point to same variable
 #
+SELECT @@innodb_file_format_check = @@GLOBAL.innodb_file_format_check;
+--echo 1 Expected
+
+#
+# Check if innodb_doublewrite can be accessed with and without @@ sign 
+#
+
+SELECT COUNT(@@innodb_file_format_check);
+--echo 1 Expected
+
+--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SELECT COUNT(@@local.innodb_file_format_check);
+--echo Expected error 'Variable is a GLOBAL variable'
+
+--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SELECT COUNT(@@SESSION.innodb_file_format_check);
+--echo Expected error 'Variable is a GLOBAL variable'
+
+SELECT COUNT(@@GLOBAL.innodb_file_format_check);
+--echo 1 Expected
 
-SET @@global.innodb_file_format_max = @start_global_value;
-SELECT @@global.innodb_file_format_max;
+--Error ER_BAD_FIELD_ERROR
+SELECT innodb_file_format_check = @@SESSION.innodb_file_format_check;
+--echo Expected error 'Readonly variable'

=== added file 'mysql-test/suite/sys_vars/t/innodb_file_format_max_basic.test'
--- a/mysql-test/suite/sys_vars/t/innodb_file_format_max_basic.test	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/sys_vars/t/innodb_file_format_max_basic.test	2011-08-08 11:31:09 +0000
@@ -0,0 +1,60 @@
+#
+# 2011-08-02 - Added
+#
+--source include/not_embedded.inc
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_file_format_max;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are 'Antelope' and 'Barracuda' 
+SELECT @@global.innodb_file_format_max in ('Antelope', 'Barracuda');
+SELECT @@global.innodb_file_format_max;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SELECT @@session.innodb_file_format_max;
+SHOW global variables LIKE 'innodb_file_format_max';
+SHOW session variables LIKE 'innodb_file_format_max';
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_file_format_max';
+SELECT * FROM information_schema.session_variables
+WHERE variable_name='innodb_file_format_max';
+
+#
+# show that it's writable
+#
+SET global innodb_file_format_max='Antelope';
+SELECT @@global.innodb_file_format_max;
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_file_format_max';
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_file_format_max';
+SET @@global.innodb_file_format_max='Barracuda';
+SELECT @@global.innodb_file_format_max;
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_file_format_max';
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_file_format_max';
+--error ER_GLOBAL_VARIABLE
+SET session innodb_file_format_max='Salmon';
+--error ER_GLOBAL_VARIABLE
+SET @@session.innodb_file_format_max='Salmon';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+SET global innodb_file_format_max=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+SET global innodb_file_format_max=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+SET global innodb_file_format_max='Salmon';
+
+#
+# Cleanup
+#
+
+SET @@global.innodb_file_format_max = @start_global_value;
+SELECT @@global.innodb_file_format_max;

=== added file 'mysql-test/suite/sys_vars/t/innodb_rollback_segments_basic.test'
--- a/mysql-test/suite/sys_vars/t/innodb_rollback_segments_basic.test	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/sys_vars/t/innodb_rollback_segments_basic.test	2011-08-08 11:31:09 +0000
@@ -0,0 +1,58 @@
+#
+#  2011-08-01  Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_rollback_segments;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are zero or above
+SELECT @@global.innodb_rollback_segments >=0;
+SELECT @@global.innodb_rollback_segments <=128;
+SELECT @@global.innodb_rollback_segments;
+
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SELECT @@session.innodb_rollback_segments;
+SHOW global variables LIKE 'innodb_rollback_segments';
+SHOW session variables LIKE 'innodb_rollback_segments';
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_rollback_segments';
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_rollback_segments';
+
+#
+# show that it's writable
+#
+SET global innodb_rollback_segments=100;
+SELECT @@global.innodb_rollback_segments;
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_rollback_segments';
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_rollback_segments';
+--error ER_GLOBAL_VARIABLE
+SET session innodb_rollback_segments=1;
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+SET global innodb_rollback_segments=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+SET global innodb_rollback_segments=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+SET global innodb_rollback_segments="foo";
+SET global innodb_rollback_segments=-7;
+SELECT @@global.innodb_rollback_segments;
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_rollback_segments';
+
+#
+# cleanup
+#
+
+SET @@global.innodb_rollback_segments = @start_global_value;
+SELECT @@global.innodb_rollback_segments;

=== added file 'mysql-test/suite/sys_vars/t/innodb_stats_method_basic.test'
--- a/mysql-test/suite/sys_vars/t/innodb_stats_method_basic.test	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/sys_vars/t/innodb_stats_method_basic.test	2011-08-08 11:31:09 +0000
@@ -0,0 +1,72 @@
+#
+# 2011-08-05 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_stats_method;
+SELECT @start_global_value;
+
+#
+# exists as global only 
+#
+--echo Valid values are 'nulls_equal', 'nulls_unequal', 'nulls_ignored'
+SELECT @@global.innodb_stats_method in ('nulls_equal', 'nulls_unequal', 
+'nulls_ignored');
+SELECT @@global.innodb_stats_method;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SELECT @@session.innodb_stats_method;
+SHOW global variables LIKE 'innodb_stats_method';
+SHOW session variables LIKE 'innodb_stats_method';
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_stats_method';
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_stats_method';
+
+#
+# show that it's writable
+#
+SET global innodb_stats_method='nulls_equal';
+SELECT @@global.innodb_stats_method;
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_stats_method';
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_stats_method';
+SET @@global.innodb_stats_method='nulls_unequal';
+SELECT @@global.innodb_stats_method;
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_stats_method';
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_stats_method';
+SET global innodb_stats_method=2;
+SELECT @@global.innodb_stats_method;
+SELECT * FROM information_schema.global_variables 
+WHERE variable_name='innodb_stats_method';
+SELECT * FROM information_schema.session_variables 
+WHERE variable_name='innodb_stats_method';
+
+--error ER_GLOBAL_VARIABLE
+SET session innodb_stats_method='nulls_equal';
+--error ER_GLOBAL_VARIABLE
+SET @@session.innodb_stats_method='nulls_ignored';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+SET global innodb_stats_method=1.1;
+--error ER_WRONG_VALUE_FOR_VAR
+SET global innodb_stats_method=4;
+--error ER_WRONG_VALUE_FOR_VAR
+SET global innodb_stats_method=-2;
+--error ER_WRONG_TYPE_FOR_VAR
+SET global innodb_stats_method=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+SET global innodb_stats_method='some';
+
+#
+# Cleanup
+#
+
+SET @@global.innodb_stats_method = @start_global_value;
+SELECT @@global.innodb_stats_method;

No bundle (reason: revision is a merge (you can force generation of a bundle with env var BZR_FORCE_BUNDLE=1)).
Thread
bzr commit into mysql-trunk branch (vinay.fisrekar:3353) Vinay Fisrekar10 Aug