2000-12-28 02:56:38 +01:00
|
|
|
#
|
|
|
|
# test variables
|
|
|
|
#
|
2003-01-06 00:48:59 +01:00
|
|
|
--disable_warnings
|
|
|
|
drop table if exists t1,t2;
|
|
|
|
--enable_warnings
|
|
|
|
|
2006-05-08 14:59:29 +02:00
|
|
|
#
|
2009-02-02 23:30:02 +01:00
|
|
|
# Bug#19263: variables.test doesn't clean up after itself (I/II -- save)
|
2006-05-08 14:59:29 +02:00
|
|
|
#
|
|
|
|
set @my_binlog_cache_size =@@global.binlog_cache_size;
|
|
|
|
set @my_connect_timeout =@@global.connect_timeout;
|
|
|
|
set @my_delayed_insert_timeout =@@global.delayed_insert_timeout;
|
|
|
|
set @my_delayed_queue_size =@@global.delayed_queue_size;
|
|
|
|
set @my_flush =@@global.flush;
|
|
|
|
set @my_flush_time =@@global.flush_time;
|
|
|
|
set @my_key_buffer_size =@@global.key_buffer_size;
|
|
|
|
set @my_max_binlog_cache_size =@@global.max_binlog_cache_size;
|
|
|
|
set @my_max_binlog_size =@@global.max_binlog_size;
|
|
|
|
set @my_max_connect_errors =@@global.max_connect_errors;
|
2007-03-01 14:16:38 +01:00
|
|
|
set @my_max_connections =@@global.max_connections;
|
2006-05-08 14:59:29 +02:00
|
|
|
set @my_max_delayed_threads =@@global.max_delayed_threads;
|
|
|
|
set @my_max_heap_table_size =@@global.max_heap_table_size;
|
|
|
|
set @my_max_insert_delayed_threads=@@global.max_insert_delayed_threads;
|
|
|
|
set @my_max_join_size =@@global.max_join_size;
|
|
|
|
set @my_myisam_data_pointer_size =@@global.myisam_data_pointer_size;
|
2008-09-10 12:50:39 +02:00
|
|
|
set @my_myisam_max_sort_file_size =@@global.myisam_max_sort_file_size;
|
2006-05-08 14:59:29 +02:00
|
|
|
set @my_net_buffer_length =@@global.net_buffer_length;
|
|
|
|
set @my_net_write_timeout =@@global.net_write_timeout;
|
|
|
|
set @my_net_read_timeout =@@global.net_read_timeout;
|
|
|
|
set @my_rpl_recovery_rank =@@global.rpl_recovery_rank;
|
|
|
|
set @my_server_id =@@global.server_id;
|
|
|
|
set @my_slow_launch_time =@@global.slow_launch_time;
|
|
|
|
set @my_storage_engine =@@global.storage_engine;
|
|
|
|
set @my_thread_cache_size =@@global.thread_cache_size;
|
2009-01-30 14:44:49 +01:00
|
|
|
set @my_max_allowed_packet =@@global.max_allowed_packet;
|
2009-02-19 10:01:25 +01:00
|
|
|
set @my_delay_key_write =@@global.delay_key_write;
|
2009-03-16 16:11:45 +01:00
|
|
|
set @my_join_buffer_size =@@global.join_buffer_size;
|
2003-05-12 15:36:31 +02:00
|
|
|
# case insensitivity tests (new in 5.0)
|
|
|
|
set @`test`=1;
|
|
|
|
select @test, @`test`, @TEST, @`TEST`, @"teSt";
|
|
|
|
set @TEST=2;
|
|
|
|
select @test, @`test`, @TEST, @`TEST`, @"teSt";
|
|
|
|
set @"tEST"=3;
|
|
|
|
select @test, @`test`, @TEST, @`TEST`, @"teSt";
|
|
|
|
set @`TeST`=4;
|
|
|
|
select @test, @`test`, @TEST, @`TEST`, @"teSt";
|
|
|
|
select @`teST`:=5;
|
|
|
|
select @test, @`test`, @TEST, @`TEST`, @"teSt";
|
|
|
|
|
|
|
|
set @select=2,@t5=1.23456;
|
|
|
|
select @`select`,@not_used;
|
2000-12-28 02:56:38 +01:00
|
|
|
set @test_int=10,@test_double=1e-10,@test_string="abcdeghi",@test_string2="abcdefghij",@select=NULL;
|
2006-03-22 16:47:45 +01:00
|
|
|
# Expected result "1e-10", windows returns "1e-010"
|
|
|
|
--replace_result 1e-010 1e-10
|
2000-12-28 02:56:38 +01:00
|
|
|
select @test_int,@test_double,@test_string,@test_string2,@select;
|
|
|
|
set @test_int="hello",@test_double="hello",@test_string="hello",@test_string2="hello";
|
|
|
|
select @test_int,@test_double,@test_string,@test_string2;
|
|
|
|
set @test_int="hellohello",@test_double="hellohello",@test_string="hellohello",@test_string2="hellohello";
|
|
|
|
select @test_int,@test_double,@test_string,@test_string2;
|
|
|
|
set @test_int=null,@test_double=null,@test_string=null,@test_string2=null;
|
|
|
|
select @test_int,@test_double,@test_string,@test_string2;
|
|
|
|
select @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;
|
2003-10-30 11:57:26 +01:00
|
|
|
explain extended select @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;
|
2001-06-11 14:01:28 +02:00
|
|
|
select @t5;
|
|
|
|
|
2001-12-27 01:04:27 +01:00
|
|
|
#
|
|
|
|
# Test problem with WHERE and variables
|
|
|
|
#
|
|
|
|
|
|
|
|
CREATE TABLE t1 (c_id INT(4) NOT NULL, c_name CHAR(20), c_country CHAR(3), PRIMARY KEY(c_id));
|
|
|
|
INSERT INTO t1 VALUES (1,'Bozo','USA'),(2,'Ronald','USA'),(3,'Kinko','IRE'),(4,'Mr. Floppy','GB');
|
|
|
|
SELECT @min_cid:=min(c_id), @max_cid:=max(c_id) from t1;
|
|
|
|
SELECT * FROM t1 WHERE c_id=@min_cid OR c_id=@max_cid;
|
|
|
|
SELECT * FROM t1 WHERE c_id=@min_cid OR c_id=@max_cid OR c_id=666;
|
|
|
|
ALTER TABLE t1 DROP PRIMARY KEY;
|
|
|
|
select * from t1 where c_id=@min_cid OR c_id=@max_cid;
|
|
|
|
drop table t1;
|
2002-04-18 17:24:14 +02:00
|
|
|
|
|
|
|
#
|
|
|
|
# Test system variables
|
|
|
|
#
|
Add new option "check-testcases" to mysql-test-run.pl
Cleanup the sideeffects from most of the testcases with sideeffects.
mysql-test/mysql-test-run.pl:
Add option "check-testcases" to mysql-test-run.pl
Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result"
After the teastcase it will run again and this time compare the output with previously recorded file.
mysql-test/r/analyze.result:
Drop table t1 at end of test
mysql-test/r/create_select_tmp.result:
Drop table t1 at end of test
mysql-test/r/ctype_cp932.result:
Drop table t1 at end of test
mysql-test/r/ctype_recoding.result:
Drop table t1 at end of test
mysql-test/r/grant2.result:
Drop user mysqltest_2 and mysqltest_A@'%'
mysql-test/r/join_outer.result:
Drop view v1 to cleanup
mysql-test/r/ps_1general.result:
Drop table t1 at end of test
mysql-test/r/query_cache.result:
Drop function "f1"
mysql-test/r/read_only.result:
Reset the "read_only" flag
mysql-test/r/rpl000001.result:
Remove user "blafasel2"
mysql-test/r/rpl000017.result:
Remove user "replicate"
mysql-test/r/rpl_failed_optimize.result:
Drop table t1 to cleanup
mysql-test/r/rpl_flush_tables.result:
Drop tables t3, t4, t5
mysql-test/r/rpl_ignore_revoke.result:
Delete user "user_foo"
mysql-test/r/rpl_insert_id.result:
Drop table t1 to cleanup
mysql-test/r/rpl_loaddata.result:
Drop tyable t1 to cleanup
mysql-test/r/rpl_loaddata_rule_m.result:
Drop tyable t1 to cleanup
mysql-test/r/rpl_loaddata_rule_s.result:
Drop tyable t1 to cleanup
mysql-test/r/rpl_misc_functions.result:
Drop tyable t1 to cleanup
mysql-test/r/rpl_multi_update3.result:
Drop tyable t1 and t2 to cleanup
mysql-test/r/rpl_replicate_do.result:
Drop tyable t1 to cleanup
mysql-test/r/rpl_skip_error.result:
Drop tyable t1 to cleanup
mysql-test/r/rpl_slave_status.result:
Drop tyable t1 to cleanup
mysql-test/r/sp-prelocking.result:
Drop view v1 and tables t1, t2, t3 and t4 to cleanup
mysql-test/r/sp-security.result:
Delete users to cleanup
Delete remaining traces in tables_priv and procs_priv
mysql-test/r/subselect_innodb.result:
Drop procedure p1 to cleanup
mysql-test/r/trigger-compat.result:
Drop trigger wl2818_trg1 and wl2818_trg2.
Drop table t1, t2
Drop database mysqltest_db1
And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost"
mysql-test/r/type_bit.result:
Drop tables t1 and t2 to cleanup
mysql-test/r/variables.result:
Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt
mysql-test/r/view_grant.result:
Dop user "test@localhost" to cleanup
mysql-test/t/analyze.test:
Drop table t1 to cleanup
mysql-test/t/create_select_tmp.test:
Drop table t1 to cleanup
mysql-test/t/ctype_cp932.test:
Drop table t1 to cleanup
mysql-test/t/ctype_recoding.test:
Drop table t1 to cleanup
mysql-test/t/fulltext_var.test:
Restore the original ft_boolean_syntax
mysql-test/t/grant2.test:
Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup
mysql-test/t/innodb_cache.test:
Reset query_cache_size to original value
mysql-test/t/join_outer.test:
Drop view v1 to cleanup
mysql-test/t/ps_1general.test:
Drop table t1 to cleanup
mysql-test/t/query_cache.test:
Drop function "f1" to cleanup
mysql-test/t/read_only.test:
Reset the readonly flag
mysql-test/t/rpl000001.test:
Delete user "blafasel2" to cleanup
mysql-test/t/rpl000017.test:
Delete user "replicate" to cleanup
mysql-test/t/rpl_failed_optimize.test:
Drop table t1 to cleanup
mysql-test/t/rpl_flush_tables.test:
Droip table t3, t4 and t5 to cleanup
mysql-test/t/rpl_ignore_revoke.test:
Delet user "user_foo" to cleanup
mysql-test/t/rpl_insert_id.test:
drop table t1 to cleanup
mysql-test/t/rpl_loaddata.test:
Drop table t1 to cleanup
mysql-test/t/rpl_loaddata_rule_m.test:
Drop table t1 to cleanup
mysql-test/t/rpl_loaddata_rule_s.test:
Drop table t1 to cleanup
mysql-test/t/rpl_misc_functions.test:
Drop table t1 to cleanup
mysql-test/t/rpl_multi_update3.test:
Drop table t1 and t2 to cleanup
mysql-test/t/rpl_replicate_do.test:
Drop table t1 to cleanup
mysql-test/t/rpl_skip_error.test:
Drop table t1 to cleanup
mysql-test/t/rpl_slave_status.test:
Drop table t1 to cleanup
mysql-test/t/sp-prelocking.test:
Drop table t1, t2 t3 and t4 to cleanup
Drop view v1
mysql-test/t/sp-security.test:
Delete test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv
Drop table t1 to cleanup
mysql-test/t/subselect_innodb.test:
Drop procedure p1 to cleanup
mysql-test/t/trigger-compat.test:
Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup
Drop table t1, t2
Drop users
drop database mysqltest_db1
mysql-test/t/type_bit.test:
drop table t1 and t2 to cleanup
mysql-test/t/variables-master.opt:
Increase max_join_size to 100.
mysql-test/t/variables.test:
Set max_join_size to 10, which was the original value in variables-master.opt
mysql-test/t/view_grant.test:
Drop the user "test@localhost"
mysql-test/include/check-testcase.test:
New BitKeeper file ``mysql-test/include/check-testcase.test''
2006-01-26 17:54:34 +01:00
|
|
|
set GLOBAL max_join_size=10;
|
2002-07-23 17:31:22 +02:00
|
|
|
set max_join_size=100;
|
|
|
|
show variables like 'max_join_size';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'max_join_size';
|
2002-12-20 13:58:27 +01:00
|
|
|
--replace_result 18446744073709551615 HA_POS_ERROR 4294967295 HA_POS_ERROR
|
2002-07-23 17:31:22 +02:00
|
|
|
show global variables like 'max_join_size';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
--replace_result 18446744073709551615 HA_POS_ERROR 4294967295 HA_POS_ERROR
|
|
|
|
select * from information_schema.global_variables where variable_name like 'max_join_size';
|
2002-07-23 17:31:22 +02:00
|
|
|
set GLOBAL max_join_size=2000;
|
|
|
|
show global variables like 'max_join_size';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.global_variables where variable_name like 'max_join_size';
|
2002-07-23 17:31:22 +02:00
|
|
|
set max_join_size=DEFAULT;
|
2002-12-20 13:58:27 +01:00
|
|
|
--replace_result 18446744073709551615 HA_POS_ERROR 4294967295 HA_POS_ERROR
|
2002-07-23 17:31:22 +02:00
|
|
|
show variables like 'max_join_size';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
--replace_result 18446744073709551615 HA_POS_ERROR 4294967295 HA_POS_ERROR
|
|
|
|
select * from information_schema.session_variables where variable_name like 'max_join_size';
|
2002-07-23 17:31:22 +02:00
|
|
|
set GLOBAL max_join_size=DEFAULT;
|
2002-12-20 13:58:27 +01:00
|
|
|
--replace_result 18446744073709551615 HA_POS_ERROR 4294967295 HA_POS_ERROR
|
2002-07-23 17:31:22 +02:00
|
|
|
show global variables like 'max_join_size';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
--replace_result 18446744073709551615 HA_POS_ERROR 4294967295 HA_POS_ERROR
|
|
|
|
select * from information_schema.global_variables where variable_name like 'max_join_size';
|
2002-07-23 17:31:22 +02:00
|
|
|
set @@max_join_size=1000, @@global.max_join_size=2000;
|
|
|
|
select @@local.max_join_size, @@global.max_join_size;
|
|
|
|
select @@identity, length(@@version)>0;
|
2002-04-18 17:24:14 +02:00
|
|
|
select @@VERSION=version();
|
|
|
|
select last_insert_id(345);
|
2003-10-30 11:57:26 +01:00
|
|
|
explain extended select last_insert_id(345);
|
2002-07-23 17:31:22 +02:00
|
|
|
select @@IDENTITY,last_insert_id(), @@identity;
|
2003-10-30 11:57:26 +01:00
|
|
|
explain extended select @@IDENTITY,last_insert_id(), @@identity;
|
2002-07-23 17:31:22 +02:00
|
|
|
|
|
|
|
set big_tables=OFF, big_tables=ON, big_tables=0, big_tables=1, big_tables="OFF", big_tables="ON";
|
|
|
|
|
2005-05-13 11:08:08 +02:00
|
|
|
set global concurrent_insert=2;
|
2002-07-23 17:31:22 +02:00
|
|
|
show variables like 'concurrent_insert';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'concurrent_insert';
|
2002-07-23 17:31:22 +02:00
|
|
|
set global concurrent_insert=1;
|
|
|
|
show variables like 'concurrent_insert';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'concurrent_insert';
|
2002-07-23 17:31:22 +02:00
|
|
|
set global concurrent_insert=0;
|
|
|
|
show variables like 'concurrent_insert';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'concurrent_insert';
|
2002-07-23 17:31:22 +02:00
|
|
|
set global concurrent_insert=DEFAULT;
|
2005-05-13 11:08:08 +02:00
|
|
|
select @@concurrent_insert;
|
2002-07-23 17:31:22 +02:00
|
|
|
|
2005-05-13 11:08:08 +02:00
|
|
|
set global timed_mutexes=ON;
|
2004-12-24 12:13:32 +01:00
|
|
|
show variables like 'timed_mutexes';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'timed_mutexes';
|
2004-12-24 12:13:32 +01:00
|
|
|
set global timed_mutexes=0;
|
|
|
|
show variables like 'timed_mutexes';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'timed_mutexes';
|
2004-12-24 12:13:32 +01:00
|
|
|
|
2004-12-31 11:52:14 +01:00
|
|
|
set storage_engine=MYISAM, storage_engine="HEAP", global storage_engine="MERGE";
|
2003-12-17 23:52:03 +01:00
|
|
|
show local variables like 'storage_engine';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'storage_engine';
|
2003-12-17 23:52:03 +01:00
|
|
|
show global variables like 'storage_engine';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.global_variables where variable_name like 'storage_engine';
|
2002-07-23 17:31:22 +02:00
|
|
|
|
2003-05-13 18:34:51 +02:00
|
|
|
set GLOBAL myisam_max_sort_file_size=2000000;
|
2002-07-23 17:31:22 +02:00
|
|
|
show global variables like 'myisam_max_sort_file_size';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.global_variables where variable_name like 'myisam_max_sort_file_size';
|
2003-05-13 18:34:51 +02:00
|
|
|
set GLOBAL myisam_max_sort_file_size=default;
|
2007-12-03 10:01:56 +01:00
|
|
|
--replace_result 9223372036853727232 FILE_SIZE 2146435072 FILE_SIZE
|
2007-12-19 21:31:04 +01:00
|
|
|
show global variables like 'myisam_max_sort_file_size';
|
2007-12-19 22:35:46 +01:00
|
|
|
--replace_result 9223372036853727232 FILE_SIZE 2146435072 FILE_SIZE
|
2007-12-21 00:01:07 +01:00
|
|
|
select * from information_schema.global_variables where variable_name like 'myisam_max_sort_file_size';
|
2002-07-23 17:31:22 +02:00
|
|
|
|
2008-11-20 08:51:48 +01:00
|
|
|
# bug#22891: modified to take read-only SESSION net_buffer_length into account
|
2002-08-08 19:49:06 +02:00
|
|
|
set global net_retry_count=10, session net_retry_count=10;
|
2002-07-23 17:31:22 +02:00
|
|
|
set global net_buffer_length=1024, net_write_timeout=200, net_read_timeout=300;
|
|
|
|
show global variables like 'net_%';
|
2007-03-02 17:43:45 +01:00
|
|
|
select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
|
2002-07-23 17:31:22 +02:00
|
|
|
show session variables like 'net_%';
|
2007-03-02 17:43:45 +01:00
|
|
|
select * from information_schema.session_variables where variable_name like 'net_%' order by 1;
|
2008-11-20 08:51:48 +01:00
|
|
|
set global net_buffer_length=8000, global net_read_timeout=900, net_write_timeout=1000;
|
2002-07-23 17:31:22 +02:00
|
|
|
show global variables like 'net_%';
|
2007-03-02 17:43:45 +01:00
|
|
|
select * from information_schema.global_variables where variable_name like 'net_%' order by 1;
|
2008-11-20 08:51:48 +01:00
|
|
|
set global net_buffer_length=1;
|
|
|
|
show global variables like 'net_buffer_length';
|
|
|
|
select * from information_schema.global_variables where variable_name like 'net_buffer_length';
|
2007-10-30 12:03:44 +01:00
|
|
|
#warning 1292
|
2008-11-20 08:51:48 +01:00
|
|
|
set global net_buffer_length=2000000000;
|
|
|
|
show global variables like 'net_buffer_length';
|
|
|
|
select * from information_schema.global_variables where variable_name like 'net_buffer_length';
|
2002-07-23 17:31:22 +02:00
|
|
|
|
|
|
|
set character set cp1251_koi8;
|
2003-05-21 14:44:12 +02:00
|
|
|
show variables like "character_set_client";
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'character_set_client';
|
2002-07-23 17:31:22 +02:00
|
|
|
select @@timestamp>0;
|
|
|
|
|
2002-11-07 03:02:37 +01:00
|
|
|
set @@rand_seed1=10000000,@@rand_seed2=1000000;
|
|
|
|
select ROUND(RAND(),5);
|
|
|
|
|
2009-02-27 08:47:29 +01:00
|
|
|
|
2009-02-26 09:57:33 +01:00
|
|
|
--echo
|
|
|
|
--echo ==+ Testing %alloc% system variables +==
|
|
|
|
--echo ==+ NOTE: These values *must* be a multiple of 1024 +==
|
|
|
|
--echo ==+ Other values will be rounded down to nearest multiple +==
|
|
|
|
--echo
|
|
|
|
--echo ==+ Show initial values +==
|
|
|
|
SHOW VARIABLES WHERE variable_name IN ('range_alloc_block_size',
|
|
|
|
'query_alloc_block_size', 'query_prealloc_size',
|
|
|
|
'transaction_alloc_block_size', 'transaction_prealloc_size');
|
2009-02-27 08:47:29 +01:00
|
|
|
|
|
|
|
--echo ==+ information_schema data +==
|
|
|
|
SELECT * FROM information_schema.session_variables
|
|
|
|
WHERE variable_name IN ('range_alloc_block_size',
|
|
|
|
'query_alloc_block_size', 'query_prealloc_size',
|
2009-02-27 09:24:57 +01:00
|
|
|
'transaction_alloc_block_size', 'transaction_prealloc_size') ORDER BY 1;
|
2009-02-26 09:57:33 +01:00
|
|
|
--echo Testing values that are multiples of 1024
|
|
|
|
set @@range_alloc_block_size=1024*15+1024;
|
|
|
|
set @@query_alloc_block_size=1024*15+1024*2;
|
|
|
|
set @@query_prealloc_size=1024*18-1024;
|
|
|
|
set @@transaction_alloc_block_size=1024*21-1024*1;
|
|
|
|
set @@transaction_prealloc_size=1024*21-2048;
|
|
|
|
--echo ==+ Check manipulated values ==+
|
2009-02-27 08:47:29 +01:00
|
|
|
select @@query_alloc_block_size;
|
2009-02-26 09:57:33 +01:00
|
|
|
SHOW VARIABLES WHERE variable_name IN ('range_alloc_block_size',
|
|
|
|
'query_alloc_block_size', 'query_prealloc_size',
|
|
|
|
'transaction_alloc_block_size', 'transaction_prealloc_size');
|
2009-02-27 08:47:29 +01:00
|
|
|
--echo ==+ information_schema data +==
|
|
|
|
SELECT * FROM information_schema.session_variables
|
|
|
|
WHERE variable_name IN ('range_alloc_block_size',
|
|
|
|
'query_alloc_block_size', 'query_prealloc_size',
|
|
|
|
'transaction_alloc_block_size', 'transaction_prealloc_size') ORDER BY 1;
|
2009-02-26 09:57:33 +01:00
|
|
|
--echo ==+ Manipulate variable values +==
|
|
|
|
--echo Testing values that are not 1024 multiples
|
|
|
|
set @@range_alloc_block_size=1024*16+1023;
|
2003-10-11 21:00:24 +02:00
|
|
|
set @@query_alloc_block_size=1024*17+2;
|
2009-02-26 09:57:33 +01:00
|
|
|
set @@query_prealloc_size=1024*18-1023;
|
2003-10-11 21:00:24 +02:00
|
|
|
set @@transaction_alloc_block_size=1024*20-1;
|
|
|
|
set @@transaction_prealloc_size=1024*21-1;
|
|
|
|
select @@query_alloc_block_size;
|
2009-02-26 09:57:33 +01:00
|
|
|
--echo ==+ Check manipulated values ==+
|
|
|
|
SHOW VARIABLES WHERE variable_name IN ('range_alloc_block_size',
|
|
|
|
'query_alloc_block_size', 'query_prealloc_size',
|
|
|
|
'transaction_alloc_block_size', 'transaction_prealloc_size');
|
2009-02-27 08:47:29 +01:00
|
|
|
--echo ==+ information_schema data +==
|
|
|
|
SELECT * FROM information_schema.session_variables
|
|
|
|
WHERE variable_name IN ('range_alloc_block_size',
|
|
|
|
'query_alloc_block_size', 'query_prealloc_size',
|
|
|
|
'transaction_alloc_block_size', 'transaction_prealloc_size') ORDER BY 1;
|
2009-02-26 09:57:33 +01:00
|
|
|
--echo ==+ Set values back to the default values +==
|
2003-10-11 21:00:24 +02:00
|
|
|
set @@range_alloc_block_size=default;
|
|
|
|
set @@query_alloc_block_size=default, @@query_prealloc_size=default;
|
|
|
|
set transaction_alloc_block_size=default, @@transaction_prealloc_size=default;
|
2009-02-26 17:00:47 +01:00
|
|
|
--echo ==+ Check the values now that they are reset +==
|
2009-02-26 09:57:33 +01:00
|
|
|
SHOW VARIABLES WHERE variable_name IN ('range_alloc_block_size',
|
|
|
|
'query_alloc_block_size', 'query_prealloc_size',
|
|
|
|
'transaction_alloc_block_size', 'transaction_prealloc_size');
|
2002-11-07 03:02:37 +01:00
|
|
|
|
2005-06-02 13:17:44 +02:00
|
|
|
#
|
|
|
|
# Bug #10904 Illegal mix of collations between
|
|
|
|
# a system variable and a constant
|
|
|
|
#
|
|
|
|
SELECT @@version LIKE 'non-existent';
|
|
|
|
SELECT @@version_compile_os LIKE 'non-existent';
|
|
|
|
|
2002-07-23 17:31:22 +02:00
|
|
|
# The following should give errors
|
|
|
|
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2002-07-23 17:31:22 +02:00
|
|
|
set big_tables=OFFF;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2002-07-23 17:31:22 +02:00
|
|
|
set big_tables="OFFF";
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_UNKNOWN_SYSTEM_VARIABLE
|
2002-07-23 17:31:22 +02:00
|
|
|
set unknown_variable=1;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_TYPE_FOR_VAR
|
2002-07-23 17:31:22 +02:00
|
|
|
set max_join_size="hello";
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_UNKNOWN_STORAGE_ENGINE
|
2003-12-17 23:52:03 +01:00
|
|
|
set storage_engine=UNKNOWN_TABLE_TYPE;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2004-12-31 11:52:14 +01:00
|
|
|
set storage_engine=MERGE, big_tables=2;
|
2003-12-17 23:52:03 +01:00
|
|
|
show local variables like 'storage_engine';
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_NO_DEFAULT
|
2003-12-17 23:52:03 +01:00
|
|
|
set GLOBAL storage_engine=DEFAULT;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_UNKNOWN_CHARACTER_SET
|
2003-05-21 14:44:12 +02:00
|
|
|
set character_set_client=UNKNOWN_CHARACTER_SET;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_UNKNOWN_COLLATION
|
2003-07-29 14:12:14 +02:00
|
|
|
set collation_connection=UNKNOWN_COLLATION;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2004-03-29 15:33:24 +02:00
|
|
|
set character_set_client=NULL;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2004-03-29 15:33:24 +02:00
|
|
|
set collation_connection=NULL;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_LOCAL_VARIABLE
|
2002-07-23 17:31:22 +02:00
|
|
|
set global autocommit=1;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2002-07-23 17:31:22 +02:00
|
|
|
select @@global.timestamp;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2002-07-23 17:31:22 +02:00
|
|
|
set @@version='';
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_GLOBAL_VARIABLE
|
2002-07-23 17:31:22 +02:00
|
|
|
set @@concurrent_insert=1;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_LOCAL_VARIABLE
|
2002-07-23 17:31:22 +02:00
|
|
|
set @@global.sql_auto_is_null=1;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2002-07-23 17:31:22 +02:00
|
|
|
select @@global.sql_auto_is_null;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_GLOBAL_VARIABLE
|
2003-05-13 18:34:51 +02:00
|
|
|
set myisam_max_sort_file_size=100;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2003-10-14 15:30:42 +02:00
|
|
|
set @@SQL_WARNINGS=NULL;
|
2002-07-23 17:31:22 +02:00
|
|
|
|
|
|
|
# Test setting all variables
|
|
|
|
|
|
|
|
set autocommit=1;
|
|
|
|
set big_tables=1;
|
|
|
|
select @@autocommit, @@big_tables;
|
|
|
|
set global binlog_cache_size=100;
|
|
|
|
set bulk_insert_buffer_size=100;
|
2003-03-18 14:01:32 +01:00
|
|
|
set character set cp1251_koi8;
|
|
|
|
set character set default;
|
2002-07-23 17:31:22 +02:00
|
|
|
set @@global.concurrent_insert=1;
|
|
|
|
set global connect_timeout=100;
|
2002-08-13 01:18:39 +02:00
|
|
|
select @@delay_key_write;
|
|
|
|
set global delay_key_write="OFF";
|
|
|
|
select @@delay_key_write;
|
|
|
|
set global delay_key_write=ALL;
|
|
|
|
select @@delay_key_write;
|
2002-07-23 17:31:22 +02:00
|
|
|
set global delay_key_write=1;
|
2002-08-13 01:18:39 +02:00
|
|
|
select @@delay_key_write;
|
2002-07-23 17:31:22 +02:00
|
|
|
set global delayed_insert_limit=100;
|
|
|
|
set global delayed_insert_timeout=100;
|
|
|
|
set global delayed_queue_size=100;
|
|
|
|
set global flush=1;
|
|
|
|
set global flush_time=100;
|
|
|
|
set insert_id=1;
|
|
|
|
set interactive_timeout=100;
|
|
|
|
set join_buffer_size=100;
|
|
|
|
set last_insert_id=1;
|
|
|
|
set global local_infile=1;
|
2007-07-30 10:33:50 +02:00
|
|
|
set long_query_time=0.000001;
|
|
|
|
select @@long_query_time;
|
|
|
|
set long_query_time=100.000001;
|
|
|
|
select @@long_query_time;
|
2002-07-23 17:31:22 +02:00
|
|
|
set low_priority_updates=1;
|
2008-11-20 08:51:48 +01:00
|
|
|
set global max_allowed_packet=100;
|
2002-07-23 17:31:22 +02:00
|
|
|
set global max_binlog_cache_size=100;
|
|
|
|
set global max_binlog_size=100;
|
|
|
|
set global max_connect_errors=100;
|
|
|
|
set global max_connections=100;
|
|
|
|
set global max_delayed_threads=100;
|
|
|
|
set max_heap_table_size=100;
|
|
|
|
set max_join_size=100;
|
|
|
|
set max_sort_length=100;
|
|
|
|
set max_tmp_tables=100;
|
|
|
|
set global max_user_connections=100;
|
|
|
|
select @@max_user_connections;
|
|
|
|
set global max_write_lock_count=100;
|
|
|
|
set myisam_sort_buffer_size=100;
|
2008-11-20 08:51:48 +01:00
|
|
|
set global net_buffer_length=100;
|
2002-07-23 17:31:22 +02:00
|
|
|
set net_read_timeout=100;
|
|
|
|
set net_write_timeout=100;
|
|
|
|
set read_buffer_size=100;
|
|
|
|
set read_rnd_buffer_size=100;
|
|
|
|
set global rpl_recovery_rank=100;
|
|
|
|
set global server_id=100;
|
|
|
|
set global slow_launch_time=100;
|
|
|
|
set sort_buffer_size=100;
|
2005-11-23 00:11:19 +01:00
|
|
|
set @@max_sp_recursion_depth=10;
|
|
|
|
select @@max_sp_recursion_depth;
|
|
|
|
set @@max_sp_recursion_depth=0;
|
|
|
|
select @@max_sp_recursion_depth;
|
2002-07-23 17:31:22 +02:00
|
|
|
set sql_auto_is_null=1;
|
|
|
|
select @@sql_auto_is_null;
|
|
|
|
set @@sql_auto_is_null=0;
|
|
|
|
select @@sql_auto_is_null;
|
|
|
|
set sql_big_selects=1;
|
|
|
|
set sql_big_tables=1;
|
|
|
|
set sql_buffer_result=1;
|
|
|
|
set sql_log_bin=1;
|
|
|
|
set sql_log_off=1;
|
|
|
|
set sql_log_update=1;
|
|
|
|
set sql_low_priority_updates=1;
|
|
|
|
set sql_max_join_size=200;
|
|
|
|
select @@sql_max_join_size,@@max_join_size;
|
|
|
|
set sql_quote_show_create=1;
|
|
|
|
set sql_safe_updates=1;
|
|
|
|
set sql_select_limit=1;
|
2006-04-21 06:56:53 +02:00
|
|
|
# reset it, so later tests don't get confused
|
|
|
|
set sql_select_limit=default;
|
2002-07-23 17:31:22 +02:00
|
|
|
set sql_warnings=1;
|
Table definition cache, part 2
The table opening process now works the following way:
- Create common TABLE_SHARE object
- Read the .frm file and unpack it into the TABLE_SHARE object
- Create a TABLE object based on the information in the TABLE_SHARE
object and open a handler to the table object
Other noteworthy changes:
- In TABLE_SHARE the most common strings are now LEX_STRING's
- Better error message when table is not found
- Variable table_cache is now renamed 'table_open_cache'
- New variable 'table_definition_cache' that is the number of table defintions that will be cached
- strxnmov() calls are now fixed to avoid overflows
- strxnmov() will now always add one end \0 to result
- engine objects are now created with a TABLE_SHARE object instead of a TABLE object.
- After creating a field object one must call field->init(table) before using it
- For a busy system this change will give you:
- Less memory usage for table object
- Faster opening of tables (if it's has been in use or is in table definition cache)
- Allow you to cache many table definitions objects
- Faster drop of table
mysql-test/mysql-test-run.sh:
Fixed some problems with --gdb option
Test both with socket and tcp/ip port that all old servers are killed
mysql-test/r/flush_table.result:
More tests with lock table with 2 threads + flush table
mysql-test/r/information_schema.result:
Removed old (now wrong) result
mysql-test/r/innodb.result:
Better error messages (thanks to TDC patch)
mysql-test/r/merge.result:
Extra flush table test
mysql-test/r/ndb_bitfield.result:
Better error messages (thanks to TDC patch)
mysql-test/r/ndb_partition_error.result:
Better error messages (thanks to TDC patch)
mysql-test/r/query_cache.result:
Remove tables left from old tests
mysql-test/r/temp_table.result:
Test truncate with temporary tables
mysql-test/r/variables.result:
Table_cache -> Table_open_cache
mysql-test/t/flush_table.test:
More tests with lock table with 2 threads + flush table
mysql-test/t/merge.test:
Extra flush table test
mysql-test/t/multi_update.test:
Added 'sleep' to make test predictable
mysql-test/t/query_cache.test:
Remove tables left from old tests
mysql-test/t/temp_table.test:
Test truncate with temporary tables
mysql-test/t/variables.test:
Table_cache -> Table_open_cache
mysql-test/valgrind.supp:
Remove warning that may happens becasue threads dies in different order
mysys/hash.c:
Fixed wrong DBUG_PRINT
mysys/mf_dirname.c:
More DBUG
mysys/mf_pack.c:
Better comment
mysys/mf_tempdir.c:
More DBUG
Ensure that we call cleanup_dirname() on all temporary directory paths.
If we don't do this, we will get a failure when comparing temporary table
names as in some cases the temporary table name is run through convert_dirname())
mysys/my_alloc.c:
Indentation fix
sql/examples/ha_example.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/examples/ha_example.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/examples/ha_tina.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/examples/ha_tina.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/field.cc:
Update for table definition cache:
- Field creation now takes TABLE_SHARE instead of TABLE as argument
(This is becasue field definitions are now cached in TABLE_SHARE)
When a field is created, one now must call field->init(TABLE) before using it
- Use s->db instead of s->table_cache_key
- Added Field::clone() to create a field in TABLE from a field in TABLE_SHARE
- make_field() takes TABLE_SHARE as argument instead of TABLE
- move_field() -> move_field_offset()
sql/field.h:
Update for table definition cache:
- Field creation now takes TABLE_SHARE instead of TABLE as argument
(This is becasue field definitions are now cached in TABLE_SHARE)
When a field is created, one now must call field->init(TABLE) before using it
- Added Field::clone() to create a field in TABLE from a field in TABLE_SHARE
- make_field() takes TABLE_SHARE as argument instead of TABLE
- move_field() -> move_field_offset()
sql/ha_archive.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_archive.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_berkeley.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Changed name of argument create() to not hide internal 'table' variable.
table->s -> table_share
sql/ha_berkeley.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_blackhole.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_blackhole.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_federated.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Fixed comments
Remove index variable and replace with pointers (simple optimization)
move_field() -> move_field_offset()
Removed some strlen() calls
sql/ha_federated.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_heap.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Simplify delete_table() and create() as the given file names are now without extension
sql/ha_heap.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_innodb.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_innodb.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_myisam.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Remove not needed fn_format()
Fixed for new table->s structure
sql/ha_myisam.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_myisammrg.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Don't set 'is_view' for MERGE tables
Use new interface to find_temporary_table()
sql/ha_myisammrg.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Added flag HA_NO_COPY_ON_ALTER
sql/ha_ndbcluster.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Fixed wrong calls to strxnmov()
Give error HA_ERR_TABLE_DEF_CHANGED if table definition has changed
drop_table -> intern_drop_table()
table->s -> table_share
Move part_info to TABLE
Fixed comments & DBUG print's
New arguments to print_error()
sql/ha_ndbcluster.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_partition.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
We can't set up or use part_info when creating handler as there is not yet any table object
New ha_intialise() to work with TDC (Done by Mikael)
sql/ha_partition.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Got set_part_info() from Mikael
sql/handler.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
ha_delete_table() now also takes database as an argument
handler::ha_open() now takes TABLE as argument
ha_open() now calls ha_allocate_read_write_set()
Simplify ha_allocate_read_write_set()
Remove ha_deallocate_read_write_set()
Use table_share (Cached by table definition cache)
sql/handler.h:
New table flag: HA_NO_COPY_ON_ALTER (used by merge tables)
Remove ha_deallocate_read_write_set()
get_new_handler() now takes TABLE_SHARE as argument
ha_delete_table() now gets database as argument
sql/item.cc:
table_name and db are now LEX_STRING objects
When creating fields, we have now have to call field->init(table)
move_field -> move_field_offset()
sql/item.h:
tmp_table_field_from_field_type() now takes an extra paramenter 'fixed_length' to allow one to force usage of CHAR
instead of BLOB
sql/item_cmpfunc.cc:
Fixed call to tmp_table_field_from_field_type()
sql/item_create.cc:
Assert if new not handled cast type
sql/item_func.cc:
When creating fields, we have now have to call field->init(table)
dummy_table used by 'sp' now needs a TABLE_SHARE object
sql/item_subselect.cc:
Trivial code cleanups
sql/item_sum.cc:
When creating fields, we have now have to call field->init(table)
sql/item_timefunc.cc:
Item_func_str_to_date::tmp_table_field() now replaced by call to
tmp_table_field_from_field_type() (see item_timefunc.h)
sql/item_timefunc.h:
Simply tmp_table_field()
sql/item_uniq.cc:
When creating fields, we have now have to call field->init(table)
sql/key.cc:
Added 'KEY' argument to 'find_ref_key' to simplify code
sql/lock.cc:
More debugging
Use create_table_def_key() to create key for table cache
Allocate TABLE_SHARE properly when creating name lock
Fix that locked_table_name doesn't test same table twice
sql/mysql_priv.h:
New functions for table definition cache
New interfaces to a lot of functions.
New faster interface to find_temporary_table() and close_temporary_table()
sql/mysqld.cc:
Added support for table definition cache of size 'table_def_size'
Fixed som calls to strnmov()
Changed name of 'table_cache' to 'table_open_cache'
sql/opt_range.cc:
Use new interfaces
Fixed warnings from valgrind
sql/parse_file.cc:
Safer calls to strxnmov()
Fixed typo
sql/set_var.cc:
Added variable 'table_definition_cache'
Variable table_cache renamed to 'table_open_cache'
sql/slave.cc:
Use new interface
sql/sp.cc:
Proper use of TABLE_SHARE
sql/sp_head.cc:
Remove compiler warnings
We have now to call field->init(table)
sql/sp_head.h:
Pointers to parsed strings are now const
sql/sql_acl.cc:
table_name is now a LEX_STRING
sql/sql_base.cc:
Main implementation of table definition cache
(The #ifdef's are there for the future when table definition cache will replace open table cache)
Now table definitions are cached indepndent of open tables, which will speed up things when a table is in use at once from several places
Views are not yet cached; For the moment we only cache if a table is a view or not.
Faster implementation of find_temorary_table()
Replace 'wait_for_refresh()' with the more general function 'wait_for_condition()'
Drop table is slightly faster as we can use the table definition cache to know the type of the table
sql/sql_cache.cc:
table_cache_key and table_name are now LEX_STRING
'sDBUG print fixes
sql/sql_class.cc:
table_cache_key is now a LEX_STRING
safer strxnmov()
sql/sql_class.h:
Added number of open table shares (table definitions)
sql/sql_db.cc:
safer strxnmov()
sql/sql_delete.cc:
Use new interface to find_temporary_table()
sql/sql_derived.cc:
table_name is now a LEX_STRING
sql/sql_handler.cc:
TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
sql/sql_insert.cc:
TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
sql/sql_lex.cc:
Make parsed string a const (to quickly find out if anything is trying to change the query string)
sql/sql_lex.h:
Make parsed string a const (to quickly find out if anything is trying to change the query string)
sql/sql_load.cc:
Safer strxnmov()
sql/sql_parse.cc:
Better error if wrong DB name
sql/sql_partition.cc:
part_info moved to TABLE from TABLE_SHARE
Indentation changes
sql/sql_select.cc:
Indentation fixes
Call field->init(TABLE) for new created fields
Update create_tmp_table() to use TABLE_SHARE properly
sql/sql_select.h:
Call field->init(TABLE) for new created fields
sql/sql_show.cc:
table_name is now a LEX_STRING
part_info moved to TABLE
sql/sql_table.cc:
Use table definition cache to speed up delete of tables
Fixed calls to functions with new interfaces
Don't use 'share_not_to_be_used'
Instead of doing openfrm() when doing repair, we now have to call
get_table_share() followed by open_table_from_share().
Replace some fn_format() with faster unpack_filename().
Safer strxnmov()
part_info is now in TABLE
Added Mikaels patch for partition and ALTER TABLE
Instead of using 'TABLE_SHARE->is_view' use 'table_flags() & HA_NO_COPY_ON_ALTER
sql/sql_test.cc:
table_name and table_cache_key are now LEX_STRING's
sql/sql_trigger.cc:
TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
safer strxnmov()
Removed compiler warnings
sql/sql_update.cc:
Call field->init(TABLE) after field is created
sql/sql_view.cc:
safer strxnmov()
Create common TABLE_SHARE object for views to allow us to cache if table is a view
sql/structs.h:
Added SHOW_TABLE_DEFINITIONS
sql/table.cc:
Creation and destruct of TABLE_SHARE objects that are common for many TABLE objects
The table opening process now works the following way:
- Create common TABLE_SHARE object
- Read the .frm file and unpack it into the TABLE_SHARE object
- Create a TABLE object based on the information in the TABLE_SHARE
object and open a handler to the table object
open_table_def() is written in such a way that it should be trival to add parsing of the .frm files in new formats
sql/table.h:
TABLE objects for the same database table now share a common TABLE_SHARE object
In TABLE_SHARE the most common strings are now LEX_STRING's
sql/unireg.cc:
Changed arguments to rea_create_table() to have same order as other functions
Call field->init(table) for new created fields
sql/unireg.h:
Added OPEN_VIEW
strings/strxnmov.c:
Change strxnmov() to always add end \0
This makes usage of strxnmov() safer as most of MySQL code assumes that strxnmov() will create a null terminated string
2005-11-23 21:45:02 +01:00
|
|
|
set global table_open_cache=100;
|
2003-12-17 23:52:03 +01:00
|
|
|
set storage_engine=myisam;
|
2002-07-23 17:31:22 +02:00
|
|
|
set global thread_cache_size=100;
|
|
|
|
set timestamp=1, timestamp=default;
|
2010-08-02 11:01:24 +02:00
|
|
|
set tmp_table_size=1024;
|
2002-07-23 17:31:22 +02:00
|
|
|
set tx_isolation="READ-COMMITTED";
|
|
|
|
set wait_timeout=100;
|
|
|
|
set log_warnings=1;
|
2007-08-03 00:14:27 +02:00
|
|
|
set global log_warnings=1;
|
2002-07-23 17:31:22 +02:00
|
|
|
|
2006-06-22 16:10:11 +02:00
|
|
|
#
|
|
|
|
# Bugs: #20392: INSERT_ID session variable has weird value
|
|
|
|
#
|
|
|
|
select @@session.insert_id;
|
|
|
|
set @save_insert_id=@@session.insert_id;
|
|
|
|
set session insert_id=20;
|
|
|
|
select @@session.insert_id;
|
2006-06-22 16:40:59 +02:00
|
|
|
|
|
|
|
set session last_insert_id=100;
|
|
|
|
select @@session.insert_id;
|
|
|
|
select @@session.last_insert_id;
|
|
|
|
select @@session.insert_id;
|
|
|
|
|
2006-06-22 16:10:11 +02:00
|
|
|
set @@session.insert_id=@save_insert_id;
|
|
|
|
select @@session.insert_id;
|
|
|
|
|
2002-07-23 17:31:22 +02:00
|
|
|
#
|
|
|
|
# key buffer
|
|
|
|
#
|
|
|
|
|
|
|
|
create table t1 (a int not null auto_increment, primary key(a));
|
|
|
|
create table t2 (a int not null auto_increment, primary key(a));
|
|
|
|
insert into t1 values(null),(null),(null);
|
|
|
|
insert into t2 values(null),(null),(null);
|
|
|
|
set global key_buffer_size=100000;
|
|
|
|
select @@key_buffer_size;
|
|
|
|
select * from t1 where a=2;
|
|
|
|
select * from t2 where a=3;
|
|
|
|
check table t1,t2;
|
2003-03-20 19:44:56 +01:00
|
|
|
select max(a) +1, max(a) +2 into @xx,@yy from t1;
|
2002-07-23 17:31:22 +02:00
|
|
|
drop table t1,t2;
|
|
|
|
|
2003-03-20 18:13:45 +01:00
|
|
|
#
|
|
|
|
# error conditions
|
|
|
|
#
|
|
|
|
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_UNKNOWN_SYSTEM_VARIABLE
|
2003-03-20 18:13:45 +01:00
|
|
|
select @@xxxxxxxxxx;
|
|
|
|
select 1;
|
2003-10-24 16:28:32 +02:00
|
|
|
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2004-02-11 00:06:46 +01:00
|
|
|
select @@session.key_buffer_size;
|
|
|
|
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_GLOBAL_VARIABLE
|
2004-03-20 14:36:00 +01:00
|
|
|
set ft_boolean_syntax = @@init_connect;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2004-03-20 17:08:01 +01:00
|
|
|
set global ft_boolean_syntax = @@init_connect;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_GLOBAL_VARIABLE
|
2004-03-20 17:08:01 +01:00
|
|
|
set init_connect = NULL;
|
|
|
|
set global init_connect = NULL;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_GLOBAL_VARIABLE
|
2004-03-20 17:08:01 +01:00
|
|
|
set ft_boolean_syntax = @@init_connect;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2004-03-20 17:08:01 +01:00
|
|
|
set global ft_boolean_syntax = @@init_connect;
|
2004-03-20 14:36:00 +01:00
|
|
|
|
2004-05-24 13:42:34 +02:00
|
|
|
# Bug#3754 SET GLOBAL myisam_max_sort_file_size doesn't work as
|
|
|
|
# expected: check that there is no overflow when 64-bit unsigned
|
|
|
|
# variables are set
|
|
|
|
|
|
|
|
set global myisam_max_sort_file_size=4294967296;
|
2004-05-27 23:32:55 +02:00
|
|
|
--replace_result 4294967296 MAX_FILE_SIZE 2146435072 MAX_FILE_SIZE
|
2004-05-24 13:42:34 +02:00
|
|
|
show global variables like 'myisam_max_sort_file_size';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
--replace_result 4294967296 MAX_FILE_SIZE 2146435072 MAX_FILE_SIZE
|
|
|
|
select * from information_schema.global_variables where variable_name like 'myisam_max_sort_file_size';
|
2004-05-24 13:42:34 +02:00
|
|
|
set global myisam_max_sort_file_size=default;
|
|
|
|
|
2003-10-24 16:28:32 +02:00
|
|
|
#
|
|
|
|
# swap
|
|
|
|
#
|
|
|
|
select @@global.max_user_connections,@@local.max_join_size;
|
|
|
|
set @svc=@@global.max_user_connections, @svj=@@local.max_join_size;
|
|
|
|
select @@global.max_user_connections,@@local.max_join_size;
|
|
|
|
set @@global.max_user_connections=111,@@local.max_join_size=222;
|
|
|
|
select @@global.max_user_connections,@@local.max_join_size;
|
|
|
|
set @@global.max_user_connections=@@local.max_join_size,@@local.max_join_size=@@global.max_user_connections;
|
|
|
|
select @@global.max_user_connections,@@local.max_join_size;
|
|
|
|
set @@global.max_user_connections=@svc, @@local.max_join_size=@svj;
|
|
|
|
select @@global.max_user_connections,@@local.max_join_size;
|
|
|
|
set @a=1, @b=2;
|
|
|
|
set @a=@b, @b=@a;
|
|
|
|
select @a, @b;
|
|
|
|
|
2004-03-16 11:01:05 +01:00
|
|
|
#
|
|
|
|
# Bug#2586:Disallow global/session/local as structured var. instance names
|
|
|
|
#
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_PARSE_ERROR
|
2004-03-16 11:01:05 +01:00
|
|
|
set @@global.global.key_buffer_size= 1;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_PARSE_ERROR
|
2004-03-16 11:01:05 +01:00
|
|
|
set GLOBAL global.key_buffer_size= 1;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_PARSE_ERROR
|
2004-03-16 11:01:05 +01:00
|
|
|
SELECT @@global.global.key_buffer_size;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_PARSE_ERROR
|
2004-03-16 11:01:05 +01:00
|
|
|
SELECT @@global.session.key_buffer_size;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_PARSE_ERROR
|
2004-03-16 11:01:05 +01:00
|
|
|
SELECT @@global.local.key_buffer_size;
|
2004-08-23 15:29:55 +02:00
|
|
|
|
|
|
|
# BUG#5135: cannot turn on log_warnings with SET in 4.1 (and 4.0)
|
|
|
|
set @tstlw = @@log_warnings;
|
|
|
|
show global variables like 'log_warnings';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.global_variables where variable_name like 'log_warnings';
|
2004-08-23 15:29:55 +02:00
|
|
|
set global log_warnings = 0;
|
|
|
|
show global variables like 'log_warnings';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.global_variables where variable_name like 'log_warnings';
|
2004-08-23 15:29:55 +02:00
|
|
|
set global log_warnings = 42;
|
|
|
|
show global variables like 'log_warnings';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.global_variables where variable_name like 'log_warnings';
|
2004-08-23 15:29:55 +02:00
|
|
|
set global log_warnings = @tstlw;
|
|
|
|
show global variables like 'log_warnings';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.global_variables where variable_name like 'log_warnings';
|
2004-08-24 17:24:23 +02:00
|
|
|
|
2004-09-10 18:56:47 +02:00
|
|
|
#
|
|
|
|
# BUG#4788 show create table provides incorrect statement
|
|
|
|
#
|
|
|
|
# What default width have numeric types?
|
|
|
|
create table t1 (
|
|
|
|
c1 tinyint,
|
|
|
|
c2 smallint,
|
|
|
|
c3 mediumint,
|
|
|
|
c4 int,
|
|
|
|
c5 bigint);
|
|
|
|
show create table t1;
|
|
|
|
drop table t1;
|
|
|
|
#
|
|
|
|
# What types and widths have variables?
|
2005-02-08 23:50:45 +01:00
|
|
|
set @arg00= 8, @arg01= 8.8, @arg02= 'a string', @arg03= 0.2e0;
|
|
|
|
create table t1 as select @arg00 as c1, @arg01 as c2, @arg02 as c3, @arg03 as c4;
|
2004-09-10 18:56:47 +02:00
|
|
|
show create table t1;
|
|
|
|
drop table t1;
|
|
|
|
|
2004-12-07 11:51:13 +01:00
|
|
|
|
|
|
|
#
|
|
|
|
# Bug #6993: myisam_data_pointer_size
|
2005-06-30 15:13:22 +02:00
|
|
|
# Wrong bug report, data pointer size must be restricted to 7,
|
|
|
|
# setting to 8 will not work on all computers, myisamchk and
|
|
|
|
# the server may see a wrong value, such as 0 or negative number
|
|
|
|
# if 8 bytes is set.
|
2004-12-07 11:51:13 +01:00
|
|
|
#
|
|
|
|
|
2005-06-30 15:13:22 +02:00
|
|
|
SET GLOBAL MYISAM_DATA_POINTER_SIZE= 7;
|
2004-12-07 11:51:13 +01:00
|
|
|
SHOW VARIABLES LIKE 'MYISAM_DATA_POINTER_SIZE';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
SELECT * FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME LIKE 'MYISAM_DATA_POINTER_SIZE';
|
2005-02-17 12:04:04 +01:00
|
|
|
|
|
|
|
#
|
|
|
|
# Bug #6958: negative arguments to integer options wrap around
|
|
|
|
#
|
|
|
|
|
Table definition cache, part 2
The table opening process now works the following way:
- Create common TABLE_SHARE object
- Read the .frm file and unpack it into the TABLE_SHARE object
- Create a TABLE object based on the information in the TABLE_SHARE
object and open a handler to the table object
Other noteworthy changes:
- In TABLE_SHARE the most common strings are now LEX_STRING's
- Better error message when table is not found
- Variable table_cache is now renamed 'table_open_cache'
- New variable 'table_definition_cache' that is the number of table defintions that will be cached
- strxnmov() calls are now fixed to avoid overflows
- strxnmov() will now always add one end \0 to result
- engine objects are now created with a TABLE_SHARE object instead of a TABLE object.
- After creating a field object one must call field->init(table) before using it
- For a busy system this change will give you:
- Less memory usage for table object
- Faster opening of tables (if it's has been in use or is in table definition cache)
- Allow you to cache many table definitions objects
- Faster drop of table
mysql-test/mysql-test-run.sh:
Fixed some problems with --gdb option
Test both with socket and tcp/ip port that all old servers are killed
mysql-test/r/flush_table.result:
More tests with lock table with 2 threads + flush table
mysql-test/r/information_schema.result:
Removed old (now wrong) result
mysql-test/r/innodb.result:
Better error messages (thanks to TDC patch)
mysql-test/r/merge.result:
Extra flush table test
mysql-test/r/ndb_bitfield.result:
Better error messages (thanks to TDC patch)
mysql-test/r/ndb_partition_error.result:
Better error messages (thanks to TDC patch)
mysql-test/r/query_cache.result:
Remove tables left from old tests
mysql-test/r/temp_table.result:
Test truncate with temporary tables
mysql-test/r/variables.result:
Table_cache -> Table_open_cache
mysql-test/t/flush_table.test:
More tests with lock table with 2 threads + flush table
mysql-test/t/merge.test:
Extra flush table test
mysql-test/t/multi_update.test:
Added 'sleep' to make test predictable
mysql-test/t/query_cache.test:
Remove tables left from old tests
mysql-test/t/temp_table.test:
Test truncate with temporary tables
mysql-test/t/variables.test:
Table_cache -> Table_open_cache
mysql-test/valgrind.supp:
Remove warning that may happens becasue threads dies in different order
mysys/hash.c:
Fixed wrong DBUG_PRINT
mysys/mf_dirname.c:
More DBUG
mysys/mf_pack.c:
Better comment
mysys/mf_tempdir.c:
More DBUG
Ensure that we call cleanup_dirname() on all temporary directory paths.
If we don't do this, we will get a failure when comparing temporary table
names as in some cases the temporary table name is run through convert_dirname())
mysys/my_alloc.c:
Indentation fix
sql/examples/ha_example.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/examples/ha_example.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/examples/ha_tina.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/examples/ha_tina.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/field.cc:
Update for table definition cache:
- Field creation now takes TABLE_SHARE instead of TABLE as argument
(This is becasue field definitions are now cached in TABLE_SHARE)
When a field is created, one now must call field->init(TABLE) before using it
- Use s->db instead of s->table_cache_key
- Added Field::clone() to create a field in TABLE from a field in TABLE_SHARE
- make_field() takes TABLE_SHARE as argument instead of TABLE
- move_field() -> move_field_offset()
sql/field.h:
Update for table definition cache:
- Field creation now takes TABLE_SHARE instead of TABLE as argument
(This is becasue field definitions are now cached in TABLE_SHARE)
When a field is created, one now must call field->init(TABLE) before using it
- Added Field::clone() to create a field in TABLE from a field in TABLE_SHARE
- make_field() takes TABLE_SHARE as argument instead of TABLE
- move_field() -> move_field_offset()
sql/ha_archive.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_archive.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_berkeley.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Changed name of argument create() to not hide internal 'table' variable.
table->s -> table_share
sql/ha_berkeley.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_blackhole.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_blackhole.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_federated.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Fixed comments
Remove index variable and replace with pointers (simple optimization)
move_field() -> move_field_offset()
Removed some strlen() calls
sql/ha_federated.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_heap.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Simplify delete_table() and create() as the given file names are now without extension
sql/ha_heap.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_innodb.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_innodb.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_myisam.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Remove not needed fn_format()
Fixed for new table->s structure
sql/ha_myisam.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_myisammrg.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Don't set 'is_view' for MERGE tables
Use new interface to find_temporary_table()
sql/ha_myisammrg.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Added flag HA_NO_COPY_ON_ALTER
sql/ha_ndbcluster.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Fixed wrong calls to strxnmov()
Give error HA_ERR_TABLE_DEF_CHANGED if table definition has changed
drop_table -> intern_drop_table()
table->s -> table_share
Move part_info to TABLE
Fixed comments & DBUG print's
New arguments to print_error()
sql/ha_ndbcluster.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_partition.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
We can't set up or use part_info when creating handler as there is not yet any table object
New ha_intialise() to work with TDC (Done by Mikael)
sql/ha_partition.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Got set_part_info() from Mikael
sql/handler.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
ha_delete_table() now also takes database as an argument
handler::ha_open() now takes TABLE as argument
ha_open() now calls ha_allocate_read_write_set()
Simplify ha_allocate_read_write_set()
Remove ha_deallocate_read_write_set()
Use table_share (Cached by table definition cache)
sql/handler.h:
New table flag: HA_NO_COPY_ON_ALTER (used by merge tables)
Remove ha_deallocate_read_write_set()
get_new_handler() now takes TABLE_SHARE as argument
ha_delete_table() now gets database as argument
sql/item.cc:
table_name and db are now LEX_STRING objects
When creating fields, we have now have to call field->init(table)
move_field -> move_field_offset()
sql/item.h:
tmp_table_field_from_field_type() now takes an extra paramenter 'fixed_length' to allow one to force usage of CHAR
instead of BLOB
sql/item_cmpfunc.cc:
Fixed call to tmp_table_field_from_field_type()
sql/item_create.cc:
Assert if new not handled cast type
sql/item_func.cc:
When creating fields, we have now have to call field->init(table)
dummy_table used by 'sp' now needs a TABLE_SHARE object
sql/item_subselect.cc:
Trivial code cleanups
sql/item_sum.cc:
When creating fields, we have now have to call field->init(table)
sql/item_timefunc.cc:
Item_func_str_to_date::tmp_table_field() now replaced by call to
tmp_table_field_from_field_type() (see item_timefunc.h)
sql/item_timefunc.h:
Simply tmp_table_field()
sql/item_uniq.cc:
When creating fields, we have now have to call field->init(table)
sql/key.cc:
Added 'KEY' argument to 'find_ref_key' to simplify code
sql/lock.cc:
More debugging
Use create_table_def_key() to create key for table cache
Allocate TABLE_SHARE properly when creating name lock
Fix that locked_table_name doesn't test same table twice
sql/mysql_priv.h:
New functions for table definition cache
New interfaces to a lot of functions.
New faster interface to find_temporary_table() and close_temporary_table()
sql/mysqld.cc:
Added support for table definition cache of size 'table_def_size'
Fixed som calls to strnmov()
Changed name of 'table_cache' to 'table_open_cache'
sql/opt_range.cc:
Use new interfaces
Fixed warnings from valgrind
sql/parse_file.cc:
Safer calls to strxnmov()
Fixed typo
sql/set_var.cc:
Added variable 'table_definition_cache'
Variable table_cache renamed to 'table_open_cache'
sql/slave.cc:
Use new interface
sql/sp.cc:
Proper use of TABLE_SHARE
sql/sp_head.cc:
Remove compiler warnings
We have now to call field->init(table)
sql/sp_head.h:
Pointers to parsed strings are now const
sql/sql_acl.cc:
table_name is now a LEX_STRING
sql/sql_base.cc:
Main implementation of table definition cache
(The #ifdef's are there for the future when table definition cache will replace open table cache)
Now table definitions are cached indepndent of open tables, which will speed up things when a table is in use at once from several places
Views are not yet cached; For the moment we only cache if a table is a view or not.
Faster implementation of find_temorary_table()
Replace 'wait_for_refresh()' with the more general function 'wait_for_condition()'
Drop table is slightly faster as we can use the table definition cache to know the type of the table
sql/sql_cache.cc:
table_cache_key and table_name are now LEX_STRING
'sDBUG print fixes
sql/sql_class.cc:
table_cache_key is now a LEX_STRING
safer strxnmov()
sql/sql_class.h:
Added number of open table shares (table definitions)
sql/sql_db.cc:
safer strxnmov()
sql/sql_delete.cc:
Use new interface to find_temporary_table()
sql/sql_derived.cc:
table_name is now a LEX_STRING
sql/sql_handler.cc:
TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
sql/sql_insert.cc:
TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
sql/sql_lex.cc:
Make parsed string a const (to quickly find out if anything is trying to change the query string)
sql/sql_lex.h:
Make parsed string a const (to quickly find out if anything is trying to change the query string)
sql/sql_load.cc:
Safer strxnmov()
sql/sql_parse.cc:
Better error if wrong DB name
sql/sql_partition.cc:
part_info moved to TABLE from TABLE_SHARE
Indentation changes
sql/sql_select.cc:
Indentation fixes
Call field->init(TABLE) for new created fields
Update create_tmp_table() to use TABLE_SHARE properly
sql/sql_select.h:
Call field->init(TABLE) for new created fields
sql/sql_show.cc:
table_name is now a LEX_STRING
part_info moved to TABLE
sql/sql_table.cc:
Use table definition cache to speed up delete of tables
Fixed calls to functions with new interfaces
Don't use 'share_not_to_be_used'
Instead of doing openfrm() when doing repair, we now have to call
get_table_share() followed by open_table_from_share().
Replace some fn_format() with faster unpack_filename().
Safer strxnmov()
part_info is now in TABLE
Added Mikaels patch for partition and ALTER TABLE
Instead of using 'TABLE_SHARE->is_view' use 'table_flags() & HA_NO_COPY_ON_ALTER
sql/sql_test.cc:
table_name and table_cache_key are now LEX_STRING's
sql/sql_trigger.cc:
TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
safer strxnmov()
Removed compiler warnings
sql/sql_update.cc:
Call field->init(TABLE) after field is created
sql/sql_view.cc:
safer strxnmov()
Create common TABLE_SHARE object for views to allow us to cache if table is a view
sql/structs.h:
Added SHOW_TABLE_DEFINITIONS
sql/table.cc:
Creation and destruct of TABLE_SHARE objects that are common for many TABLE objects
The table opening process now works the following way:
- Create common TABLE_SHARE object
- Read the .frm file and unpack it into the TABLE_SHARE object
- Create a TABLE object based on the information in the TABLE_SHARE
object and open a handler to the table object
open_table_def() is written in such a way that it should be trival to add parsing of the .frm files in new formats
sql/table.h:
TABLE objects for the same database table now share a common TABLE_SHARE object
In TABLE_SHARE the most common strings are now LEX_STRING's
sql/unireg.cc:
Changed arguments to rea_create_table() to have same order as other functions
Call field->init(table) for new created fields
sql/unireg.h:
Added OPEN_VIEW
strings/strxnmov.c:
Change strxnmov() to always add end \0
This makes usage of strxnmov() safer as most of MySQL code assumes that strxnmov() will create a null terminated string
2005-11-23 21:45:02 +01:00
|
|
|
SET GLOBAL table_open_cache=-1;
|
|
|
|
SHOW VARIABLES LIKE 'table_open_cache';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
SELECT * FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME LIKE 'table_open_cache';
|
Table definition cache, part 2
The table opening process now works the following way:
- Create common TABLE_SHARE object
- Read the .frm file and unpack it into the TABLE_SHARE object
- Create a TABLE object based on the information in the TABLE_SHARE
object and open a handler to the table object
Other noteworthy changes:
- In TABLE_SHARE the most common strings are now LEX_STRING's
- Better error message when table is not found
- Variable table_cache is now renamed 'table_open_cache'
- New variable 'table_definition_cache' that is the number of table defintions that will be cached
- strxnmov() calls are now fixed to avoid overflows
- strxnmov() will now always add one end \0 to result
- engine objects are now created with a TABLE_SHARE object instead of a TABLE object.
- After creating a field object one must call field->init(table) before using it
- For a busy system this change will give you:
- Less memory usage for table object
- Faster opening of tables (if it's has been in use or is in table definition cache)
- Allow you to cache many table definitions objects
- Faster drop of table
mysql-test/mysql-test-run.sh:
Fixed some problems with --gdb option
Test both with socket and tcp/ip port that all old servers are killed
mysql-test/r/flush_table.result:
More tests with lock table with 2 threads + flush table
mysql-test/r/information_schema.result:
Removed old (now wrong) result
mysql-test/r/innodb.result:
Better error messages (thanks to TDC patch)
mysql-test/r/merge.result:
Extra flush table test
mysql-test/r/ndb_bitfield.result:
Better error messages (thanks to TDC patch)
mysql-test/r/ndb_partition_error.result:
Better error messages (thanks to TDC patch)
mysql-test/r/query_cache.result:
Remove tables left from old tests
mysql-test/r/temp_table.result:
Test truncate with temporary tables
mysql-test/r/variables.result:
Table_cache -> Table_open_cache
mysql-test/t/flush_table.test:
More tests with lock table with 2 threads + flush table
mysql-test/t/merge.test:
Extra flush table test
mysql-test/t/multi_update.test:
Added 'sleep' to make test predictable
mysql-test/t/query_cache.test:
Remove tables left from old tests
mysql-test/t/temp_table.test:
Test truncate with temporary tables
mysql-test/t/variables.test:
Table_cache -> Table_open_cache
mysql-test/valgrind.supp:
Remove warning that may happens becasue threads dies in different order
mysys/hash.c:
Fixed wrong DBUG_PRINT
mysys/mf_dirname.c:
More DBUG
mysys/mf_pack.c:
Better comment
mysys/mf_tempdir.c:
More DBUG
Ensure that we call cleanup_dirname() on all temporary directory paths.
If we don't do this, we will get a failure when comparing temporary table
names as in some cases the temporary table name is run through convert_dirname())
mysys/my_alloc.c:
Indentation fix
sql/examples/ha_example.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/examples/ha_example.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/examples/ha_tina.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/examples/ha_tina.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/field.cc:
Update for table definition cache:
- Field creation now takes TABLE_SHARE instead of TABLE as argument
(This is becasue field definitions are now cached in TABLE_SHARE)
When a field is created, one now must call field->init(TABLE) before using it
- Use s->db instead of s->table_cache_key
- Added Field::clone() to create a field in TABLE from a field in TABLE_SHARE
- make_field() takes TABLE_SHARE as argument instead of TABLE
- move_field() -> move_field_offset()
sql/field.h:
Update for table definition cache:
- Field creation now takes TABLE_SHARE instead of TABLE as argument
(This is becasue field definitions are now cached in TABLE_SHARE)
When a field is created, one now must call field->init(TABLE) before using it
- Added Field::clone() to create a field in TABLE from a field in TABLE_SHARE
- make_field() takes TABLE_SHARE as argument instead of TABLE
- move_field() -> move_field_offset()
sql/ha_archive.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_archive.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_berkeley.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Changed name of argument create() to not hide internal 'table' variable.
table->s -> table_share
sql/ha_berkeley.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_blackhole.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_blackhole.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_federated.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Fixed comments
Remove index variable and replace with pointers (simple optimization)
move_field() -> move_field_offset()
Removed some strlen() calls
sql/ha_federated.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_heap.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Simplify delete_table() and create() as the given file names are now without extension
sql/ha_heap.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_innodb.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_innodb.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_myisam.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Remove not needed fn_format()
Fixed for new table->s structure
sql/ha_myisam.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_myisammrg.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Don't set 'is_view' for MERGE tables
Use new interface to find_temporary_table()
sql/ha_myisammrg.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Added flag HA_NO_COPY_ON_ALTER
sql/ha_ndbcluster.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Fixed wrong calls to strxnmov()
Give error HA_ERR_TABLE_DEF_CHANGED if table definition has changed
drop_table -> intern_drop_table()
table->s -> table_share
Move part_info to TABLE
Fixed comments & DBUG print's
New arguments to print_error()
sql/ha_ndbcluster.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
sql/ha_partition.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
We can't set up or use part_info when creating handler as there is not yet any table object
New ha_intialise() to work with TDC (Done by Mikael)
sql/ha_partition.h:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
Got set_part_info() from Mikael
sql/handler.cc:
We new use TABLE_SHARE instead of TABLE when creating engine handlers
ha_delete_table() now also takes database as an argument
handler::ha_open() now takes TABLE as argument
ha_open() now calls ha_allocate_read_write_set()
Simplify ha_allocate_read_write_set()
Remove ha_deallocate_read_write_set()
Use table_share (Cached by table definition cache)
sql/handler.h:
New table flag: HA_NO_COPY_ON_ALTER (used by merge tables)
Remove ha_deallocate_read_write_set()
get_new_handler() now takes TABLE_SHARE as argument
ha_delete_table() now gets database as argument
sql/item.cc:
table_name and db are now LEX_STRING objects
When creating fields, we have now have to call field->init(table)
move_field -> move_field_offset()
sql/item.h:
tmp_table_field_from_field_type() now takes an extra paramenter 'fixed_length' to allow one to force usage of CHAR
instead of BLOB
sql/item_cmpfunc.cc:
Fixed call to tmp_table_field_from_field_type()
sql/item_create.cc:
Assert if new not handled cast type
sql/item_func.cc:
When creating fields, we have now have to call field->init(table)
dummy_table used by 'sp' now needs a TABLE_SHARE object
sql/item_subselect.cc:
Trivial code cleanups
sql/item_sum.cc:
When creating fields, we have now have to call field->init(table)
sql/item_timefunc.cc:
Item_func_str_to_date::tmp_table_field() now replaced by call to
tmp_table_field_from_field_type() (see item_timefunc.h)
sql/item_timefunc.h:
Simply tmp_table_field()
sql/item_uniq.cc:
When creating fields, we have now have to call field->init(table)
sql/key.cc:
Added 'KEY' argument to 'find_ref_key' to simplify code
sql/lock.cc:
More debugging
Use create_table_def_key() to create key for table cache
Allocate TABLE_SHARE properly when creating name lock
Fix that locked_table_name doesn't test same table twice
sql/mysql_priv.h:
New functions for table definition cache
New interfaces to a lot of functions.
New faster interface to find_temporary_table() and close_temporary_table()
sql/mysqld.cc:
Added support for table definition cache of size 'table_def_size'
Fixed som calls to strnmov()
Changed name of 'table_cache' to 'table_open_cache'
sql/opt_range.cc:
Use new interfaces
Fixed warnings from valgrind
sql/parse_file.cc:
Safer calls to strxnmov()
Fixed typo
sql/set_var.cc:
Added variable 'table_definition_cache'
Variable table_cache renamed to 'table_open_cache'
sql/slave.cc:
Use new interface
sql/sp.cc:
Proper use of TABLE_SHARE
sql/sp_head.cc:
Remove compiler warnings
We have now to call field->init(table)
sql/sp_head.h:
Pointers to parsed strings are now const
sql/sql_acl.cc:
table_name is now a LEX_STRING
sql/sql_base.cc:
Main implementation of table definition cache
(The #ifdef's are there for the future when table definition cache will replace open table cache)
Now table definitions are cached indepndent of open tables, which will speed up things when a table is in use at once from several places
Views are not yet cached; For the moment we only cache if a table is a view or not.
Faster implementation of find_temorary_table()
Replace 'wait_for_refresh()' with the more general function 'wait_for_condition()'
Drop table is slightly faster as we can use the table definition cache to know the type of the table
sql/sql_cache.cc:
table_cache_key and table_name are now LEX_STRING
'sDBUG print fixes
sql/sql_class.cc:
table_cache_key is now a LEX_STRING
safer strxnmov()
sql/sql_class.h:
Added number of open table shares (table definitions)
sql/sql_db.cc:
safer strxnmov()
sql/sql_delete.cc:
Use new interface to find_temporary_table()
sql/sql_derived.cc:
table_name is now a LEX_STRING
sql/sql_handler.cc:
TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
sql/sql_insert.cc:
TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
sql/sql_lex.cc:
Make parsed string a const (to quickly find out if anything is trying to change the query string)
sql/sql_lex.h:
Make parsed string a const (to quickly find out if anything is trying to change the query string)
sql/sql_load.cc:
Safer strxnmov()
sql/sql_parse.cc:
Better error if wrong DB name
sql/sql_partition.cc:
part_info moved to TABLE from TABLE_SHARE
Indentation changes
sql/sql_select.cc:
Indentation fixes
Call field->init(TABLE) for new created fields
Update create_tmp_table() to use TABLE_SHARE properly
sql/sql_select.h:
Call field->init(TABLE) for new created fields
sql/sql_show.cc:
table_name is now a LEX_STRING
part_info moved to TABLE
sql/sql_table.cc:
Use table definition cache to speed up delete of tables
Fixed calls to functions with new interfaces
Don't use 'share_not_to_be_used'
Instead of doing openfrm() when doing repair, we now have to call
get_table_share() followed by open_table_from_share().
Replace some fn_format() with faster unpack_filename().
Safer strxnmov()
part_info is now in TABLE
Added Mikaels patch for partition and ALTER TABLE
Instead of using 'TABLE_SHARE->is_view' use 'table_flags() & HA_NO_COPY_ON_ALTER
sql/sql_test.cc:
table_name and table_cache_key are now LEX_STRING's
sql/sql_trigger.cc:
TABLE_SHARE->db and TABLE_SHARE->table_name are now LEX_STRING's
safer strxnmov()
Removed compiler warnings
sql/sql_update.cc:
Call field->init(TABLE) after field is created
sql/sql_view.cc:
safer strxnmov()
Create common TABLE_SHARE object for views to allow us to cache if table is a view
sql/structs.h:
Added SHOW_TABLE_DEFINITIONS
sql/table.cc:
Creation and destruct of TABLE_SHARE objects that are common for many TABLE objects
The table opening process now works the following way:
- Create common TABLE_SHARE object
- Read the .frm file and unpack it into the TABLE_SHARE object
- Create a TABLE object based on the information in the TABLE_SHARE
object and open a handler to the table object
open_table_def() is written in such a way that it should be trival to add parsing of the .frm files in new formats
sql/table.h:
TABLE objects for the same database table now share a common TABLE_SHARE object
In TABLE_SHARE the most common strings are now LEX_STRING's
sql/unireg.cc:
Changed arguments to rea_create_table() to have same order as other functions
Call field->init(table) for new created fields
sql/unireg.h:
Added OPEN_VIEW
strings/strxnmov.c:
Change strxnmov() to always add end \0
This makes usage of strxnmov() safer as most of MySQL code assumes that strxnmov() will create a null terminated string
2005-11-23 21:45:02 +01:00
|
|
|
SET GLOBAL table_open_cache=DEFAULT;
|
2005-03-23 19:36:15 +01:00
|
|
|
|
2005-08-30 14:11:59 +02:00
|
|
|
#
|
|
|
|
# Bugs12363: character_set_results is nullable,
|
|
|
|
# but value_ptr returns string "NULL"
|
|
|
|
#
|
|
|
|
set character_set_results=NULL;
|
|
|
|
select ifnull(@@character_set_results,"really null");
|
|
|
|
set names latin1;
|
|
|
|
|
2005-08-26 10:23:32 +02:00
|
|
|
|
|
|
|
#
|
|
|
|
# Bug #9613: @@have_innodb
|
|
|
|
#
|
|
|
|
|
|
|
|
--replace_column 1 #
|
|
|
|
select @@have_innodb;
|
2005-10-11 04:39:16 +02:00
|
|
|
|
2006-12-05 10:45:21 +01:00
|
|
|
#
|
|
|
|
# Tests for lc_time_names
|
|
|
|
# Note, when adding new locales, please fix ID accordingly:
|
|
|
|
# - to test the last ID (currently 108)
|
|
|
|
# - and the next after the last (currently 109)
|
|
|
|
#
|
|
|
|
--echo *** Various tests with LC_TIME_NAMES
|
|
|
|
--echo *** LC_TIME_NAMES: testing case insensitivity
|
|
|
|
set @@lc_time_names='ru_ru';
|
|
|
|
select @@lc_time_names;
|
|
|
|
--echo *** LC_TIME_NAMES: testing with a user variable
|
|
|
|
set @lc='JA_JP';
|
|
|
|
set @@lc_time_names=@lc;
|
|
|
|
select @@lc_time_names;
|
|
|
|
--echo *** LC_TIME_NAMES: testing with string expressions
|
|
|
|
set lc_time_names=concat('de','_','DE');
|
|
|
|
select @@lc_time_names;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_UNKNOWN_ERROR
|
2006-12-05 10:45:21 +01:00
|
|
|
set lc_time_names=concat('de','+','DE');
|
|
|
|
select @@lc_time_names;
|
|
|
|
--echo LC_TIME_NAMES: testing with numeric expressions
|
|
|
|
set @@lc_time_names=1+2;
|
|
|
|
select @@lc_time_names;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_TYPE_FOR_VAR
|
2006-12-05 10:45:21 +01:00
|
|
|
set @@lc_time_names=1/0;
|
|
|
|
select @@lc_time_names;
|
|
|
|
set lc_time_names=en_US;
|
|
|
|
--echo LC_TIME_NAMES: testing NULL and a negative number:
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2006-12-05 10:45:21 +01:00
|
|
|
set lc_time_names=NULL;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_UNKNOWN_ERROR
|
2006-12-05 10:45:21 +01:00
|
|
|
set lc_time_names=-1;
|
|
|
|
select @@lc_time_names;
|
|
|
|
--echo LC_TIME_NAMES: testing locale with the last ID:
|
|
|
|
set lc_time_names=108;
|
|
|
|
select @@lc_time_names;
|
|
|
|
--echo LC_TIME_NAMES: testing a number beyond the valid ID range:
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_UNKNOWN_ERROR
|
2006-12-05 10:45:21 +01:00
|
|
|
set lc_time_names=109;
|
|
|
|
select @@lc_time_names;
|
|
|
|
--echo LC_TIME_NAMES: testing that 0 is en_US:
|
|
|
|
set lc_time_names=0;
|
|
|
|
select @@lc_time_names;
|
|
|
|
|
2007-04-09 14:58:56 +02:00
|
|
|
#
|
|
|
|
# Bug #22648 LC_TIME_NAMES: Setting GLOBAL has no effect
|
|
|
|
#
|
|
|
|
select @@global.lc_time_names, @@lc_time_names;
|
|
|
|
set @@global.lc_time_names=fr_FR;
|
|
|
|
select @@global.lc_time_names, @@lc_time_names;
|
|
|
|
--echo New connection
|
|
|
|
connect (con1,localhost,root,,);
|
|
|
|
connection con1;
|
|
|
|
select @@global.lc_time_names, @@lc_time_names;
|
|
|
|
set @@lc_time_names=ru_RU;
|
|
|
|
select @@global.lc_time_names, @@lc_time_names;
|
|
|
|
disconnect con1;
|
|
|
|
connection default;
|
|
|
|
--echo Returnung to default connection
|
|
|
|
select @@global.lc_time_names, @@lc_time_names;
|
|
|
|
set lc_time_names=default;
|
|
|
|
select @@global.lc_time_names, @@lc_time_names;
|
|
|
|
set @@global.lc_time_names=default;
|
|
|
|
select @@global.lc_time_names, @@lc_time_names;
|
|
|
|
set @@lc_time_names=default;
|
|
|
|
select @@global.lc_time_names, @@lc_time_names;
|
|
|
|
|
|
|
|
|
2005-10-11 04:39:16 +02:00
|
|
|
#
|
|
|
|
# Bug #13334: query_prealloc_size default less than minimum
|
|
|
|
#
|
|
|
|
set @test = @@query_prealloc_size;
|
|
|
|
set @@query_prealloc_size = @test;
|
|
|
|
select @@query_prealloc_size = @test;
|
|
|
|
|
2007-10-18 10:47:54 +02:00
|
|
|
#
|
|
|
|
# Bug#31588 buffer overrun when setting variables
|
|
|
|
#
|
|
|
|
# Buffer-size Off By One. Should throw valgrind-warning without fix #31588.
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
2007-10-18 10:47:54 +02:00
|
|
|
set global sql_mode=repeat('a',80);
|
|
|
|
|
|
|
|
--echo End of 4.1 tests
|
2005-07-28 16:09:54 +02:00
|
|
|
|
2005-03-23 19:36:15 +01:00
|
|
|
#
|
|
|
|
# Bug#6282 Packet error with SELECT INTO
|
|
|
|
#
|
2005-08-31 07:25:00 +02:00
|
|
|
|
2005-03-23 19:36:15 +01:00
|
|
|
create table t1 (a int);
|
|
|
|
select a into @x from t1;
|
|
|
|
show warnings;
|
|
|
|
drop table t1;
|
|
|
|
|
2005-05-13 13:18:27 +02:00
|
|
|
#
|
|
|
|
# Bug #10339: read only variables.
|
|
|
|
#
|
|
|
|
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2005-05-13 13:18:27 +02:00
|
|
|
set @@warning_count=1;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2005-05-13 13:18:27 +02:00
|
|
|
set @@global.error_count=1;
|
2005-07-23 01:18:34 +02:00
|
|
|
|
|
|
|
#
|
2005-07-29 03:22:49 +02:00
|
|
|
# Bug #10351: Setting ulong variable to > MAX_ULONG fails on 32-bit platform
|
2005-07-23 01:18:34 +02:00
|
|
|
#
|
2005-08-31 07:25:00 +02:00
|
|
|
|
2009-03-09 15:26:53 +01:00
|
|
|
--disable_warnings
|
2005-07-23 01:18:34 +02:00
|
|
|
set @@max_heap_table_size= 4294967296;
|
2005-07-29 03:22:49 +02:00
|
|
|
select @@max_heap_table_size > 0;
|
2005-07-23 01:18:34 +02:00
|
|
|
set global max_heap_table_size= 4294967296;
|
2005-07-31 11:49:55 +02:00
|
|
|
select @@max_heap_table_size > 0;
|
2005-07-23 01:18:34 +02:00
|
|
|
set @@max_heap_table_size= 4294967296;
|
2005-07-31 11:49:55 +02:00
|
|
|
select @@max_heap_table_size > 0;
|
2009-03-09 15:26:53 +01:00
|
|
|
--enable_warnings
|
2005-08-31 07:25:00 +02:00
|
|
|
|
2005-09-07 12:38:09 +02:00
|
|
|
#
|
|
|
|
# Bug #11775 Variable character_set_system does not exist (sometimes)
|
|
|
|
#
|
|
|
|
select @@character_set_system;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2005-09-07 12:38:09 +02:00
|
|
|
set global character_set_system = latin1;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2005-09-07 12:38:09 +02:00
|
|
|
set @@global.version_compile_os='234';
|
2005-10-19 22:47:05 +02:00
|
|
|
|
2006-02-14 05:24:01 +01:00
|
|
|
#
|
|
|
|
# Check character_set_filesystem variable
|
|
|
|
#
|
|
|
|
set character_set_filesystem=latin1;
|
|
|
|
select @@character_set_filesystem;
|
|
|
|
set @@global.character_set_filesystem=latin2;
|
|
|
|
set character_set_filesystem=latin1;
|
|
|
|
select @@character_set_filesystem;
|
|
|
|
set @@global.character_set_filesystem=latin2;
|
|
|
|
set character_set_filesystem=default;
|
|
|
|
select @@character_set_filesystem;
|
|
|
|
set @@global.character_set_filesystem=default;
|
|
|
|
select @@global.character_set_filesystem;
|
|
|
|
|
2006-04-26 18:21:53 +02:00
|
|
|
#
|
|
|
|
# Bug #17849: Show sql_big_selects in SHOW VARIABLES
|
|
|
|
#
|
|
|
|
set @old_sql_big_selects = @@sql_big_selects;
|
|
|
|
set @@sql_big_selects = 1;
|
|
|
|
show variables like 'sql_big_selects';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'sql_big_selects';
|
2006-04-26 18:21:53 +02:00
|
|
|
set @@sql_big_selects = @old_sql_big_selects;
|
|
|
|
|
2006-04-21 05:41:12 +02:00
|
|
|
#
|
|
|
|
# Bug #16195: SHOW VARIABLES doesn't report correctly sql_warnings and
|
|
|
|
# sql_notes values
|
|
|
|
#
|
|
|
|
set @@sql_notes = 0, @@sql_warnings = 0;
|
|
|
|
show variables like 'sql_notes';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'sql_notes';
|
2006-04-21 05:41:12 +02:00
|
|
|
show variables like 'sql_warnings';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'sql_warnings';
|
2006-04-21 05:41:12 +02:00
|
|
|
set @@sql_notes = 1, @@sql_warnings = 1;
|
|
|
|
show variables like 'sql_notes';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'sql_notes';
|
2006-04-21 05:41:12 +02:00
|
|
|
show variables like 'sql_warnings';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'sql_warnings';
|
2006-04-21 05:41:12 +02:00
|
|
|
|
2006-04-21 06:56:53 +02:00
|
|
|
#
|
|
|
|
# Bug #12792: @@system_time_zone is not SELECTable.
|
|
|
|
#
|
|
|
|
# Don't actually output, since it depends on the system
|
|
|
|
--replace_column 1 #
|
|
|
|
select @@system_time_zone;
|
|
|
|
|
|
|
|
#
|
|
|
|
# Bug #15684: system variables cannot be SELECTed (e.g. @@version_comment)
|
|
|
|
#
|
|
|
|
# Don't actually output, since it depends on the system
|
|
|
|
--replace_column 1 # 2 # 3 # 4 #
|
|
|
|
select @@version, @@version_comment, @@version_compile_machine,
|
|
|
|
@@version_compile_os;
|
|
|
|
|
2006-05-08 14:59:29 +02:00
|
|
|
#
|
Bug #1039: tmpdir and datadir not available via @@ system variable syntax
Bug #19606: ssl variables are not displayed in show variables
Bug #19616: log_queries_not_using_indexes is not listed in show variables
Make basedir, datadir, tmpdir, log_queries_not_using_indexes, ssl_ca,
ssl_capath, ssl_cert, ssl_cipher, and ssl_key all available both from
SHOW VARIABLES and as @@variables.
As a side-effect of this change, log_queries_not_using_indexes can
be changed at runtime (but only globally, not per-connection).
include/sslopt-longopts.h:
Put options in alphabetical order
include/sslopt-vars.h:
Allow define of SSL_VARS_NOT_STATIC to prevent variables from not being
made static.
mysql-test/r/variables.result:
Add new results
mysql-test/t/variables.test:
Add new regression tests
sql/mysql_priv.h:
Add extern for opt_log_queries_not_using_indexes
sql/mysqld.cc:
Handle opt_log_queries_not_using_indexes as extern, and define
SSL_VARS_NO_STATIC so they can be accessed outside of mysqld.cc
sql/set_var.cc:
Handle basedir, datadir, tmpdir, log_queries_not_using_indexes, and
various ssl settings so that they are accessible as server variables
and listed in SHOW VARIABLES.
sql/set_var.h:
Add new sys_var_constr_str_ptr class, for when we have a system variable
that is only set via the command-line that is a pointer to a string.
2006-05-09 01:38:45 +02:00
|
|
|
# Bug #1039: make tmpdir and datadir available as @@variables (also included
|
|
|
|
# basedir)
|
|
|
|
#
|
|
|
|
# Don't actually output, since it depends on the system
|
|
|
|
--replace_column 1 # 2 # 3 #
|
|
|
|
select @@basedir, @@datadir, @@tmpdir;
|
|
|
|
--replace_column 2 #
|
|
|
|
show variables like 'basedir';
|
|
|
|
--replace_column 2 #
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'basedir';
|
|
|
|
--replace_column 2 #
|
Bug #1039: tmpdir and datadir not available via @@ system variable syntax
Bug #19606: ssl variables are not displayed in show variables
Bug #19616: log_queries_not_using_indexes is not listed in show variables
Make basedir, datadir, tmpdir, log_queries_not_using_indexes, ssl_ca,
ssl_capath, ssl_cert, ssl_cipher, and ssl_key all available both from
SHOW VARIABLES and as @@variables.
As a side-effect of this change, log_queries_not_using_indexes can
be changed at runtime (but only globally, not per-connection).
include/sslopt-longopts.h:
Put options in alphabetical order
include/sslopt-vars.h:
Allow define of SSL_VARS_NOT_STATIC to prevent variables from not being
made static.
mysql-test/r/variables.result:
Add new results
mysql-test/t/variables.test:
Add new regression tests
sql/mysql_priv.h:
Add extern for opt_log_queries_not_using_indexes
sql/mysqld.cc:
Handle opt_log_queries_not_using_indexes as extern, and define
SSL_VARS_NO_STATIC so they can be accessed outside of mysqld.cc
sql/set_var.cc:
Handle basedir, datadir, tmpdir, log_queries_not_using_indexes, and
various ssl settings so that they are accessible as server variables
and listed in SHOW VARIABLES.
sql/set_var.h:
Add new sys_var_constr_str_ptr class, for when we have a system variable
that is only set via the command-line that is a pointer to a string.
2006-05-09 01:38:45 +02:00
|
|
|
show variables like 'datadir';
|
|
|
|
--replace_column 2 #
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'datadir';
|
|
|
|
--replace_column 2 #
|
Bug #1039: tmpdir and datadir not available via @@ system variable syntax
Bug #19606: ssl variables are not displayed in show variables
Bug #19616: log_queries_not_using_indexes is not listed in show variables
Make basedir, datadir, tmpdir, log_queries_not_using_indexes, ssl_ca,
ssl_capath, ssl_cert, ssl_cipher, and ssl_key all available both from
SHOW VARIABLES and as @@variables.
As a side-effect of this change, log_queries_not_using_indexes can
be changed at runtime (but only globally, not per-connection).
include/sslopt-longopts.h:
Put options in alphabetical order
include/sslopt-vars.h:
Allow define of SSL_VARS_NOT_STATIC to prevent variables from not being
made static.
mysql-test/r/variables.result:
Add new results
mysql-test/t/variables.test:
Add new regression tests
sql/mysql_priv.h:
Add extern for opt_log_queries_not_using_indexes
sql/mysqld.cc:
Handle opt_log_queries_not_using_indexes as extern, and define
SSL_VARS_NO_STATIC so they can be accessed outside of mysqld.cc
sql/set_var.cc:
Handle basedir, datadir, tmpdir, log_queries_not_using_indexes, and
various ssl settings so that they are accessible as server variables
and listed in SHOW VARIABLES.
sql/set_var.h:
Add new sys_var_constr_str_ptr class, for when we have a system variable
that is only set via the command-line that is a pointer to a string.
2006-05-09 01:38:45 +02:00
|
|
|
show variables like 'tmpdir';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
--replace_column 2 #
|
|
|
|
select * from information_schema.session_variables where variable_name like 'tmpdir';
|
Bug #1039: tmpdir and datadir not available via @@ system variable syntax
Bug #19606: ssl variables are not displayed in show variables
Bug #19616: log_queries_not_using_indexes is not listed in show variables
Make basedir, datadir, tmpdir, log_queries_not_using_indexes, ssl_ca,
ssl_capath, ssl_cert, ssl_cipher, and ssl_key all available both from
SHOW VARIABLES and as @@variables.
As a side-effect of this change, log_queries_not_using_indexes can
be changed at runtime (but only globally, not per-connection).
include/sslopt-longopts.h:
Put options in alphabetical order
include/sslopt-vars.h:
Allow define of SSL_VARS_NOT_STATIC to prevent variables from not being
made static.
mysql-test/r/variables.result:
Add new results
mysql-test/t/variables.test:
Add new regression tests
sql/mysql_priv.h:
Add extern for opt_log_queries_not_using_indexes
sql/mysqld.cc:
Handle opt_log_queries_not_using_indexes as extern, and define
SSL_VARS_NO_STATIC so they can be accessed outside of mysqld.cc
sql/set_var.cc:
Handle basedir, datadir, tmpdir, log_queries_not_using_indexes, and
various ssl settings so that they are accessible as server variables
and listed in SHOW VARIABLES.
sql/set_var.h:
Add new sys_var_constr_str_ptr class, for when we have a system variable
that is only set via the command-line that is a pointer to a string.
2006-05-09 01:38:45 +02:00
|
|
|
|
|
|
|
#
|
|
|
|
# Bug #19606: make ssl settings available via SHOW VARIABLES and @@variables
|
|
|
|
#
|
|
|
|
# Don't actually output, since it depends on the system
|
|
|
|
--replace_column 1 # 2 # 3 # 4 # 5 #
|
|
|
|
select @@ssl_ca, @@ssl_capath, @@ssl_cert, @@ssl_cipher, @@ssl_key;
|
|
|
|
--replace_column 2 #
|
|
|
|
show variables like 'ssl%';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
--replace_column 2 #
|
2007-03-02 17:43:45 +01:00
|
|
|
select * from information_schema.session_variables where variable_name like 'ssl%' order by 1;
|
Bug #1039: tmpdir and datadir not available via @@ system variable syntax
Bug #19606: ssl variables are not displayed in show variables
Bug #19616: log_queries_not_using_indexes is not listed in show variables
Make basedir, datadir, tmpdir, log_queries_not_using_indexes, ssl_ca,
ssl_capath, ssl_cert, ssl_cipher, and ssl_key all available both from
SHOW VARIABLES and as @@variables.
As a side-effect of this change, log_queries_not_using_indexes can
be changed at runtime (but only globally, not per-connection).
include/sslopt-longopts.h:
Put options in alphabetical order
include/sslopt-vars.h:
Allow define of SSL_VARS_NOT_STATIC to prevent variables from not being
made static.
mysql-test/r/variables.result:
Add new results
mysql-test/t/variables.test:
Add new regression tests
sql/mysql_priv.h:
Add extern for opt_log_queries_not_using_indexes
sql/mysqld.cc:
Handle opt_log_queries_not_using_indexes as extern, and define
SSL_VARS_NO_STATIC so they can be accessed outside of mysqld.cc
sql/set_var.cc:
Handle basedir, datadir, tmpdir, log_queries_not_using_indexes, and
various ssl settings so that they are accessible as server variables
and listed in SHOW VARIABLES.
sql/set_var.h:
Add new sys_var_constr_str_ptr class, for when we have a system variable
that is only set via the command-line that is a pointer to a string.
2006-05-09 01:38:45 +02:00
|
|
|
|
|
|
|
#
|
|
|
|
# Bug #19616: make log_queries_not_using_indexes available in SHOW VARIABLES
|
|
|
|
# and as @@log_queries_not_using_indexes
|
|
|
|
#
|
|
|
|
select @@log_queries_not_using_indexes;
|
|
|
|
show variables like 'log_queries_not_using_indexes';
|
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
mysql-test/r/information_schema.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/information_schema_db.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed test cases result (changes are due to the new tables added).
mysql-test/r/status.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added testcases.
mysql-test/r/variables.result:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Fixed results for added test cases.
mysql-test/t/status.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
mysql-test/t/variables.test:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Added test cases.
sql/sql_show.cc:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
Also, show_status_array(): argument 'ucase_names' is added (true means that
all variable names are to be converted to upper case).
sql/table.h:
WL#3247,#3248: Adding [GLOBAL|SESSION]_STATUS and [GLOBAL|SESSION]_VARIABLES
tables to INFORMATION_SCHEMA.
Implementation of the new I_S tables.
2006-09-14 01:37:40 +02:00
|
|
|
select * from information_schema.session_variables where variable_name like 'log_queries_not_using_indexes';
|
Bug #1039: tmpdir and datadir not available via @@ system variable syntax
Bug #19606: ssl variables are not displayed in show variables
Bug #19616: log_queries_not_using_indexes is not listed in show variables
Make basedir, datadir, tmpdir, log_queries_not_using_indexes, ssl_ca,
ssl_capath, ssl_cert, ssl_cipher, and ssl_key all available both from
SHOW VARIABLES and as @@variables.
As a side-effect of this change, log_queries_not_using_indexes can
be changed at runtime (but only globally, not per-connection).
include/sslopt-longopts.h:
Put options in alphabetical order
include/sslopt-vars.h:
Allow define of SSL_VARS_NOT_STATIC to prevent variables from not being
made static.
mysql-test/r/variables.result:
Add new results
mysql-test/t/variables.test:
Add new regression tests
sql/mysql_priv.h:
Add extern for opt_log_queries_not_using_indexes
sql/mysqld.cc:
Handle opt_log_queries_not_using_indexes as extern, and define
SSL_VARS_NO_STATIC so they can be accessed outside of mysqld.cc
sql/set_var.cc:
Handle basedir, datadir, tmpdir, log_queries_not_using_indexes, and
various ssl settings so that they are accessible as server variables
and listed in SHOW VARIABLES.
sql/set_var.h:
Add new sys_var_constr_str_ptr class, for when we have a system variable
that is only set via the command-line that is a pointer to a string.
2006-05-09 01:38:45 +02:00
|
|
|
|
2006-08-15 18:41:21 +02:00
|
|
|
#
|
|
|
|
# Bug#20908: Crash if select @@""
|
|
|
|
#
|
|
|
|
--error ER_PARSE_ERROR
|
|
|
|
select @@"";
|
|
|
|
--error ER_PARSE_ERROR
|
|
|
|
select @@&;
|
|
|
|
--error ER_PARSE_ERROR
|
|
|
|
select @@@;
|
|
|
|
|
2007-02-20 16:24:38 +01:00
|
|
|
#
|
|
|
|
# Bug#20166 mysql-test-run.pl does not test system privilege tables creation
|
|
|
|
#
|
|
|
|
# Don't actually output, since it depends on the system
|
|
|
|
--replace_column 1 #
|
|
|
|
select @@hostname;
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2007-02-20 16:24:38 +01:00
|
|
|
set @@hostname= "anothername";
|
|
|
|
--replace_column 2 #
|
|
|
|
show variables like 'hostname';
|
|
|
|
|
2009-12-17 12:45:13 +01:00
|
|
|
--echo #
|
|
|
|
--echo # BUG#37408 - Compressed MyISAM files should not require/use mmap()
|
|
|
|
--echo #
|
|
|
|
--echo # Test 'myisam_mmap_size' option is not dynamic
|
2009-02-02 23:30:02 +01:00
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
2009-12-17 12:45:13 +01:00
|
|
|
SET @@myisam_mmap_size= 500M;
|
2010-06-04 16:10:22 +02:00
|
|
|
|
|
|
|
|
|
|
|
--echo #
|
|
|
|
--echo # Bug #52315: utc_date() crashes when system time > year 2037
|
|
|
|
--echo #
|
|
|
|
|
|
|
|
--error 0, ER_UNKNOWN_ERROR
|
|
|
|
SET TIMESTAMP=2*1024*1024*1024;
|
|
|
|
--echo #Should not crash
|
|
|
|
--disable_result_log
|
|
|
|
SELECT UTC_DATE();
|
|
|
|
--enable_result_log
|
|
|
|
SET TIMESTAMP=DEFAULT;
|
2007-10-25 12:02:27 +02:00
|
|
|
|
|
|
|
|
2006-04-26 18:21:53 +02:00
|
|
|
--echo End of 5.0 tests
|
2006-05-20 01:17:24 +02:00
|
|
|
|
2009-03-16 16:11:45 +01:00
|
|
|
#
|
|
|
|
# Bug#36446: Attempt to set @@join_buffer_size to its minimum value
|
|
|
|
# produces spurious warning
|
|
|
|
#
|
|
|
|
|
|
|
|
# set to 1 so mysqld will correct to minimum (+ warn)
|
|
|
|
set join_buffer_size=1;
|
|
|
|
# save minimum
|
|
|
|
set @save_join_buffer_size=@@join_buffer_size;
|
|
|
|
# set minimum
|
|
|
|
set join_buffer_size=@save_join_buffer_size;
|
|
|
|
|
2006-05-20 01:17:24 +02:00
|
|
|
# This is at the very after the versioned tests, since it involves doing
|
|
|
|
# cleanup
|
|
|
|
#
|
|
|
|
# Bug #19263: variables.test doesn't clean up after itself (II/II --
|
|
|
|
# restore)
|
2006-05-08 14:59:29 +02:00
|
|
|
#
|
|
|
|
set global binlog_cache_size =@my_binlog_cache_size;
|
|
|
|
set global connect_timeout =@my_connect_timeout;
|
|
|
|
set global delayed_insert_timeout =@my_delayed_insert_timeout;
|
|
|
|
set global delayed_queue_size =@my_delayed_queue_size;
|
|
|
|
set global flush =@my_flush;
|
|
|
|
set global flush_time =@my_flush_time;
|
|
|
|
set global key_buffer_size =@my_key_buffer_size;
|
2008-09-10 12:50:39 +02:00
|
|
|
set global max_binlog_cache_size =@my_max_binlog_cache_size;
|
2006-05-08 14:59:29 +02:00
|
|
|
set global max_binlog_size =@my_max_binlog_size;
|
|
|
|
set global max_connect_errors =@my_max_connect_errors;
|
2007-03-01 14:16:38 +01:00
|
|
|
set global max_connections =@my_max_connections;
|
2006-05-08 14:59:29 +02:00
|
|
|
set global max_delayed_threads =@my_max_delayed_threads;
|
|
|
|
set global max_heap_table_size =@my_max_heap_table_size;
|
|
|
|
set global max_insert_delayed_threads=@my_max_insert_delayed_threads;
|
|
|
|
set global max_join_size =@my_max_join_size;
|
2007-03-01 14:16:38 +01:00
|
|
|
set global max_user_connections =default;
|
|
|
|
set global max_write_lock_count =default;
|
2006-05-08 14:59:29 +02:00
|
|
|
set global myisam_data_pointer_size =@my_myisam_data_pointer_size;
|
2008-09-10 12:50:39 +02:00
|
|
|
set global myisam_max_sort_file_size =@my_myisam_max_sort_file_size;
|
2006-05-08 14:59:29 +02:00
|
|
|
set global net_buffer_length =@my_net_buffer_length;
|
|
|
|
set global net_write_timeout =@my_net_write_timeout;
|
|
|
|
set global net_read_timeout =@my_net_read_timeout;
|
|
|
|
set global rpl_recovery_rank =@my_rpl_recovery_rank;
|
|
|
|
set global server_id =@my_server_id;
|
|
|
|
set global slow_launch_time =@my_slow_launch_time;
|
|
|
|
set global storage_engine =@my_storage_engine;
|
|
|
|
set global thread_cache_size =@my_thread_cache_size;
|
2009-02-15 11:58:34 +01:00
|
|
|
set global max_allowed_packet = default;
|
2009-02-19 10:01:25 +01:00
|
|
|
set global delay_key_write =@my_delay_key_write;
|
2009-03-16 16:11:45 +01:00
|
|
|
set global join_buffer_size =@my_join_buffer_size;
|
|
|
|
|
2007-06-06 12:59:20 +02:00
|
|
|
#
|
|
|
|
# Bug#28580 Repeatation of status variables
|
|
|
|
#
|
|
|
|
--replace_column 2 #
|
|
|
|
show global variables where Variable_name='table_definition_cache' or
|
|
|
|
Variable_name='table_lock_wait_timeout';
|
2008-03-28 16:10:04 +01:00
|
|
|
|
|
|
|
###########################################################################
|
|
|
|
|
|
|
|
--echo
|
|
|
|
--echo # --
|
|
|
|
--echo # -- Bug#34820: log_output can be set to illegal value.
|
|
|
|
--echo # --
|
|
|
|
|
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
|
|
|
SET GLOBAL log_output = '';
|
|
|
|
|
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
|
|
|
SET GLOBAL log_output = 0;
|
|
|
|
|
|
|
|
--echo
|
|
|
|
--echo # -- End of Bug#34820.
|
|
|
|
|
2008-11-22 00:22:21 +01:00
|
|
|
#
|
|
|
|
# Bug#28234 - global/session scope - documentation vs implementation
|
|
|
|
#
|
|
|
|
--echo
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'ft_max_word_len';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.ft_max_word_len;
|
|
|
|
SELECT @@global.ft_max_word_len;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.ft_max_word_len= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.ft_max_word_len= 7;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'ft_min_word_len';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.ft_min_word_len;
|
|
|
|
SELECT @@global.ft_min_word_len;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.ft_min_word_len= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.ft_min_word_len= 7;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'ft_query_expansion_limit';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.ft_query_expansion_limit;
|
|
|
|
SELECT @@global.ft_query_expansion_limit;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.ft_query_expansion_limit= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.ft_query_expansion_limit= 7;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'ft_stopword_file';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.ft_stopword_file;
|
|
|
|
SELECT @@global.ft_stopword_file;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.ft_stopword_file= 'x';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.ft_stopword_file= 'x';
|
|
|
|
#
|
|
|
|
# Additional variables fixed.
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'back_log';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.back_log;
|
|
|
|
SELECT @@global.back_log;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.back_log= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.back_log= 7;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'large_files_support';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.large_files_support;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.large_files_support;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.large_files_support= true;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.large_files_support= true;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'character_sets_dir';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.character_sets_dir;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.character_sets_dir;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.character_sets_dir= 'x';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.character_sets_dir= 'x';
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'init_file';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.init_file;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.init_file;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.init_file= 'x';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.init_file= 'x';
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'language';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.language;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.language;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.language= 'x';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.language= 'x';
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'large_page_size';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.large_page_size;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.large_page_size;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.large_page_size= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.large_page_size= 7;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'large_pages';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.large_pages;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.large_pages;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.large_pages= true;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.large_pages= true;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'log_bin';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.log_bin;
|
|
|
|
SELECT @@global.log_bin;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.log_bin= true;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.log_bin= true;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'log_error';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.log_error;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.log_error;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.log_error= 'x';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.log_error= 'x';
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'lower_case_file_system';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.lower_case_file_system;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.lower_case_file_system;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.lower_case_file_system= true;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.lower_case_file_system= true;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'lower_case_table_names';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.lower_case_table_names;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.lower_case_table_names;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.lower_case_table_names= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.lower_case_table_names= 7;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'myisam_recover_options';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.myisam_recover_options;
|
|
|
|
SELECT @@global.myisam_recover_options;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.myisam_recover_options= 'x';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.myisam_recover_options= 'x';
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'open_files_limit';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.open_files_limit;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.open_files_limit;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.open_files_limit= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.open_files_limit= 7;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'pid_file';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.pid_file;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.pid_file;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.pid_file= 'x';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.pid_file= 'x';
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'plugin_dir';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.plugin_dir;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.plugin_dir;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.plugin_dir= 'x';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.plugin_dir= 'x';
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'port';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.port;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.port;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.port= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.port= 7;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'protocol_version';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.protocol_version;
|
|
|
|
SELECT @@global.protocol_version;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.protocol_version= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.protocol_version= 7;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'skip_external_locking';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.skip_external_locking;
|
|
|
|
SELECT @@global.skip_external_locking;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.skip_external_locking= true;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.skip_external_locking= true;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'skip_networking';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.skip_networking;
|
|
|
|
SELECT @@global.skip_networking;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.skip_networking= true;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.skip_networking= true;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
SHOW VARIABLES like 'skip_show_database';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.skip_show_database;
|
|
|
|
SELECT @@global.skip_show_database;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.skip_show_database= true;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.skip_show_database= true;
|
|
|
|
#
|
|
|
|
--echo #
|
|
|
|
--replace_column 2 #
|
|
|
|
SHOW VARIABLES like 'thread_stack';
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SELECT @@session.thread_stack;
|
|
|
|
--replace_column 1 #
|
|
|
|
SELECT @@global.thread_stack;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@session.thread_stack= 7;
|
|
|
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
|
|
SET @@global.thread_stack= 7;
|
|
|
|
#
|
2009-02-03 02:43:32 +01:00
|
|
|
|
|
|
|
#
|
|
|
|
# Bug #40657 - assertion with out of range variables and traditional sql_mode
|
|
|
|
#
|
|
|
|
|
|
|
|
SELECT @@global.expire_logs_days INTO @old_eld;
|
|
|
|
|
|
|
|
SET GLOBAL expire_logs_days = -1;
|
|
|
|
--echo needs to've been adjusted (0)
|
|
|
|
SELECT @@global.expire_logs_days;
|
|
|
|
|
|
|
|
SET GLOBAL expire_logs_days = 11;
|
|
|
|
SET @old_mode=@@sql_mode;
|
|
|
|
SET SESSION sql_mode = 'TRADITIONAL';
|
|
|
|
--error ER_WRONG_VALUE_FOR_VAR
|
|
|
|
SET GLOBAL expire_logs_days = 100;
|
|
|
|
--echo needs to be unchanged (11)
|
|
|
|
SELECT @@global.expire_logs_days;
|
|
|
|
SET SESSION sql_mode = @old_mode;
|
|
|
|
|
|
|
|
SET GLOBAL expire_logs_days = 100;
|
|
|
|
--echo needs to've been adjusted (99)
|
|
|
|
SELECT @@global.expire_logs_days;
|
|
|
|
|
|
|
|
SET GLOBAL expire_logs_days = 11;
|
|
|
|
SET GLOBAL expire_logs_days = 99;
|
|
|
|
--echo needs to pass with no warnings (99)
|
|
|
|
SELECT @@global.expire_logs_days;
|
|
|
|
|
|
|
|
# cleanup
|
|
|
|
SET GLOBAL expire_logs_days = @old_eld;
|
|
|
|
|
2009-03-11 23:32:53 +01:00
|
|
|
# show that warning uses underscore (sysvar-name), not hyphens (option-name)
|
|
|
|
SET GLOBAL auto_increment_offset=-1;
|
|
|
|
SET GLOBAL auto_increment_offset=0;
|
|
|
|
|
|
|
|
|
2009-02-03 02:43:32 +01:00
|
|
|
|
2009-03-05 12:34:02 +01:00
|
|
|
#
|
|
|
|
# Bug#41030 Wrong meta data (incorrect fieldlen)
|
|
|
|
#
|
2009-03-06 16:11:34 +01:00
|
|
|
|
2009-03-05 12:34:02 +01:00
|
|
|
--enable_metadata
|
|
|
|
select @@storage_engine;
|
|
|
|
--disable_metadata
|
2009-03-06 16:11:34 +01:00
|
|
|
|
2009-03-11 21:30:56 +01:00
|
|
|
#
|
|
|
|
# Bug#36540: CREATE EVENT and ALTER EVENT statements fail with large server_id
|
|
|
|
#
|
|
|
|
|
|
|
|
SET @old_server_id = @@GLOBAL.server_id;
|
|
|
|
SET GLOBAL server_id = (1 << 32) - 1;
|
|
|
|
SELECT @@GLOBAL.server_id;
|
|
|
|
SET GLOBAL server_id = (1 << 32);
|
|
|
|
SELECT @@GLOBAL.server_id;
|
|
|
|
SET GLOBAL server_id = (1 << 60);
|
|
|
|
SELECT @@GLOBAL.server_id;
|
|
|
|
SET GLOBAL server_id = 0;
|
|
|
|
SELECT @@GLOBAL.server_id;
|
|
|
|
SET GLOBAL server_id = -1;
|
|
|
|
SELECT @@GLOBAL.server_id;
|
|
|
|
SET GLOBAL server_id = @old_server_id;
|
2009-02-03 02:43:32 +01:00
|
|
|
|
Bug #42778: delete order by null global variable causes
assertion .\filesort.cc, line 797
A query with the "ORDER BY @@some_system_variable" clause,
where @@some_system_variable is NULL, causes assertion
failure in the filesort procedures.
The reason of the failure is in the value of
Item_func_get_system_var::maybe_null: it was unconditionally
set to false even if the value of a variable was NULL.
mysql-test/r/variables.result:
Added test case for bug #42778.
mysql-test/suite/sys_vars/r/innodb_data_home_dir_basic.result:
Updated test case for bug #42778:
system variables were NOT NULL, now they are nullable.
mysql-test/suite/sys_vars/r/innodb_flush_method_basic.result:
Updated test case for bug #42778:
system variables were NOT NULL, now they are nullable.
mysql-test/suite/sys_vars/r/rpl_init_slave_func.result:
Updated test case for bug #42778:
system variables were NOT NULL, now they are nullable.
mysql-test/suite/sys_vars/r/ssl_capath_basic.result:
Updated test case for bug #42778:
system variables were NOT NULL, now they are nullable.
mysql-test/suite/sys_vars/r/ssl_cipher_basic.result:
Updated test case for bug #42778:
system variables were NOT NULL, now they are nullable.
mysql-test/suite/sys_vars/t/innodb_data_home_dir_basic.test:
Updated test case for bug #42778:
system variables were NOT NULL, now they are nullable.
mysql-test/suite/sys_vars/t/innodb_flush_method_basic.test:
Updated test case for bug #42778:
system variables were NOT NULL, now they are nullable.
mysql-test/suite/sys_vars/t/ssl_capath_basic.test:
Updated test case for bug #42778:
system variables were NOT NULL, now they are nullable.
mysql-test/suite/sys_vars/t/ssl_cipher_basic.test:
Updated test case for bug #42778:
system variables were NOT NULL, now they are nullable.
mysql-test/t/variables.test:
Added test case for bug #42778.
sql/item.cc:
Bug #42778: delete order by null global variable causes
assertion .\filesort.cc, line 797
The longlong_from_string_with_check function has been modified
to skip unwanted warnings: now it uses the THD::no_errors
flag to suppress warnings.
The Item_func_get_system_var::update_null_value method
sets the no_error flag.
sql/item_func.cc:
Bug #42778: delete order by null global variable causes
assertion .\filesort.cc, line 797
1. The Item_func_get_system_var::fix_length_and_dec method
has been modified to make system variables truly nullable.
2. The Item_func_get_system_var::update_null_value method
method has been overloaded with a simple wrapper (like
Item_field::update_null_value) to suppress unwanted warnings
from Item_func_get_system_var::val_int() calls on non-numeric
variable values: the Item_func_get_system_var::update_null_value
method sets and restores THD::no_errors flag for a nested
call of the longlong_from_string_with_check function.
sql/item_func.h:
Bug #42778: delete order by null global variable causes
assertion .\filesort.cc, line 797
The Item_func_get_system_var::update_null_value method
method has been overloaded.
2009-05-21 22:22:46 +02:00
|
|
|
#
|
|
|
|
# Bug #42778: delete order by null global variable causes
|
|
|
|
# assertion .\filesort.cc, line 797
|
|
|
|
#
|
|
|
|
|
|
|
|
SELECT @@GLOBAL.INIT_FILE, @@GLOBAL.INIT_FILE IS NULL;
|
|
|
|
|
|
|
|
CREATE TABLE t1 (a INT);
|
|
|
|
INSERT INTO t1 VALUES ();
|
|
|
|
SET @bug42778= @@sql_safe_updates;
|
|
|
|
SET @@sql_safe_updates= 0;
|
|
|
|
DELETE FROM t1 ORDER BY (@@GLOBAL.INIT_FILE) ASC LIMIT 10;
|
|
|
|
SET @@sql_safe_updates= @bug42778;
|
|
|
|
|
|
|
|
DROP TABLE t1;
|
|
|
|
|
2009-05-15 13:03:08 +02:00
|
|
|
--echo #
|
|
|
|
--echo # BUG#10206 - InnoDB: Transaction requiring Max_BinLog_Cache_size > 4GB always rollsback
|
|
|
|
--echo #
|
|
|
|
|
|
|
|
SET @old_max_binlog_cache_size = @@GLOBAL.max_binlog_cache_size;
|
|
|
|
--echo # Set the max_binlog_cache_size to size more than 4GB.
|
|
|
|
SET GLOBAL max_binlog_cache_size = 5 * 1024 * 1024 * 1024;
|
|
|
|
SELECT @@GLOBAL.max_binlog_cache_size;
|
|
|
|
SET GLOBAL max_binlog_cache_size = @old_max_binlog_cache_size;
|
2010-03-31 15:12:37 +02:00
|
|
|
|
|
|
|
--echo #
|
|
|
|
--echo # Bug #37168 : Missing variable - skip_name_resolve
|
|
|
|
--echo #
|
|
|
|
|
|
|
|
SELECT @@skip_name_resolve;
|
|
|
|
SHOW VARIABLES LIKE 'skip_name_resolve';
|
|
|
|
|
2009-02-03 02:43:32 +01:00
|
|
|
--echo End of 5.1 tests
|