~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/t/variables.test

Moved the last of the libdrizzleclient calls into Protocol.

Show diffs side-by-side

added added

removed removed

Lines of Context:
8
8
#
9
9
# Bug #19263: variables.test doesn't clean up after itself (I/II -- save)
10
10
#
11
 
set @my_binlog_cache_size         =@@global.binlog_cache_size;
12
11
set @my_connect_timeout           =@@global.connect_timeout;
13
12
set @my_flush                     =@@global.flush;
14
 
set @my_flush_time                =@@global.flush_time;
15
13
set @my_key_buffer_size           =@@global.key_buffer_size;
16
 
set @my_max_binlog_cache_size     =@@global.max_binlog_cache_size;
17
 
set @my_max_binlog_size           =@@global.max_binlog_size;
18
14
set @my_max_connect_errors        =@@global.max_connect_errors;
19
 
set @my_max_connections           =@@global.max_connections;
20
15
set @my_max_heap_table_size       =@@global.max_heap_table_size;
21
16
set @my_max_join_size             =@@global.max_join_size;
22
 
set @my_myisam_data_pointer_size  =@@global.myisam_data_pointer_size;
23
17
set @my_net_buffer_length         =@@global.net_buffer_length;
24
18
set @my_net_write_timeout         =@@global.net_write_timeout;
25
19
set @my_net_read_timeout          =@@global.net_read_timeout;
26
 
set @my_rpl_recovery_rank         =@@global.rpl_recovery_rank;
27
20
set @my_server_id                 =@@global.server_id;
28
21
set @my_slow_launch_time          =@@global.slow_launch_time;
29
22
set @my_storage_engine            =@@global.storage_engine;
30
 
set @my_thread_cache_size         =@@global.thread_cache_size;
31
23
 
32
24
# case insensitivity tests (new in 5.0)
33
25
set @`test`=1;
61
53
# Test problem with WHERE and variables
62
54
#
63
55
 
64
 
CREATE TABLE t1 (c_id INT(4) NOT NULL, c_name CHAR(20), c_country CHAR(3), PRIMARY KEY(c_id));
 
56
CREATE TABLE t1 (c_id INT NOT NULL, c_name VARCHAR(250), c_country VARCHAR(250), PRIMARY KEY(c_id));
65
57
INSERT INTO t1 VALUES (1,'Bozo','USA'),(2,'Ronald','USA'),(3,'Kinko','IRE'),(4,'Mr. Floppy','GB');
66
58
SELECT @min_cid:=min(c_id), @max_cid:=max(c_id) from t1;
67
59
SELECT * FROM t1 WHERE c_id=@min_cid OR c_id=@max_cid;
103
95
select @@IDENTITY,last_insert_id(), @@identity;
104
96
explain extended select @@IDENTITY,last_insert_id(), @@identity;
105
97
 
106
 
set big_tables=OFF, big_tables=ON, big_tables=0, big_tables=1, big_tables="OFF", big_tables="ON";
107
 
 
108
 
set global concurrent_insert=2;
109
 
show variables like 'concurrent_insert';
110
 
select * from information_schema.session_variables where variable_name like 'concurrent_insert';
111
 
set global concurrent_insert=1;
112
 
show variables like 'concurrent_insert';
113
 
select * from information_schema.session_variables where variable_name like 'concurrent_insert';
114
 
set global concurrent_insert=0;
115
 
show variables like 'concurrent_insert';
116
 
select * from information_schema.session_variables where variable_name like 'concurrent_insert';
117
 
# no global value set global concurrent_insert=DEFAULT;
118
 
select @@concurrent_insert;
119
 
 
120
98
set global timed_mutexes=ON;
121
99
show variables like 'timed_mutexes';
122
100
select * from information_schema.session_variables where variable_name like 'timed_mutexes';
159
137
show variables like 'net_buffer_length';
160
138
select * from information_schema.session_variables where variable_name like 'net_buffer_length';
161
139
 
162
 
set character set cp1251_koi8;
163
 
show variables like "character_set_client";
164
 
select * from information_schema.session_variables where variable_name like 'character_set_client';
165
 
select @@timestamp>0;
166
 
 
167
 
set @@rand_seed1=10000000,@@rand_seed2=1000000;
168
 
select ROUND(RAND(),5);
169
 
 
170
140
show variables like '%alloc%';
171
141
select * from information_schema.session_variables where variable_name like '%alloc%' order by 1;
172
142
set @@range_alloc_block_size=1024*16;
192
162
 
193
163
# The following should give errors
194
164
 
195
 
--error 1231
196
 
set big_tables=OFFF;
197
 
--error 1231
198
 
set big_tables="OFFF";
199
165
--error 1193
200
166
set unknown_variable=1;
201
167
--error 1232
204
170
set storage_engine=UNKNOWN_TABLE_TYPE;
205
171
--error 1230
206
172
set GLOBAL storage_engine=DEFAULT;
207
 
--error 1115
208
 
set character_set_client=UNKNOWN_CHARACTER_SET;
209
 
--error 1273
210
 
set collation_connection=UNKNOWN_COLLATION;
211
 
--error 1231
212
 
set character_set_client=NULL;
213
 
--error 1231
214
 
set collation_connection=NULL;
215
173
--error 1228
216
174
set global autocommit=1;
217
175
--error 1238
219
177
--error 1238 
220
178
set @@version='';
221
179
--error 1229
222
 
set @@concurrent_insert=1;
223
 
--error 1228
224
 
set @@global.sql_auto_is_null=1;
225
 
--error 1238
226
 
select @@global.sql_auto_is_null;
227
 
--error 1229
228
180
set myisam_max_sort_file_size=100;
229
181
--error 1231
230
182
set @@SQL_WARNINGS=NULL;
232
184
# Test setting all variables
233
185
 
234
186
set autocommit=1;
235
 
set big_tables=1;
236
 
select @@autocommit, @@big_tables;
237
 
set global binlog_cache_size=100;
 
187
select @@autocommit;
238
188
set bulk_insert_buffer_size=100;
239
 
set character set cp1251_koi8;
240
 
set character set default;
241
 
set @@global.concurrent_insert=1;
242
189
set global connect_timeout=100;
243
190
select @@delay_key_write;
244
191
set global delay_key_write="OFF";
245
192
select @@delay_key_write;
246
193
set global delay_key_write=ALL;
247
 
select @@delay_key_write;
248
194
set global delay_key_write=1;
249
195
select @@delay_key_write;
250
 
set global flush=1;
251
 
set global flush_time=100;
252
 
set insert_id=1;
253
 
set interactive_timeout=100;
254
196
set join_buffer_size=100;
255
197
set last_insert_id=1;
256
 
set global local_infile=1;
257
 
set long_query_time=0.000001;
258
 
select @@long_query_time;
259
 
set long_query_time=100.000001;
260
 
select @@long_query_time;
261
 
set low_priority_updates=1;
262
198
set max_allowed_packet=100;
263
 
set global max_binlog_cache_size=100;
264
 
set global max_binlog_size=100;
265
199
set global max_connect_errors=100;
266
 
set global max_connections=100;
267
200
set max_heap_table_size=100;
268
201
set max_join_size=100;
269
202
set max_sort_length=100;
270
203
set max_tmp_tables=100;
271
 
set global max_user_connections=100;
272
 
select @@max_user_connections;
273
204
set global max_write_lock_count=100;
274
 
set myisam_sort_buffer_size=100;
 
205
set global myisam_sort_buffer_size=100;
275
206
set net_buffer_length=100;
276
207
set net_read_timeout=100;
277
208
set net_write_timeout=100;
278
209
set read_buffer_size=100;
279
210
set read_rnd_buffer_size=100;
280
 
set global rpl_recovery_rank=100;
281
211
set global server_id=100;
282
212
set global slow_launch_time=100;
283
213
set sort_buffer_size=100;
284
 
set @@max_sp_recursion_depth=10;
285
 
select @@max_sp_recursion_depth;
286
 
set @@max_sp_recursion_depth=0;
287
 
select @@max_sp_recursion_depth;
288
 
set sql_auto_is_null=1;
289
 
select @@sql_auto_is_null;
290
 
set @@sql_auto_is_null=0;
291
 
select @@sql_auto_is_null;
292
214
set sql_big_selects=1;
293
 
set sql_big_tables=1;
294
215
set sql_buffer_result=1;
295
 
set sql_log_bin=1;
296
 
set sql_log_off=1;
297
 
set sql_log_update=1;
298
 
set sql_low_priority_updates=1;
299
 
set sql_max_join_size=200;
300
 
select @@sql_max_join_size,@@max_join_size;
301
 
set sql_quote_show_create=1;
302
216
set sql_safe_updates=1;
303
217
set sql_select_limit=1;
304
218
# reset it, so later tests don't get confused
306
220
set sql_warnings=1;
307
221
set global table_open_cache=100;
308
222
set storage_engine=myisam;
309
 
set global thread_cache_size=100;
310
223
set timestamp=1, timestamp=default;
311
224
set tmp_table_size=100;
312
225
set tx_isolation="READ-COMMITTED";
313
226
set wait_timeout=100;
314
 
set log_warnings=1;
315
 
set global log_warnings=1;
316
 
 
317
 
#
318
 
# Bugs: #20392: INSERT_ID session variable has weird value
319
 
#
320
 
select @@session.insert_id;
321
 
set @save_insert_id=@@session.insert_id;
322
 
set session insert_id=20;
323
 
select @@session.insert_id;
324
 
 
325
 
set session last_insert_id=100;
326
 
select @@session.insert_id;
327
 
select @@session.last_insert_id;
328
 
select @@session.insert_id;
329
 
 
330
 
set @@session.insert_id=@save_insert_id;
331
 
select @@session.insert_id;
332
227
 
333
228
#
334
229
# key buffer
362
257
set global init_connect = NULL;
363
258
 
364
259
# Bug#3754 SET GLOBAL myisam_max_sort_file_size doesn't work as
365
 
# expected: check that there is no overflow when 64-bit unsigned
 
260
# expected: check that there is no overflow when 64-bit
366
261
# variables are set
367
262
 
368
263
set global myisam_max_sort_file_size=4294967296;
372
267
select * from information_schema.global_variables where variable_name like 'myisam_max_sort_file_size';
373
268
set global myisam_max_sort_file_size=default;
374
269
 
375
 
#
376
 
# swap
377
 
#
378
 
select @@global.max_user_connections,@@local.max_join_size;
379
 
set @svc=@@global.max_user_connections, @svj=@@local.max_join_size;
380
 
select @@global.max_user_connections,@@local.max_join_size;
381
 
set @@global.max_user_connections=111,@@local.max_join_size=222;
382
 
select @@global.max_user_connections,@@local.max_join_size;
383
 
set @@global.max_user_connections=@@local.max_join_size,@@local.max_join_size=@@global.max_user_connections;
384
 
select @@global.max_user_connections,@@local.max_join_size;
385
 
set @@global.max_user_connections=@svc, @@local.max_join_size=@svj;
386
 
select @@global.max_user_connections,@@local.max_join_size;
387
 
set @a=1, @b=2;
388
 
set @a=@b, @b=@a;
389
 
select @a, @b;
 
270
## Bug #311084
 
271
## swap
 
272
##
 
273
#select @@global.myisam_max_sort_file_size,@@local.max_join_size;
 
274
#set @svc=@@global.myisam_max_sort_file_size, @svj=@@local.max_join_size;
 
275
#select @@global.myisam_max_sort_file_size,@@local.max_join_size;
 
276
#set @@global.myisam_max_sort_file_size=111,@@local.max_join_size=222;
 
277
#select @@global.myisam_max_sort_file_size,@@local.max_join_size;
 
278
#set @@global.myisam_max_sort_file_size=@@local.max_join_size,@@local.max_join_size=@@global.myisam_max_sort_file_size;
 
279
#select @@global.myisam_max_sort_file_size,@@local.max_join_size;
 
280
#set @@global.myisam_max_sort_file_size=@svc, @@local.max_join_size=@svj;
 
281
#select @@global.myisam_max_sort_file_size,@@local.max_join_size;
 
282
#set @a=1, @b=2;
 
283
#set @a=@b, @b=@a;
 
284
#select @a, @b;
390
285
 
391
286
#
392
287
# Bug#2586:Disallow global/session/local as structured var. instance names
402
297
--error 1064
403
298
SELECT @@global.local.key_buffer_size;
404
299
 
405
 
# BUG#5135: cannot turn on log_warnings with SET in 4.1 (and 4.0)
406
 
set @tstlw = @@log_warnings;
407
 
show global variables like 'log_warnings';
408
 
select * from information_schema.global_variables where variable_name like 'log_warnings';
409
 
set global log_warnings = 0;
410
 
show global variables like 'log_warnings';
411
 
select * from information_schema.global_variables where variable_name like 'log_warnings';
412
 
set global log_warnings = 42;
413
 
show global variables like 'log_warnings';
414
 
select * from information_schema.global_variables where variable_name like 'log_warnings';
415
 
set global log_warnings = @tstlw;
416
 
show global variables like 'log_warnings';
417
 
select * from information_schema.global_variables where variable_name like 'log_warnings';
418
 
 
419
300
#
420
301
# BUG#4788 show create table provides incorrect statement
421
302
#
422
303
# What default width have numeric types?
423
304
create table t1 (
424
 
  c1 tinyint,
425
 
  c2 smallint,
426
 
  c3 mediumint,
 
305
  c1 int,
 
306
  c2 int,
 
307
  c3 int,
427
308
  c4 int,
428
309
  c5 bigint);
429
310
show create table t1;
435
316
show create table t1;
436
317
drop table t1;
437
318
 
438
 
 
439
 
#
440
 
# Bug #6993: myisam_data_pointer_size
441
 
# Wrong bug report, data pointer size must be restricted to 7,
442
 
# setting to 8 will not work on all computers, myisamchk and
443
 
# the server may see a wrong value, such as 0 or negative number
444
 
# if 8 bytes is set.
445
 
#
446
 
 
447
 
SET GLOBAL MYISAM_DATA_POINTER_SIZE= 7;
448
 
SHOW VARIABLES LIKE 'MYISAM_DATA_POINTER_SIZE';
449
 
SELECT * FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME LIKE 'MYISAM_DATA_POINTER_SIZE';
450
 
 
451
319
#
452
320
# Bug #6958: negative arguments to integer options wrap around
453
321
#
458
326
SET GLOBAL table_open_cache=DEFAULT;
459
327
 
460
328
#
461
 
# Bugs12363: character_set_results is nullable,
462
 
# but value_ptr returns string "NULL"
463
 
#
464
 
set character_set_results=NULL;
465
 
select ifnull(@@character_set_results,"really null");
466
 
set names latin1;
467
 
 
468
 
 
469
 
#
470
 
# Bug #9613: @@have_innodb
471
 
#
472
 
 
473
 
--replace_column 1 #
474
 
select @@have_innodb;
475
 
 
476
 
#
477
329
# Tests for lc_time_names
478
330
# Note, when adding new locales, please fix ID accordingly:
479
331
# - to test the last ID (currently 108)
582
434
#
583
435
# Bug #11775 Variable character_set_system does not exist (sometimes)
584
436
#
 
437
--error 1193
585
438
select @@character_set_system;
586
 
--error 1238
587
 
set global character_set_system = latin1;
 
439
--error 1193
 
440
set global character_set_system = utf8;
588
441
--error 1238
589
442
set @@global.version_compile_os='234';
590
443
 
591
444
#
592
 
# Check character_set_filesystem variable
 
445
# Check character_set_filesystem variable invalid for Drizzle
593
446
#
594
 
set character_set_filesystem=latin1;
595
 
select @@character_set_filesystem;
596
 
set @@global.character_set_filesystem=latin2;
597
 
set character_set_filesystem=latin1;
598
 
select @@character_set_filesystem;
599
 
set @@global.character_set_filesystem=latin2;
600
 
set character_set_filesystem=default;
601
 
select @@character_set_filesystem;
602
 
set @@global.character_set_filesystem=default;
603
 
select @@global.character_set_filesystem;
 
447
--error 1193
 
448
set @@global.character_set_filesystem=utf8;
 
449
--error 1193
 
450
set character_set_filesystem=utf8;
604
451
 
605
452
#
606
453
# Bug #17849: Show sql_big_selects in SHOW VARIABLES
608
455
set @old_sql_big_selects = @@sql_big_selects;
609
456
set @@sql_big_selects = 1;
610
457
show variables like 'sql_big_selects';
611
 
select * from information_schema.session_variables where variable_name like 'sql_big_selects';
 
458
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
459
#select * from information_schema.session_variables where variable_name like 'sql_big_selects';
612
460
set @@sql_big_selects = @old_sql_big_selects;
613
461
 
614
462
#
617
465
618
466
set @@sql_notes = 0, @@sql_warnings = 0;
619
467
show variables like 'sql_notes';
620
 
select * from information_schema.session_variables where variable_name like 'sql_notes';
 
468
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
469
#select * from information_schema.session_variables where variable_name like 'sql_notes';
621
470
show variables like 'sql_warnings';
622
 
select * from information_schema.session_variables where variable_name like 'sql_warnings';
 
471
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
472
#select * from information_schema.session_variables where variable_name like 'sql_warnings';
623
473
set @@sql_notes = 1, @@sql_warnings = 1;
624
474
show variables like 'sql_notes';
625
 
select * from information_schema.session_variables where variable_name like 'sql_notes';
 
475
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
476
#select * from information_schema.session_variables where variable_name like 'sql_notes';
626
477
show variables like 'sql_warnings';
627
 
select * from information_schema.session_variables where variable_name like 'sql_warnings';
628
 
 
629
 
#
630
 
# Bug #12792: @@system_time_zone is not SELECTable.
631
 
#
632
 
# Don't actually output, since it depends on the system
633
 
--replace_column 1 #
634
 
select @@system_time_zone;
 
478
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
479
#select * from information_schema.session_variables where variable_name like 'sql_warnings';
635
480
 
636
481
#
637
482
# Bug #15684: system variables cannot be SELECTed (e.g. @@version_comment)
651
496
--replace_column 2 #
652
497
show variables like 'basedir';
653
498
--replace_column 2 #
654
 
select * from information_schema.session_variables where variable_name like 'basedir';
 
499
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
500
#select * from information_schema.session_variables where variable_name like 'basedir';
655
501
--replace_column 2 #
656
502
show variables like 'datadir';
657
503
--replace_column 2 #
658
 
select * from information_schema.session_variables where variable_name like 'datadir';
 
504
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
505
#select * from information_schema.session_variables where variable_name like 'datadir';
659
506
--replace_column 2 #
660
507
show variables like 'tmpdir';
661
508
--replace_column 2 #
662
 
select * from information_schema.session_variables where variable_name like 'tmpdir';
 
509
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
510
#select * from information_schema.session_variables where variable_name like 'tmpdir';
663
511
 
664
512
#
665
513
# Bug #19606: make ssl settings available via SHOW VARIABLES and @@variables
666
514
667
515
# Don't actually output, since it depends on the system
668
 
--replace_column 1 # 2 # 3 # 4 # 5 #
669
 
select @@ssl_ca, @@ssl_capath, @@ssl_cert, @@ssl_cipher, @@ssl_key;
670
 
--replace_column 2 #
671
 
show variables like 'ssl%';
672
 
--replace_column 2 #
673
 
select * from information_schema.session_variables where variable_name like 'ssl%' order by 1;
 
516
#--replace_column 1 # 2 # 3 # 4 # 5 #
 
517
# Not supported in Drizzle
 
518
#select @@ssl_ca, @@ssl_capath, @@ssl_cert, @@ssl_cipher, @@ssl_key;
 
519
#--replace_column 2 #
 
520
#show variables like 'ssl%';
 
521
#--replace_column 2 #
 
522
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
523
#select * from information_schema.session_variables where variable_name like 'ssl%' order by 1;
674
524
 
675
525
#
676
526
# Bug #19616: make log_queries_not_using_indexes available in SHOW VARIABLES
677
527
# and as @@log_queries_not_using_indexes
678
528
#
679
 
select @@log_queries_not_using_indexes;
680
 
show variables like 'log_queries_not_using_indexes';
681
 
select * from information_schema.session_variables where variable_name like 'log_queries_not_using_indexes';
 
529
# Not valid in Drizzle
 
530
#select @@log_queries_not_using_indexes;
 
531
#show variables like 'log_queries_not_using_indexes';
 
532
# Bug 311025 Segmentation fault when accessing INFORMATION_SCHEMA
 
533
#select * from information_schema.session_variables where variable_name like 'log_queries_not_using_indexes';
682
534
 
683
535
#
684
536
# Bug#20908: Crash if select @@""
709
561
# Bug #19263: variables.test doesn't clean up after itself (II/II --
710
562
# restore)
711
563
#
712
 
set global binlog_cache_size         =@my_binlog_cache_size;
713
564
set global connect_timeout           =@my_connect_timeout;
714
565
set global flush                     =@my_flush;
 
566
--error 1193
715
567
set global flush_time                =@my_flush_time;
716
568
set global key_buffer_size           =@my_key_buffer_size;
717
 
set global max_binlog_cache_size     =default;                #@my_max_binlog_cache_size;
718
 
set global max_binlog_size           =@my_max_binlog_size;
719
569
set global max_connect_errors        =@my_max_connect_errors;
720
 
set global max_connections           =@my_max_connections;
721
570
set global max_heap_table_size       =@my_max_heap_table_size;
722
571
set global max_join_size             =@my_max_join_size;
723
572
# No default
724
573
#set global max_user_connections      =default;
725
574
set global max_write_lock_count      =default;
 
575
--error 1232
726
576
set global myisam_data_pointer_size  =@my_myisam_data_pointer_size;
727
577
set global net_buffer_length         =@my_net_buffer_length;
728
578
set global net_write_timeout         =@my_net_write_timeout;
729
579
set global net_read_timeout          =@my_net_read_timeout;
730
 
set global rpl_recovery_rank         =@my_rpl_recovery_rank;
731
580
set global server_id                 =@my_server_id;
732
581
set global slow_launch_time          =@my_slow_launch_time;
733
582
set global storage_engine            =@my_storage_engine;
 
583
--error 1193
734
584
set global thread_cache_size         =@my_thread_cache_size;
735
585
 
736
586
#
737
587
# Bug#28580 Repeatation of status variables
738
588
#
739
589
--replace_column 2 #
740
 
show global variables where Variable_name='table_definition_cache' or
741
 
Variable_name='table_lock_wait_timeout';
742
 
 
743
 
###########################################################################
744
 
 
745
 
--echo
746
 
--echo # --
747
 
--echo # -- Bug#34820: log_output can be set to illegal value.
748
 
--echo # --
749
 
 
750
 
--error ER_WRONG_VALUE_FOR_VAR
751
 
SET GLOBAL log_output = '';
752
 
 
753
 
--error ER_WRONG_VALUE_FOR_VAR
754
 
SET GLOBAL log_output = 0;
755
 
 
756
 
--echo
757
 
--echo # -- End of Bug#34820.
758
 
 
 
590
# Drizzle Bug 311044
 
591
#show global variables where variable_name='table_definition_cache' or Variable_name='table_lock_wait_timeout';