Linux ip-172-26-2-223 5.4.0-1018-aws #18-Ubuntu SMP Wed Jun 24 01:15:00 UTC 2020 x86_64
Apache
: 172.26.2.223 | : 3.145.125.13
Cant Read [ /etc/named.conf ]
8.1.13
www
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
www /
server /
mysql /
mysql-test /
t /
[ HOME SHELL ]
Name
Size
Permission
Action
1st.test
271
B
-rw-r--r--
acl_tables_errors_debug.test
7.98
KB
-rw-r--r--
alias.test
9.17
KB
-rw-r--r--
almost_full.test
936
B
-rw-r--r--
alter_table-big.test
8.11
KB
-rw-r--r--
alter_table.test
102.27
KB
-rw-r--r--
analyze.test
3.17
KB
-rw-r--r--
ansi.test
1.25
KB
-rw-r--r--
archive-big.test
41.09
KB
-rw-r--r--
archive.test
105.99
KB
-rw-r--r--
archive_bitfield.test
3.94
KB
-rw-r--r--
archive_debug.test
395
B
-rw-r--r--
archive_gis.test
103
B
-rw-r--r--
archive_no_symlink-master.opt
22
B
-rw-r--r--
archive_no_symlink.test
810
B
-rw-r--r--
archive_plugin-master.opt
33
B
-rw-r--r--
archive_plugin.test
1016
B
-rw-r--r--
archive_symlink.test
2.48
KB
-rw-r--r--
auth_rpl-master.opt
35
B
-rw-r--r--
auth_rpl-slave.opt
36
B
-rw-r--r--
auth_rpl.test
1.86
KB
-rw-r--r--
auto_increment.test
11.27
KB
-rw-r--r--
bench_count_distinct.test
641
B
-rw-r--r--
bigint.test
15.61
KB
-rw-r--r--
binary.test
4.79
KB
-rw-r--r--
binary_to_hex.test
2.24
KB
-rw-r--r--
blackhole.test
762
B
-rw-r--r--
blackhole_plugin-master.opt
35
B
-rw-r--r--
blackhole_plugin.test
1.03
KB
-rw-r--r--
bool.test
2.47
KB
-rw-r--r--
bootstrap.test
2.49
KB
-rw-r--r--
bug12368203-master.opt
88
B
-rw-r--r--
bug12368203.test
5.75
KB
-rw-r--r--
bug12427262.test
1.7
KB
-rw-r--r--
bug12969156-master.opt
32
B
-rw-r--r--
bug12969156.test
498
B
-rw-r--r--
bug17076131-master.opt
57
B
-rw-r--r--
bug17076131.test
1.06
KB
-rw-r--r--
bug33509-master.opt
33
B
-rw-r--r--
bug33509.test
2.52
KB
-rw-r--r--
bug39022.test
1.62
KB
-rw-r--r--
bug46080-master.opt
69
B
-rw-r--r--
bug46080.test
723
B
-rw-r--r--
bug46261-master.opt
40
B
-rw-r--r--
bug46261.test
488
B
-rw-r--r--
bug46760-master.opt
53
B
-rw-r--r--
bug46760.test
970
B
-rw-r--r--
bug47671-master.opt
66
B
-rw-r--r--
bug47671.test
448
B
-rw-r--r--
bug58669-master.opt
12
B
-rw-r--r--
bug58669.test
495
B
-rw-r--r--
bulk_replace.test
311
B
-rw-r--r--
cache_innodb-master.opt
21
B
-rw-r--r--
cache_innodb.test
899
B
-rw-r--r--
case.test
6.56
KB
-rw-r--r--
cast.test
9.78
KB
-rw-r--r--
change_user-master.opt
16
B
-rw-r--r--
change_user.test
3.78
KB
-rw-r--r--
charset.test
2.4
KB
-rw-r--r--
check.test
2.26
KB
-rw-r--r--
check_auto_permission.test
2.06
KB
-rw-r--r--
client_xml.test
1.47
KB
-rw-r--r--
comment_column.test
36.48
KB
-rw-r--r--
comment_column2.test
131.05
KB
-rw-r--r--
comment_index.test
22.22
KB
-rw-r--r--
comment_table.test
14.01
KB
-rw-r--r--
comments.test
1.37
KB
-rw-r--r--
commit.test
15.16
KB
-rw-r--r--
commit_1innodb.test
324
B
-rw-r--r--
compare.test
3.26
KB
-rw-r--r--
compress.test
1.05
KB
-rw-r--r--
concurrent_innodb_safelog-mast...
29
B
-rw-r--r--
concurrent_innodb_safelog.test
716
B
-rw-r--r--
concurrent_innodb_unsafelog-ma...
62
B
-rw-r--r--
concurrent_innodb_unsafelog.te...
718
B
-rw-r--r--
condition_filter.test
1.14
KB
-rw-r--r--
connect.test
14.5
KB
-rw-r--r--
connect_debug.test
2.08
KB
-rw-r--r--
consistent_snapshot.test
2.02
KB
-rw-r--r--
constraints.test
1.84
KB
-rw-r--r--
count_distinct.test
8.05
KB
-rw-r--r--
count_distinct2-master.opt
28
B
-rw-r--r--
count_distinct2.test
1.87
KB
-rw-r--r--
count_distinct3.test
1.55
KB
-rw-r--r--
create-big.test
17.21
KB
-rw-r--r--
create.test
53.55
KB
-rw-r--r--
create_not_windows.test
1.25
KB
-rw-r--r--
create_select_tmp.test
1.33
KB
-rw-r--r--
create_w_max_indexes_64.test
18.57
KB
-rw-r--r--
csv-master.opt
21
B
-rw-r--r--
csv.test
106.92
KB
-rw-r--r--
csv_alter_table.test
1.78
KB
-rw-r--r--
csv_not_null.test
3.28
KB
-rw-r--r--
ctype_ascii.test
1.21
KB
-rw-r--r--
ctype_big5.test
5.36
KB
-rw-r--r--
ctype_binary.test
543
B
-rw-r--r--
ctype_collate.test
11.45
KB
-rw-r--r--
ctype_cp1250_ch.test
2.96
KB
-rw-r--r--
ctype_cp1251.test
2.82
KB
-rw-r--r--
ctype_cp932.test
1.01
KB
-rw-r--r--
ctype_cp932_binlog_row.test
237
B
-rw-r--r--
ctype_cp932_binlog_stm.test
4.65
KB
-rw-r--r--
ctype_create.test
3.43
KB
-rw-r--r--
ctype_errors.test
1.34
KB
-rw-r--r--
ctype_eucjpms.test
30.18
KB
-rw-r--r--
ctype_euckr.test
5.49
KB
-rw-r--r--
ctype_filename.test
368
B
-rw-r--r--
ctype_filesystem-master.opt
73
B
-rw-r--r--
ctype_filesystem.test
233
B
-rw-r--r--
ctype_gb18030.test
11.14
KB
-rw-r--r--
ctype_gb18030_binlog.test
1.09
KB
-rw-r--r--
ctype_gb18030_conversion.test
6.31
KB
-rw-r--r--
ctype_gb18030_encoding_cn.test
19.84
KB
-rw-r--r--
ctype_gb18030_encoding_utf8.te...
20.2
KB
-rw-r--r--
ctype_gb18030_ligatures.test
20.69
KB
-rw-r--r--
ctype_gb2312.test
4.77
KB
-rw-r--r--
ctype_gbk.test
6.22
KB
-rw-r--r--
ctype_gbk_binlog.test
1.01
KB
-rw-r--r--
ctype_hebrew.test
399
B
-rw-r--r--
ctype_latin1.test
7.3
KB
-rw-r--r--
ctype_latin1_de-master.opt
67
B
-rw-r--r--
ctype_latin1_de.test
5.99
KB
-rw-r--r--
ctype_latin2.test
3.2
KB
-rw-r--r--
ctype_latin2_ch.test
7.57
KB
-rw-r--r--
ctype_ldml-master.opt
129
B
-rw-r--r--
ctype_ldml.test
16.22
KB
-rw-r--r--
ctype_like_range.test
3.91
KB
-rw-r--r--
ctype_many.test
15.19
KB
-rw-r--r--
ctype_mb.test
699
B
-rw-r--r--
ctype_recoding.test
7.75
KB
-rw-r--r--
ctype_sjis.test
5.73
KB
-rw-r--r--
ctype_tis620.test
64.69
KB
-rw-r--r--
ctype_uca.test
27.37
KB
-rw-r--r--
ctype_ucs.test
23.83
KB
-rw-r--r--
ctype_ucs2_def-master.opt
70
B
-rw-r--r--
ctype_ucs2_def.test
1.57
KB
-rw-r--r--
ctype_ujis.test
40.68
KB
-rw-r--r--
ctype_ujis_ucs2.test
83.65
KB
-rw-r--r--
ctype_utf16.test
22.58
KB
-rw-r--r--
ctype_utf16_def-master.opt
36
B
-rw-r--r--
ctype_utf16_def.test
228
B
-rw-r--r--
ctype_utf16_uca.test
6.78
KB
-rw-r--r--
ctype_utf16le.test
22.27
KB
-rw-r--r--
ctype_utf32.test
25.42
KB
-rw-r--r--
ctype_utf32_uca.test
7.74
KB
-rw-r--r--
ctype_utf8-master.opt
32
B
-rw-r--r--
ctype_utf8.test
52.54
KB
-rw-r--r--
ctype_utf8mb4-master.opt
68
B
-rw-r--r--
ctype_utf8mb4.test
59.69
KB
-rw-r--r--
ctype_utf8mb4_heap.test
108
B
-rw-r--r--
ctype_utf8mb4_innodb-master.op...
32
B
-rw-r--r--
ctype_utf8mb4_innodb.test
237
B
-rw-r--r--
ctype_utf8mb4_myisam.test
93
B
-rw-r--r--
ctype_utf8mb4_uca.test
2.74
KB
-rw-r--r--
daemonize_opt-master.opt
54
B
-rw-r--r--
daemonize_opt.test
189
B
-rw-r--r--
datadir_permission.test
2.63
KB
-rw-r--r--
date_formats-master.opt
46
B
-rw-r--r--
date_formats.test
13.9
KB
-rw-r--r--
ddl_i18n_koi8r.test
23.39
KB
-rw-r--r--
ddl_i18n_utf8.test
23.67
KB
-rw-r--r--
deadlock_innodb.test
358
B
-rw-r--r--
debug_sync.test
14.22
KB
-rw-r--r--
debug_sync2-master.opt
29
B
-rw-r--r--
debug_sync2.test
1.41
KB
-rw-r--r--
default.test
5.8
KB
-rw-r--r--
delete.test
20.6
KB
-rw-r--r--
delete_all_rows.test
1.35
KB
-rw-r--r--
deprecate_eof-master.opt
21
B
-rw-r--r--
deprecate_eof.test
5.64
KB
-rw-r--r--
deprecated_features.test
731
B
-rw-r--r--
derived.test
81.78
KB
-rw-r--r--
dirty_close.test
1.55
KB
-rw-r--r--
disabled.def
1.31
KB
-rw-r--r--
disabled_replication-master.op...
29
B
-rw-r--r--
disabled_replication.test
2.79
KB
-rw-r--r--
disabled_storage_engines-maste...
52
B
-rw-r--r--
disabled_storage_engines.test
3.93
KB
-rw-r--r--
disconnect_on_expired_password...
1.39
KB
-rw-r--r--
disconnect_on_expired_password...
37
B
-rw-r--r--
disconnect_on_expired_password...
1.46
KB
-rw-r--r--
distinct.test
27.63
KB
-rw-r--r--
drop-no_root.test
2.59
KB
-rw-r--r--
drop.test
9.47
KB
-rw-r--r--
drop_debug.test
989
B
-rw-r--r--
ds_mrr-big.test
2.2
KB
-rw-r--r--
dynamic_tracing.test
3.92
KB
-rw-r--r--
empty_table.test
303
B
-rw-r--r--
enable_cleartext_plugin-master...
35
B
-rw-r--r--
enable_cleartext_plugin.test
2.48
KB
-rw-r--r--
endspace.test
4.36
KB
-rw-r--r--
eq_range_idx_stat.test
2.24
KB
-rw-r--r--
error_simulation.test
3.42
KB
-rw-r--r--
errors.test
4.97
KB
-rw-r--r--
events_1.test
18.96
KB
-rw-r--r--
events_2.test
15.97
KB
-rw-r--r--
events_and_binlog.test
445
B
-rw-r--r--
events_bugs-master.opt
18
B
-rw-r--r--
events_bugs.test
43.59
KB
-rw-r--r--
events_embedded.test
289
B
-rw-r--r--
events_grant.test
5.29
KB
-rw-r--r--
events_logs_tests-master.opt
41
B
-rw-r--r--
events_logs_tests.test
3.08
KB
-rw-r--r--
events_microsec.test
749
B
-rw-r--r--
events_restart-master.opt
18
B
-rw-r--r--
events_restart.test
4.51
KB
-rw-r--r--
events_scheduling.test
4.36
KB
-rw-r--r--
events_stress.test
4.57
KB
-rw-r--r--
events_time_zone.test
11.38
KB
-rw-r--r--
events_trans.test
3.33
KB
-rw-r--r--
events_trans_notembedded.test
1.82
KB
-rw-r--r--
examined_rows.test
3.84
KB
-rw-r--r--
execution_constants.test
3.32
KB
-rw-r--r--
explain.test
12.41
KB
-rw-r--r--
explain_for_connection_crash.t...
2.68
KB
-rw-r--r--
explain_for_connection_rqg_jso...
1.79
KB
-rw-r--r--
explain_for_connection_rqg_tra...
1.8
KB
-rw-r--r--
explain_for_connection_small_j...
24
B
-rw-r--r--
explain_for_connection_small_j...
2.18
KB
-rw-r--r--
explain_for_connection_small_t...
24
B
-rw-r--r--
explain_for_connection_small_t...
2.19
KB
-rw-r--r--
explain_json_all.test
518
B
-rw-r--r--
explain_json_none.test
617
B
-rw-r--r--
explain_other-master.opt
24
B
-rw-r--r--
explain_other.test
14.81
KB
-rw-r--r--
file_contents.test
2.89
KB
-rw-r--r--
filesort_debug-master.opt
0
B
-rw-r--r--
filesort_debug.test
5.54
KB
-rw-r--r--
filesort_merge.test
1.89
KB
-rw-r--r--
filesort_pack.test
801
B
-rw-r--r--
filter_single_col_idx_big.test
2.72
KB
-rw-r--r--
filter_single_col_idx_small.te...
3.64
KB
-rw-r--r--
fix_priv_tables.test
2.55
KB
-rw-r--r--
flush.test
17.3
KB
-rw-r--r--
flush2-master.opt
15
B
-rw-r--r--
flush2.test
689
B
-rw-r--r--
flush_block_commit.test
2.87
KB
-rw-r--r--
flush_block_commit_notembedded...
1.84
KB
-rw-r--r--
flush_read_lock.test
75.93
KB
-rw-r--r--
flush_read_lock_kill.test
2.32
KB
-rw-r--r--
flush_table-master.opt
21
B
-rw-r--r--
flush_table.test
15.92
KB
-rw-r--r--
foreign_key.test
3.91
KB
-rw-r--r--
fulltext.test
22.77
KB
-rw-r--r--
fulltext2.test
8.42
KB
-rw-r--r--
fulltext3.test
1.35
KB
-rw-r--r--
fulltext_cache.test
1.74
KB
-rw-r--r--
fulltext_distinct.test
1.55
KB
-rw-r--r--
fulltext_left_join.test
4.13
KB
-rw-r--r--
fulltext_multi.test
982
B
-rw-r--r--
fulltext_order_by.test
5.72
KB
-rw-r--r--
fulltext_plugin-master.opt
19
B
-rw-r--r--
fulltext_plugin.test
689
B
-rw-r--r--
fulltext_update.test
1.26
KB
-rw-r--r--
fulltext_var.test
1.41
KB
-rw-r--r--
func_aes.test
5.76
KB
-rw-r--r--
func_aes_cfb1.test
445
B
-rw-r--r--
func_aes_cfb128.test
455
B
-rw-r--r--
func_aes_cfb8.test
445
B
-rw-r--r--
func_aes_kdf_hkdf.test
2.5
KB
-rw-r--r--
func_aes_kdf_pbkdf2_hmac.test
3.88
KB
-rw-r--r--
func_aes_misc.test
6.11
KB
-rw-r--r--
func_aes_ofb.test
440
B
-rw-r--r--
func_analyse.test
9.59
KB
-rw-r--r--
func_bitwise_ops.test
18.39
KB
-rw-r--r--
func_compress.test
3.63
KB
-rw-r--r--
func_concat.test
4
KB
-rw-r--r--
func_crypt.test
1.68
KB
-rw-r--r--
func_date_add.test
3.36
KB
-rw-r--r--
func_default.test
1.21
KB
-rw-r--r--
func_des_encrypt.test
886
B
-rw-r--r--
func_digest.test
109.41
KB
-rw-r--r--
func_encrypt-master.opt
59
B
-rw-r--r--
func_encrypt.test
5.55
KB
-rw-r--r--
func_encrypt_nossl.test
1.37
KB
-rw-r--r--
func_encrypt_ucs2.test
546
B
-rw-r--r--
func_equal.test
1.1
KB
-rw-r--r--
func_found_rows.test
288
B
-rw-r--r--
func_gconcat.test
28.1
KB
-rw-r--r--
func_group.test
39.21
KB
-rw-r--r--
func_group_innodb.test
3.57
KB
-rw-r--r--
func_group_innodb_16k.test
605
B
-rw-r--r--
func_if.test
5.32
KB
-rw-r--r--
func_in_all.test
749
B
-rw-r--r--
func_in_icp.test
822
B
-rw-r--r--
func_in_icp_mrr.test
795
B
-rw-r--r--
func_in_mrr.test
820
B
-rw-r--r--
func_in_mrr_cost.test
830
B
-rw-r--r--
func_in_none.test
862
B
-rw-r--r--
func_isnull.test
1010
B
-rw-r--r--
func_like.test
6.39
KB
-rw-r--r--
func_math.test
26.62
KB
-rw-r--r--
func_misc-master.opt
21
B
-rw-r--r--
func_misc.test
27.43
KB
-rw-r--r--
func_op.test
965
B
-rw-r--r--
func_regexp.test
3.09
KB
-rw-r--r--
func_rollback.test
14.3
KB
-rw-r--r--
func_sapdb.test
7.58
KB
-rw-r--r--
func_set.test
5.87
KB
-rw-r--r--
func_str.test
63.27
KB
-rw-r--r--
func_str_debug.test
421
B
-rw-r--r--
func_str_no_ps.test
1.02
KB
-rw-r--r--
func_system.test
1.82
KB
-rw-r--r--
func_test.test
9.41
KB
-rw-r--r--
func_time.test
44.53
KB
-rw-r--r--
func_timestamp.test
662
B
-rw-r--r--
func_weight_string.test
6.36
KB
-rw-r--r--
function_defaults.test
825
B
-rw-r--r--
gcc296.test
527
B
-rw-r--r--
get_diagnostics.test
21.19
KB
-rw-r--r--
get_table_share.test
24.82
KB
-rw-r--r--
gis-debug.test
309
B
-rw-r--r--
gis-precise.test
103.82
KB
-rw-r--r--
gis-rt-precise.test
1.5
KB
-rw-r--r--
gis-rtree.test
46.36
KB
-rw-r--r--
gis.test
102
KB
-rw-r--r--
grant.test
82.65
KB
-rw-r--r--
grant2.test
33.81
KB
-rw-r--r--
grant3-master.opt
19
B
-rw-r--r--
grant3.test
6.85
KB
-rw-r--r--
grant4.test
8.44
KB
-rw-r--r--
grant_alter_user.test
28.77
KB
-rw-r--r--
grant_alter_user_qa-master.opt
68
B
-rw-r--r--
grant_alter_user_qa.test
67.2
KB
-rw-r--r--
grant_cache-master.opt
21
B
-rw-r--r--
grant_cache.test
591
B
-rw-r--r--
grant_debug.test
7.87
KB
-rw-r--r--
grant_explain_non_select.test
7.63
KB
-rw-r--r--
grant_lowercase_fs.test
1.02
KB
-rw-r--r--
grant_user_lock.test
15.07
KB
-rw-r--r--
grant_user_lock_qa-master.opt
32
B
-rw-r--r--
grant_user_lock_qa.test
33.86
KB
-rw-r--r--
greedy_optimizer-master.opt
21
B
-rw-r--r--
greedy_optimizer.test
30.83
KB
-rw-r--r--
greedy_search.test
9.91
KB
-rw-r--r--
group_by.test
77.53
KB
-rw-r--r--
group_by_fd_no_prot.test
411
B
-rw-r--r--
group_by_fd_ps_prot.test
160
B
-rw-r--r--
group_min_max.test
70.06
KB
-rw-r--r--
group_min_max_innodb.test
13.85
KB
-rw-r--r--
gtid_next_xa_binlog_off-master...
15
B
-rw-r--r--
gtid_next_xa_binlog_off.test
268
B
-rw-r--r--
gtids_anonymous_trxs_violation...
2.31
KB
-rw-r--r--
handler_innodb.test
571
B
-rw-r--r--
handler_myisam.test
4.46
KB
-rw-r--r--
handler_read_last.test
733
B
-rw-r--r--
having.test
25.07
KB
-rw-r--r--
heap.test
15.62
KB
-rw-r--r--
heap_auto_increment.test
927
B
-rw-r--r--
heap_btree.test
8.3
KB
-rw-r--r--
heap_hash.test
9.77
KB
-rw-r--r--
help.test
4.89
KB
-rw-r--r--
help_verbose.test
3.38
KB
-rw-r--r--
host_cache_size_functionality....
7.61
KB
-rw-r--r--
ignore_strict.test
20.23
KB
-rw-r--r--
implicit_char_to_num_conversio...
7.63
KB
-rw-r--r--
implicit_commit-master.opt
32
B
-rw-r--r--
implicit_commit.test
19.77
KB
-rw-r--r--
import_schema_mismatch.test
956
B
-rw-r--r--
index_merge_delete.test
306
B
-rw-r--r--
index_merge_innodb.test
2.21
KB
-rw-r--r--
index_merge_insert-and-replace...
330
B
-rw-r--r--
index_merge_intersect_dml.test
157
B
-rw-r--r--
index_merge_myisam.test
5.53
KB
-rw-r--r--
index_merge_update.test
307
B
-rw-r--r--
information_schema-big.test
1.77
KB
-rw-r--r--
information_schema.test
61.02
KB
-rw-r--r--
information_schema_chmod.test
835
B
-rw-r--r--
information_schema_db.test
7.18
KB
-rw-r--r--
information_schema_inno.test
3.61
KB
-rw-r--r--
information_schema_parameters....
12.73
KB
-rw-r--r--
information_schema_part.test
4.15
KB
-rw-r--r--
information_schema_routines.te...
13.75
KB
-rw-r--r--
init_connect-master.opt
32
B
-rw-r--r--
init_connect.test
6.9
KB
-rw-r--r--
init_file-master.opt
51
B
-rw-r--r--
init_file.test
1.06
KB
-rw-r--r--
initialize-bug20350099-master....
23
B
-rw-r--r--
initialize-bug20350099.test
3.51
KB
-rw-r--r--
initialize-bug20504142.test
3.8
KB
-rw-r--r--
initialize-bug21335821-master....
23
B
-rw-r--r--
initialize-bug21335821.test
3.06
KB
-rw-r--r--
initialize-errors.test
2.67
KB
-rw-r--r--
initialize-ignore-db.test
2.96
KB
-rw-r--r--
initialize-init-acls.test
3.26
KB
-rw-r--r--
initialize-sha256.test
3.51
KB
-rw-r--r--
initialize.test
9.45
KB
-rw-r--r--
initialize_gtid.test
2.8
KB
-rw-r--r--
innodb_deadlock-master.opt
29
B
-rw-r--r--
innodb_deadlock.test
1.43
KB
-rw-r--r--
innodb_disabled-master.opt
96
B
-rw-r--r--
innodb_disabled.test
2.1
KB
-rw-r--r--
innodb_explain_json_non_select...
1.02
KB
-rw-r--r--
innodb_explain_json_non_select...
1.03
KB
-rw-r--r--
innodb_explain_non_select_all....
855
B
-rw-r--r--
innodb_explain_non_select_none...
892
B
-rw-r--r--
innodb_icp.test
784
B
-rw-r--r--
innodb_icp_all.test
679
B
-rw-r--r--
innodb_icp_none.test
817
B
-rw-r--r--
innodb_ignore_builtin-master.o...
38
B
-rw-r--r--
innodb_ignore_builtin.test
442
B
-rw-r--r--
innodb_log_file_size_functiona...
5.43
KB
-rw-r--r--
innodb_mrr-master.opt
35
B
-rw-r--r--
innodb_mrr.test
870
B
-rw-r--r--
innodb_mrr_all-master.opt
35
B
-rw-r--r--
innodb_mrr_all.test
756
B
-rw-r--r--
innodb_mrr_cost-master.opt
35
B
-rw-r--r--
innodb_mrr_cost.test
869
B
-rw-r--r--
innodb_mrr_cost_all-master.opt
35
B
-rw-r--r--
innodb_mrr_cost_all.test
755
B
-rw-r--r--
innodb_mrr_cost_icp-master.opt
35
B
-rw-r--r--
innodb_mrr_cost_icp.test
824
B
-rw-r--r--
innodb_mrr_icp-master.opt
35
B
-rw-r--r--
innodb_mrr_icp.test
825
B
-rw-r--r--
innodb_mrr_none-master.opt
35
B
-rw-r--r--
innodb_mrr_none.test
876
B
-rw-r--r--
innodb_mysql_lock-master.opt
31
B
-rw-r--r--
innodb_mysql_lock.test
7.18
KB
-rw-r--r--
innodb_mysql_lock2.test
29.15
KB
-rw-r--r--
innodb_mysql_sync.test
31.39
KB
-rw-r--r--
innodb_pk_extension_off.test
298
B
-rw-r--r--
innodb_pk_extension_on.test
296
B
-rw-r--r--
innodb_recovery_with_upper_cas...
25
B
-rw-r--r--
innodb_recovery_with_upper_cas...
1.75
KB
-rw-r--r--
insert.test
19.57
KB
-rw-r--r--
insert_debug-master.opt
29
B
-rw-r--r--
insert_debug.test
2.39
KB
-rw-r--r--
insert_notembedded.test
5.47
KB
-rw-r--r--
insert_select.test
14.79
KB
-rw-r--r--
insert_update.test
14.27
KB
-rw-r--r--
installdb-bad-cipher.test
875
B
-rw-r--r--
internal_tmp_disk_storage_engi...
102.07
KB
-rw-r--r--
ipv4_as_ipv6-master.opt
43
B
-rw-r--r--
ipv4_as_ipv6.test
2.18
KB
-rw-r--r--
ipv6-master.opt
20
B
-rw-r--r--
ipv6.test
1.28
KB
-rw-r--r--
is_deprecation.test
166
B
-rw-r--r--
join.test
41.36
KB
-rw-r--r--
join_cache_bka.test
341
B
-rw-r--r--
join_cache_bka_nixbnl.test
408
B
-rw-r--r--
join_cache_bkaunique.test
408
B
-rw-r--r--
join_cache_bnl.test
435
B
-rw-r--r--
join_cache_nojb.test
504
B
-rw-r--r--
join_crash.test
4.99
KB
-rw-r--r--
join_file_handler.test
1
KB
-rw-r--r--
join_nested.test
43.89
KB
-rw-r--r--
join_nested_bka.test
2.5
KB
-rw-r--r--
join_nested_bka_nixbnl.test
2.52
KB
-rw-r--r--
join_outer.test
60.27
KB
-rw-r--r--
join_outer_bka.test
379
B
-rw-r--r--
join_outer_bka_nixbnl.test
401
B
-rw-r--r--
join_outer_innodb.test
2.23
KB
-rw-r--r--
key.test
17.2
KB
-rw-r--r--
key_cache-master.opt
95
B
-rw-r--r--
key_cache.test
8.48
KB
-rw-r--r--
key_diff.test
573
B
-rw-r--r--
key_primary.test
461
B
-rw-r--r--
keywords.test
5.47
KB
-rw-r--r--
kill.test
17.11
KB
-rw-r--r--
kill_debug-master.opt
21
B
-rw-r--r--
kill_debug.test
1.55
KB
-rw-r--r--
limit.test
7.26
KB
-rw-r--r--
loaddata.test
22.6
KB
-rw-r--r--
loaddata_autocom_innodb.test
98
B
-rw-r--r--
loadxml.test
3.75
KB
-rw-r--r--
locale.test
3.23
KB
-rw-r--r--
lock.test
14.35
KB
-rw-r--r--
lock_multi.test
114.87
KB
-rw-r--r--
lock_multi_bug38499.test
4.7
KB
-rw-r--r--
lock_multi_bug38691.test
2.98
KB
-rw-r--r--
lock_sync-master.opt
58
B
-rw-r--r--
lock_sync.test
35.79
KB
-rw-r--r--
lock_tables_lost_commit-master...
24
B
-rw-r--r--
lock_tables_lost_commit.test
845
B
-rw-r--r--
locking_service-master.opt
21
B
-rw-r--r--
locking_service.test
35.37
KB
-rw-r--r--
log_errchk.test
2.09
KB
-rw-r--r--
log_state-master.opt
59
B
-rw-r--r--
log_state.test
10.29
KB
-rw-r--r--
log_state_bug33693-master.opt
60
B
-rw-r--r--
log_state_bug33693.test
568
B
-rw-r--r--
log_tables-big-master.opt
17
B
-rw-r--r--
log_tables-big.test
1.32
KB
-rw-r--r--
log_tables-master.opt
41
B
-rw-r--r--
log_tables.test
30.83
KB
-rw-r--r--
log_tables_debug.test
2.83
KB
-rw-r--r--
log_tables_upgrade.test
989
B
-rw-r--r--
log_timestamps-master.opt
21
B
-rw-r--r--
log_timestamps.test
89
B
-rw-r--r--
long_tmpdir-master.opt
141
B
-rw-r--r--
long_tmpdir-master.sh
190
B
-rwxr-xr-x
long_tmpdir.test
216
B
-rw-r--r--
lowercase_fs_off.test
2.82
KB
-rw-r--r--
lowercase_fs_on.test
1.33
KB
-rw-r--r--
lowercase_mixed_tmpdir-master....
68
B
-rw-r--r--
lowercase_mixed_tmpdir-master....
179
B
-rwxr-xr-x
lowercase_mixed_tmpdir.test
292
B
-rw-r--r--
lowercase_mixed_tmpdir_innodb-...
68
B
-rw-r--r--
lowercase_mixed_tmpdir_innodb-...
180
B
-rwxr-xr-x
lowercase_mixed_tmpdir_innodb....
299
B
-rw-r--r--
lowercase_table-master.opt
25
B
-rw-r--r--
lowercase_table.test
3.68
KB
-rw-r--r--
lowercase_table2.test
8.28
KB
-rw-r--r--
lowercase_table4-master.opt
27
B
-rw-r--r--
lowercase_table4.test
4.01
KB
-rw-r--r--
lowercase_table5.test
1009
B
-rw-r--r--
lowercase_table_grant-master.o...
25
B
-rw-r--r--
lowercase_table_grant.test
1.05
KB
-rw-r--r--
lowercase_table_qcache-master....
46
B
-rw-r--r--
lowercase_table_qcache.test
698
B
-rw-r--r--
lowercase_utf8-master.opt
58
B
-rw-r--r--
lowercase_utf8.test
207
B
-rw-r--r--
lowercase_view-master.opt
27
B
-rw-r--r--
lowercase_view.test
6.29
KB
-rw-r--r--
m_i_db.test
9.24
KB
-rw-r--r--
m_i_db_config.cnf
38
B
-rw-r--r--
m_i_db_createschema.sql
10.29
KB
-rw-r--r--
main.lowercase_table_qcache-ma...
21
B
-rw-r--r--
max_statement_time-master.opt
21
B
-rw-r--r--
max_statement_time.test
14.33
KB
-rw-r--r--
mdl_sync-master.opt
53
B
-rw-r--r--
mdl_sync.test
183.93
KB
-rw-r--r--
mdl_tablespace.test
41.99
KB
-rw-r--r--
merge-big.test
3.11
KB
-rw-r--r--
merge.test
83.59
KB
-rw-r--r--
merge_innodb.test
1.06
KB
-rw-r--r--
merge_mmap-master.opt
18
B
-rw-r--r--
merge_mmap.test
4.1
KB
-rw-r--r--
metadata.test
7.31
KB
-rw-r--r--
mix2_myisam-master.opt
33
B
-rw-r--r--
mix2_myisam.test
961
B
-rw-r--r--
mix2_myisam_ucs2.test
940
B
-rw-r--r--
multi_plugin_load-master.opt
92
B
-rw-r--r--
multi_plugin_load.test
774
B
-rw-r--r--
multi_plugin_load_add-master.o...
68
B
-rw-r--r--
multi_plugin_load_add.test
495
B
-rw-r--r--
multi_plugin_load_add2-master....
111
B
-rw-r--r--
multi_plugin_load_add2.test
495
B
-rw-r--r--
multi_statement-master.opt
80
B
-rw-r--r--
multi_statement.test
971
B
-rw-r--r--
multi_update-master.opt
22
B
-rw-r--r--
multi_update.test
26.93
KB
-rw-r--r--
multi_update2-master.opt
22
B
-rw-r--r--
multi_update2.test
2.1
KB
-rw-r--r--
multi_update_innodb.test
4.41
KB
-rw-r--r--
multi_update_tiny_hash-master....
28
B
-rw-r--r--
multi_update_tiny_hash.test
1.6
KB
-rw-r--r--
myisam-blob-master.opt
60
B
-rw-r--r--
myisam-blob.test
1.42
KB
-rw-r--r--
myisam-system.test
692
B
-rw-r--r--
myisam.test
66.93
KB
-rw-r--r--
myisam_crash_before_flush_keys...
36
B
-rw-r--r--
myisam_crash_before_flush_keys...
1.7
KB
-rw-r--r--
myisam_debug.test
1.57
KB
-rw-r--r--
myisam_explain_json_non_select...
931
B
-rw-r--r--
myisam_explain_json_non_select...
1.02
KB
-rw-r--r--
myisam_explain_non_select_all....
794
B
-rw-r--r--
myisam_explain_non_select_none...
885
B
-rw-r--r--
myisam_icp.test
880
B
-rw-r--r--
myisam_icp_all.test
775
B
-rw-r--r--
myisam_icp_none.test
912
B
-rw-r--r--
myisam_mrr.test
1.03
KB
-rw-r--r--
myisam_mrr_all.test
943
B
-rw-r--r--
myisam_mrr_cost.test
1.04
KB
-rw-r--r--
myisam_mrr_cost_all.test
942
B
-rw-r--r--
myisam_mrr_cost_icp.test
1021
B
-rw-r--r--
myisam_mrr_icp.test
1011
B
-rw-r--r--
myisam_mrr_none.test
1.04
KB
-rw-r--r--
myisam_recover-master.opt
31
B
-rw-r--r--
myisam_recover.test
5.73
KB
-rw-r--r--
myisam_row_rpl-master.opt
54
B
-rw-r--r--
myisam_row_rpl-slave.opt
54
B
-rw-r--r--
myisam_row_rpl.test
1.93
KB
-rw-r--r--
myisampack.test
12.57
KB
-rw-r--r--
mysql-bug41486.test
1.54
KB
-rw-r--r--
mysql-bug45236.test
1.41
KB
-rw-r--r--
mysql.test
24.5
KB
-rw-r--r--
mysql_batch_mode.test
441
B
-rw-r--r--
mysql_binary_mode.test
5.56
KB
-rw-r--r--
mysql_client_test-master.opt
150
B
-rw-r--r--
mysql_client_test.test
1.34
KB
-rw-r--r--
mysql_client_test_embedded.tes...
887
B
-rw-r--r--
mysql_client_test_qcache-maste...
21
B
-rw-r--r--
mysql_client_test_qcache.test
856
B
-rw-r--r--
mysql_comments.sql
4.58
KB
-rw-r--r--
mysql_comments.test
1.63
KB
-rw-r--r--
mysql_config_editor.test
9.41
KB
-rw-r--r--
mysql_cp932.test
1.04
KB
-rw-r--r--
mysql_delimiter.sql
1.48
KB
-rw-r--r--
mysql_delimiter_19799.sql
13
B
-rw-r--r--
mysql_delimiter_source.sql
122
B
-rw-r--r--
mysql_embedded.test
2.07
KB
-rw-r--r--
mysql_embedded_client_test.tes...
1.55
KB
-rw-r--r--
mysql_locale_posix.test
7.21
KB
-rw-r--r--
mysql_not_windows-master.opt
28
B
-rw-r--r--
mysql_not_windows.test
923
B
-rw-r--r--
mysql_plugin-master.opt
32
B
-rw-r--r--
mysql_plugin.test
12.17
KB
-rw-r--r--
mysql_protocols.test
716
B
-rw-r--r--
mysql_ssl-master.opt
11
B
-rw-r--r--
mysql_ssl.test
788
B
-rw-r--r--
mysql_ssl_default.test
1.6
KB
-rw-r--r--
mysql_tzinfo_to_sql.test
2.49
KB
-rw-r--r--
mysql_tzinfo_to_sql_sys.test
4.8
KB
-rw-r--r--
mysql_upgrade.test
43.56
KB
-rw-r--r--
mysql_upgrade_slave_master_inf...
6.35
KB
-rw-r--r--
mysql_upgrade_ssl.test
2.15
KB
-rw-r--r--
mysql_upgrade_with_session_use...
2.18
KB
-rw-r--r--
mysqladmin.test
3.12
KB
-rw-r--r--
mysqladmin_shutdown.test
868
B
-rw-r--r--
mysqlbinlog-master.opt
65
B
-rw-r--r--
mysqlbinlog.test
18.92
KB
-rw-r--r--
mysqlbinlog_base64_flag.test
5.53
KB
-rw-r--r--
mysqlbinlog_debug.test
981
B
-rw-r--r--
mysqlbinlog_hexdump.test
225
B
-rw-r--r--
mysqlbinlog_mixed_or_statment....
1.18
KB
-rw-r--r--
mysqlbinlog_raw_mode.test
1.98
KB
-rw-r--r--
mysqlbinlog_raw_mode_win.test
356
B
-rw-r--r--
mysqlbinlog_row_big.test
4.21
KB
-rw-r--r--
mysqlcheck.test
10.45
KB
-rw-r--r--
mysqld--defaults-file.test
1.19
KB
-rw-r--r--
mysqld--help-notwin.test
161
B
-rw-r--r--
mysqld--help-win.test
366
B
-rw-r--r--
mysqld_daemon.test
2.05
KB
-rw-r--r--
mysqld_safe.sh
40
B
-rwxr-xr-x
mysqld_safe.test
3.06
KB
-rw-r--r--
mysqldump-binary.test
2.24
KB
-rw-r--r--
mysqldump-compat.opt
31
B
-rw-r--r--
mysqldump-compat.test
447
B
-rw-r--r--
mysqldump-max-master.opt
32
B
-rw-r--r--
mysqldump-max.test
39.96
KB
-rw-r--r--
mysqldump-no-binlog-master.opt
15
B
-rw-r--r--
mysqldump-no-binlog.test
195
B
-rw-r--r--
mysqldump.test
92.39
KB
-rw-r--r--
mysqldump_bug29998457.test
1.22
KB
-rw-r--r--
mysqldump_bug30042589.test
987
B
-rw-r--r--
mysqldump_bugs.test
3.27
KB
-rw-r--r--
mysqldump_gtid_state-master.op...
72
B
-rw-r--r--
mysqldump_gtid_state.test
4.23
KB
-rw-r--r--
mysqldump_restore.test
3.85
KB
-rw-r--r--
mysqldumpslow.test
1.81
KB
-rw-r--r--
mysqlimport.test
1.29
KB
-rw-r--r--
mysqlpump.test
8.3
KB
-rw-r--r--
mysqlpump_basic.test
22.51
KB
-rw-r--r--
mysqlpump_bugs.test
1.63
KB
-rw-r--r--
mysqlpump_charset.test
4.22
KB
-rw-r--r--
mysqlpump_concurrency.test
1.94
KB
-rw-r--r--
mysqlpump_extended.test
13.79
KB
-rw-r--r--
mysqlpump_filters.test
5.95
KB
-rw-r--r--
mysqlpump_multi_thread.test
4.09
KB
-rw-r--r--
mysqlpump_partial_bkp.test
1.63
KB
-rw-r--r--
mysqlshow.test
3.05
KB
-rw-r--r--
mysqlslap.test
6.96
KB
-rw-r--r--
mysqltest.test
77.87
KB
-rw-r--r--
named_pipe-master.opt
26
B
-rw-r--r--
named_pipe.test
807
B
-rw-r--r--
negation_elimination.test
4.13
KB
-rw-r--r--
no-threads-master.opt
29
B
-rw-r--r--
no-threads.test
408
B
-rw-r--r--
no_binlog.test
166
B
-rw-r--r--
no_binlog_gtid_empty_statement...
1.94
KB
-rw-r--r--
no_binlog_gtid_empty_transacti...
42
B
-rw-r--r--
no_binlog_gtid_empty_transacti...
1.49
KB
-rw-r--r--
no_binlog_gtid_mode_on-master....
42
B
-rw-r--r--
no_binlog_gtid_mode_on.test
9.1
KB
-rw-r--r--
no_binlog_gtid_mode_on_explici...
42
B
-rw-r--r--
no_binlog_gtid_mode_on_explici...
3.29
KB
-rw-r--r--
no_binlog_gtid_next_begin_caus...
42
B
-rw-r--r--
no_binlog_gtid_next_begin_caus...
864
B
-rw-r--r--
no_binlog_gtid_next_partially_...
42
B
-rw-r--r--
no_binlog_gtid_next_partially_...
18.58
KB
-rw-r--r--
no_binlog_gtid_next_partially_...
2.35
KB
-rw-r--r--
no_binlog_gtid_next_partially_...
42
B
-rw-r--r--
no_binlog_gtid_next_partially_...
4.94
KB
-rw-r--r--
no_binlog_gtid_next_single_stm...
1017
B
-rw-r--r--
no_binlog_gtid_next_temporary_...
2.7
KB
-rw-r--r--
no_engine_substitution-master....
54
B
-rw-r--r--
no_engine_substitution.test
4.7
KB
-rw-r--r--
not_embedded_server-master.opt
16
B
-rw-r--r--
not_embedded_server.test
5.61
KB
-rw-r--r--
not_partition-master.opt
23
B
-rw-r--r--
not_partition.test
3.12
KB
-rw-r--r--
null.test
9.02
KB
-rw-r--r--
null_key_all.test
687
B
-rw-r--r--
null_key_icp.test
779
B
-rw-r--r--
null_key_none.test
819
B
-rw-r--r--
odbc.test
942
B
-rw-r--r--
olap.test
14.29
KB
-rw-r--r--
openssl_1.test
10.34
KB
-rw-r--r--
opt_costmodel.test
6.89
KB
-rw-r--r--
opt_costmodel_downgrade.test
793
B
-rw-r--r--
opt_costmodel_flush.test
7.71
KB
-rw-r--r--
opt_costmodel_pfs.test
394
B
-rw-r--r--
opt_costmodel_restart.test
3.46
KB
-rw-r--r--
opt_costmodel_tables.test
5.53
KB
-rw-r--r--
opt_costmodel_warnings.test
4.93
KB
-rw-r--r--
opt_hint_timeout.test
2.07
KB
-rw-r--r--
opt_hints.test
29.22
KB
-rw-r--r--
opt_hints_lowercase.test
1.06
KB
-rw-r--r--
opt_hints_pfs.test
1.17
KB
-rw-r--r--
opt_hints_subquery.test
36.32
KB
-rw-r--r--
optimizer_bug12837084.test
14.36
KB
-rw-r--r--
optimizer_debug_sync.test
2.23
KB
-rw-r--r--
optimizer_switch.test
10.35
KB
-rw-r--r--
order_by_all.test
752
B
-rw-r--r--
order_by_icp_mrr.test
797
B
-rw-r--r--
order_by_limit.test
7.82
KB
-rw-r--r--
order_by_none.test
864
B
-rw-r--r--
order_by_sortkey.test
2.56
KB
-rw-r--r--
order_fill_sortbuf-master.opt
25
B
-rw-r--r--
order_fill_sortbuf.test
579
B
-rw-r--r--
outfile.test
4.23
KB
-rw-r--r--
outfile_loaddata.test
10.92
KB
-rw-r--r--
overflow.test
578
B
-rw-r--r--
packet.test
6.32
KB
-rw-r--r--
parser-big-32bit.test
145
B
-rw-r--r--
parser-big-64bit.test
145
B
-rw-r--r--
parser-master.opt
30
B
-rw-r--r--
parser.test
36.07
KB
-rw-r--r--
parser_bug21114_innodb.test
11.79
KB
-rw-r--r--
parser_not_embedded.test
2.53
KB
-rw-r--r--
parser_precedence.test
12.39
KB
-rw-r--r--
parser_stack.test
12.07
KB
-rw-r--r--
partition.test
68.35
KB
-rw-r--r--
partition_archive.test
4.19
KB
-rw-r--r--
partition_binlog.test
1.2
KB
-rw-r--r--
partition_binlog_stmt.test
985
B
-rw-r--r--
partition_blackhole.test
661
B
-rw-r--r--
partition_bug18198.test
7.88
KB
-rw-r--r--
partition_cache-master.opt
21
B
-rw-r--r--
partition_cache.test
1.41
KB
-rw-r--r--
partition_charset.test
675
B
-rw-r--r--
partition_column.test
16.25
KB
-rw-r--r--
partition_column_prune.test
2.35
KB
-rw-r--r--
partition_csv.test
2.52
KB
-rw-r--r--
partition_datatype.test
19.03
KB
-rw-r--r--
partition_debug.test
2.07
KB
-rw-r--r--
partition_debug_sync.test
7.01
KB
-rw-r--r--
partition_debug_sync_stmt.test
3.35
KB
-rw-r--r--
partition_deprecation.test
3.87
KB
-rw-r--r--
partition_error.test
62.95
KB
-rw-r--r--
partition_exchange.test
31.54
KB
-rw-r--r--
partition_explicit_prune.test
29.83
KB
-rw-r--r--
partition_federated.test
531
B
-rw-r--r--
partition_grant.test
2.4
KB
-rw-r--r--
partition_hash.test
5.07
KB
-rw-r--r--
partition_index_innodb.test
5.9
KB
-rw-r--r--
partition_index_myisam.test
3.88
KB
-rw-r--r--
partition_innodb.test
41.82
KB
-rw-r--r--
partition_innodb_plugin.test
4.73
KB
-rw-r--r--
partition_innodb_semi_consiste...
61
B
-rw-r--r--
partition_innodb_semi_consiste...
4.09
KB
-rw-r--r--
partition_innodb_stmt.test
1.22
KB
-rw-r--r--
partition_innodb_tablespace.te...
16.16
KB
-rw-r--r--
partition_key_cache.test
11.03
KB
-rw-r--r--
partition_list.test
8.14
KB
-rw-r--r--
partition_locking.test
63.4
KB
-rw-r--r--
partition_locking_4.test
1.53
KB
-rw-r--r--
partition_mgm.test
4.59
KB
-rw-r--r--
partition_mgm_err.test
6.47
KB
-rw-r--r--
partition_mgm_err2.test
940
B
-rw-r--r--
partition_myisam.test
8.17
KB
-rw-r--r--
partition_not_blackhole-master...
23
B
-rw-r--r--
partition_not_blackhole.test
875
B
-rw-r--r--
partition_not_windows-master.o...
19
B
-rw-r--r--
partition_not_windows.test
7.68
KB
-rw-r--r--
partition_order.test
17.9
KB
-rw-r--r--
partition_plugin-master.opt
22
B
-rw-r--r--
partition_plugin.test
3.82
KB
-rw-r--r--
partition_pruning.test
72.39
KB
-rw-r--r--
partition_range.test
31.76
KB
-rw-r--r--
partition_rename_longfilename....
2.02
KB
-rw-r--r--
partition_symlink.test
7.38
KB
-rw-r--r--
partition_sync.test
2.16
KB
-rw-r--r--
partition_truncate.test
742
B
-rw-r--r--
partition_utf8.test
1.63
KB
-rw-r--r--
partition_windows.test
1.28
KB
-rw-r--r--
per_thread_connection_handler....
1.99
KB
-rw-r--r--
perror-win.test
1.1
KB
-rw-r--r--
perror.test
778
B
-rw-r--r--
plugin-master.opt
20
B
-rw-r--r--
plugin.test
8.24
KB
-rw-r--r--
plugin_auth-master.opt
35
B
-rw-r--r--
plugin_auth.test
28.96
KB
-rw-r--r--
plugin_auth_expire-master.opt
35
B
-rw-r--r--
plugin_auth_expire.test
706
B
-rw-r--r--
plugin_auth_qa-master.opt
35
B
-rw-r--r--
plugin_auth_qa.test
12.3
KB
-rw-r--r--
plugin_auth_qa_1-master.opt
35
B
-rw-r--r--
plugin_auth_qa_1.test
14.55
KB
-rw-r--r--
plugin_auth_qa_2-master.opt
55
B
-rw-r--r--
plugin_auth_qa_2.test
7.94
KB
-rw-r--r--
plugin_auth_qa_3-master.opt
49
B
-rw-r--r--
plugin_auth_qa_3.test
1.51
KB
-rw-r--r--
plugin_auth_sha256-master.opt
170
B
-rw-r--r--
plugin_auth_sha256.test
4.83
KB
-rw-r--r--
plugin_auth_sha256_2-master.op...
224
B
-rw-r--r--
plugin_auth_sha256_2.test
1.95
KB
-rw-r--r--
plugin_auth_sha256_server_defa...
224
B
-rw-r--r--
plugin_auth_sha256_server_defa...
2.93
KB
-rw-r--r--
plugin_auth_sha256_server_defa...
48
B
-rw-r--r--
plugin_auth_sha256_server_defa...
3.68
KB
-rw-r--r--
plugin_auth_sha256_tls.test
2.16
KB
-rw-r--r--
plugin_auth_user_lock-master.o...
34
B
-rw-r--r--
plugin_auth_user_lock.test
1.27
KB
-rw-r--r--
plugin_load-master.opt
76
B
-rw-r--r--
plugin_load.test
125
B
-rw-r--r--
plugin_load_option-master.opt
85
B
-rw-r--r--
plugin_load_option.test
265
B
-rw-r--r--
plugin_not_embedded-master.opt
20
B
-rw-r--r--
plugin_not_embedded.test
1
KB
-rw-r--r--
preload-master.opt
21
B
-rw-r--r--
preload.test
2.65
KB
-rw-r--r--
profiling.test
9.24
KB
-rw-r--r--
ps-master.opt
73
B
-rw-r--r--
ps.test
93.48
KB
-rw-r--r--
ps_10nestset.test
2.75
KB
-rw-r--r--
ps_11bugs.test
7.05
KB
-rw-r--r--
ps_1general.test
28.24
KB
-rw-r--r--
ps_2myisam-master.opt
21
B
-rw-r--r--
ps_2myisam.test
1.24
KB
-rw-r--r--
ps_3innodb-master.opt
53
B
-rw-r--r--
ps_3innodb.test
638
B
-rw-r--r--
ps_4heap-master.opt
21
B
-rw-r--r--
ps_4heap.test
1.62
KB
-rw-r--r--
ps_5merge-master.opt
21
B
-rw-r--r--
ps_5merge.test
2.8
KB
-rw-r--r--
ps_ddl-master.opt
43
B
-rw-r--r--
ps_ddl.test
53.8
KB
-rw-r--r--
ps_ddl1.test
11.04
KB
-rw-r--r--
ps_grant.test
4.03
KB
-rw-r--r--
ps_not_windows.test
755
B
-rw-r--r--
ps_w_max_indexes_64.test
5.64
KB
-rw-r--r--
query_cache-master.opt
21
B
-rw-r--r--
query_cache.test
45.66
KB
-rw-r--r--
query_cache_28249-master.opt
21
B
-rw-r--r--
query_cache_28249.test
4.2
KB
-rw-r--r--
query_cache_debug-master.opt
21
B
-rw-r--r--
query_cache_debug.test
10.91
KB
-rw-r--r--
query_cache_disabled-master.op...
21
B
-rw-r--r--
query_cache_disabled.test
1.17
KB
-rw-r--r--
query_cache_merge-master.opt
21
B
-rw-r--r--
query_cache_merge.test
4.68
KB
-rw-r--r--
query_cache_notembedded-master...
21
B
-rw-r--r--
query_cache_notembedded.test
7.5
KB
-rw-r--r--
query_cache_ps_no_prot-master....
21
B
-rw-r--r--
query_cache_ps_no_prot.test
907
B
-rw-r--r--
query_cache_ps_ps_prot-master....
21
B
-rw-r--r--
query_cache_ps_ps_prot.test
1.18
KB
-rw-r--r--
query_cache_size_functionality...
21
B
-rw-r--r--
query_cache_size_functionality...
11.14
KB
-rw-r--r--
query_cache_type_functionality...
21
B
-rw-r--r--
query_cache_type_functionality...
11.18
KB
-rw-r--r--
query_cache_with_views-master....
21
B
-rw-r--r--
query_cache_with_views.test
4.17
KB
-rw-r--r--
range_all.test
700
B
-rw-r--r--
range_icp.test
773
B
-rw-r--r--
range_icp_mrr.test
746
B
-rw-r--r--
range_mrr.test
771
B
-rw-r--r--
range_mrr_cost.test
781
B
-rw-r--r--
range_none.test
813
B
-rw-r--r--
range_with_memory_limit.test
880
B
-rw-r--r--
read_many_rows_innodb.test
417
B
-rw-r--r--
read_only.test
12.77
KB
-rw-r--r--
read_only_innodb.test
5.5
KB
-rw-r--r--
relay_log_index_variables-mast...
86
B
-rw-r--r--
relay_log_index_variables.test
184
B
-rw-r--r--
relay_log_variables-master.opt
24
B
-rw-r--r--
relay_log_variables.test
184
B
-rw-r--r--
rename.test
2.26
KB
-rw-r--r--
renamedb.test
1.25
KB
-rw-r--r--
repair.test
5.29
KB
-rw-r--r--
replace.test
1.48
KB
-rw-r--r--
reset_connection.test
5.48
KB
-rw-r--r--
rewrite_general_log.test
5.14
KB
-rw-r--r--
rewrite_slow_log.test
4.32
KB
-rw-r--r--
rollback.test
683
B
-rw-r--r--
round.test
4.73
KB
-rw-r--r--
row.test
10.61
KB
-rw-r--r--
rowid_order_innodb.test
382
B
-rw-r--r--
rpl_connect_attr.test
2.36
KB
-rw-r--r--
rpl_multi_source_mysqldump_sla...
2.56
KB
-rw-r--r--
rpl_mysqldump_slave.test
1.06
KB
-rw-r--r--
schema.test
4.7
KB
-rw-r--r--
secure_file_priv_win-master.op...
34
B
-rw-r--r--
secure_file_priv_win.test
2.77
KB
-rw-r--r--
select_all.test
801
B
-rw-r--r--
select_all_bka.test
478
B
-rw-r--r--
select_all_bka_nixbnl.test
500
B
-rw-r--r--
select_for_update-master.opt
29
B
-rw-r--r--
select_for_update.test
996
B
-rw-r--r--
select_found.test
6.36
KB
-rw-r--r--
select_icp_mrr.test
847
B
-rw-r--r--
select_icp_mrr_bka.test
486
B
-rw-r--r--
select_icp_mrr_bka_nixbnl.test
508
B
-rw-r--r--
select_none.test
914
B
-rw-r--r--
select_none_bka.test
480
B
-rw-r--r--
select_none_bka_nixbnl.test
502
B
-rw-r--r--
select_safe.test
4.8
KB
-rw-r--r--
server_offline_1.test
2.83
KB
-rw-r--r--
server_offline_2.test
2.2
KB
-rw-r--r--
server_offline_3.test
2.33
KB
-rw-r--r--
server_offline_4.test
2.33
KB
-rw-r--r--
server_offline_5.test
2.41
KB
-rw-r--r--
server_offline_6-master.opt
18
B
-rw-r--r--
server_offline_6.test
1.68
KB
-rw-r--r--
server_uuid.test
2.53
KB
-rw-r--r--
server_uuid_embedded.test
1.34
KB
-rw-r--r--
session_tracker-master.opt
24
B
-rw-r--r--
session_tracker.test
14.72
KB
-rw-r--r--
session_tracker_trx_state-mast...
21
B
-rw-r--r--
session_tracker_trx_state.test
25.82
KB
-rw-r--r--
shm-master.opt
173
B
-rw-r--r--
shm.test
1.67
KB
-rw-r--r--
shm_server_restart-master.opt
23
B
-rw-r--r--
shm_server_restart.test
999
B
-rw-r--r--
show_check-master.opt
101
B
-rw-r--r--
show_check.test
33.97
KB
-rw-r--r--
show_processlist_state.test
208
B
-rw-r--r--
show_profile.test
496
B
-rw-r--r--
show_variables.test
367
B
-rw-r--r--
shutdown.test
1.9
KB
-rw-r--r--
signal.test
63.46
KB
-rw-r--r--
signal_code.test
1.04
KB
-rw-r--r--
signal_demo1.test
6.97
KB
-rw-r--r--
signal_demo2.test
3.34
KB
-rw-r--r--
signal_demo3-master.opt
55
B
-rw-r--r--
signal_demo3.test
2.67
KB
-rw-r--r--
signal_sqlmode.test
1.85
KB
-rw-r--r--
single_delete_update.test
13.54
KB
-rw-r--r--
skip_grants-master.opt
20
B
-rw-r--r--
skip_grants.test
2.74
KB
-rw-r--r--
skip_grants_flush-master.opt
20
B
-rw-r--r--
skip_grants_flush.test
540
B
-rw-r--r--
skip_log_bin-master.opt
21
B
-rw-r--r--
skip_log_bin.test
646
B
-rw-r--r--
skip_name_resolve-master.opt
20
B
-rw-r--r--
skip_name_resolve.test
2.77
KB
-rw-r--r--
slow_log.test
2.27
KB
-rw-r--r--
sort_buffer_size_functionality...
21
B
-rw-r--r--
sort_buffer_size_functionality...
9.56
KB
-rw-r--r--
sp-big.test
2.15
KB
-rw-r--r--
sp-bugs.test
8.47
KB
-rw-r--r--
sp-code.test
21.61
KB
-rw-r--r--
sp-destruct.test
8.12
KB
-rw-r--r--
sp-dynamic.test
9.25
KB
-rw-r--r--
sp-error.test
87.47
KB
-rw-r--r--
sp-fib-master.opt
33
B
-rw-r--r--
sp-fib.test
1.33
KB
-rw-r--r--
sp-lock-master.opt
33
B
-rw-r--r--
sp-lock.test
31.39
KB
-rw-r--r--
sp-master.opt
54
B
-rw-r--r--
sp-no-code.test
216
B
-rw-r--r--
sp-prelocking-master.opt
33
B
-rw-r--r--
sp-prelocking.test
8.43
KB
-rw-r--r--
sp-security.test
25.43
KB
-rw-r--r--
sp-threads.test
4
KB
-rw-r--r--
sp-ucs2.test
3.38
KB
-rw-r--r--
sp-vars.test
28.72
KB
-rw-r--r--
sp.test
196.05
KB
-rw-r--r--
sp_debug.test
1.03
KB
-rw-r--r--
sp_gis.test
923
B
-rw-r--r--
sp_notembedded-master.opt
21
B
-rw-r--r--
sp_notembedded.test
17.08
KB
-rw-r--r--
sp_stress_case.test
2.07
KB
-rw-r--r--
sp_sync.test
4.88
KB
-rw-r--r--
sp_trans.test
17.11
KB
-rw-r--r--
sp_trans_log.test
1.35
KB
-rw-r--r--
sp_validation.test
40.19
KB
-rw-r--r--
sql_mode.test
16.94
KB
-rw-r--r--
sql_mode_default.test
3.14
KB
-rw-r--r--
ssl-big.test
1.68
KB
-rw-r--r--
ssl-sha512-master.opt
196
B
-rw-r--r--
ssl-sha512.test
432
B
-rw-r--r--
ssl.test
1.77
KB
-rw-r--r--
ssl_8k_key-master.opt
118
B
-rw-r--r--
ssl_8k_key.test
560
B
-rw-r--r--
ssl_and_innodb.test
261
B
-rw-r--r--
ssl_ca-master.opt
160
B
-rw-r--r--
ssl_ca.test
2.07
KB
-rw-r--r--
ssl_cipher-master.opt
32
B
-rw-r--r--
ssl_cipher.test
933
B
-rw-r--r--
ssl_compress.test
1.24
KB
-rw-r--r--
ssl_connect.test
368
B
-rw-r--r--
ssl_crl-master.opt
218
B
-rw-r--r--
ssl_crl.test
2.73
KB
-rw-r--r--
ssl_crl_clients-master.opt
234
B
-rw-r--r--
ssl_crl_clients.test
1.9
KB
-rw-r--r--
ssl_crl_clients_valid-master.o...
218
B
-rw-r--r--
ssl_crl_clients_valid.test
1.24
KB
-rw-r--r--
ssl_crl_crlpath-master.opt
206
B
-rw-r--r--
ssl_crl_crlpath.test
1.46
KB
-rw-r--r--
ssl_deprecated_tls_versions-ma...
28
B
-rw-r--r--
ssl_deprecated_tls_versions.te...
1.31
KB
-rw-r--r--
ssl_verify_identity-master.opt
181
B
-rw-r--r--
ssl_verify_identity.test
4.66
KB
-rw-r--r--
status-master.opt
76
B
-rw-r--r--
status.test
15
KB
-rw-r--r--
status2.test
1.54
KB
-rw-r--r--
status_bug17954.test
1.74
KB
-rw-r--r--
status_debug.test
3.7
KB
-rw-r--r--
strict-master.opt
32
B
-rw-r--r--
strict.test
49.24
KB
-rw-r--r--
strict_autoinc_1myisam.test
283
B
-rw-r--r--
strict_autoinc_2innodb.test
152
B
-rw-r--r--
strict_autoinc_3heap.test
227
B
-rw-r--r--
subquery_all.test
751
B
-rw-r--r--
subquery_all_bka.test
383
B
-rw-r--r--
subquery_all_bka_nixbnl.test
405
B
-rw-r--r--
subquery_bugs.test
1.7
KB
-rw-r--r--
subquery_mat.test
862
B
-rw-r--r--
subquery_mat_all.test
770
B
-rw-r--r--
subquery_mat_none.test
827
B
-rw-r--r--
subquery_nomat_nosj.test
774
B
-rw-r--r--
subquery_nomat_nosj_bka.test
397
B
-rw-r--r--
subquery_nomat_nosj_bka_nixbnl...
419
B
-rw-r--r--
subquery_none.test
819
B
-rw-r--r--
subquery_none_bka.test
385
B
-rw-r--r--
subquery_none_bka_nixbnl.test
407
B
-rw-r--r--
subquery_sj_all-master.opt
22
B
-rw-r--r--
subquery_sj_all.test
712
B
-rw-r--r--
subquery_sj_all_bka-master.opt
22
B
-rw-r--r--
subquery_sj_all_bka.test
389
B
-rw-r--r--
subquery_sj_all_bka_nixbnl-mas...
22
B
-rw-r--r--
subquery_sj_all_bka_nixbnl.tes...
411
B
-rw-r--r--
subquery_sj_all_bkaunique-mast...
22
B
-rw-r--r--
subquery_sj_all_bkaunique.test
530
B
-rw-r--r--
subquery_sj_dupsweed-master.op...
22
B
-rw-r--r--
subquery_sj_dupsweed.test
1019
B
-rw-r--r--
subquery_sj_dupsweed_bka-maste...
22
B
-rw-r--r--
subquery_sj_dupsweed_bka.test
399
B
-rw-r--r--
subquery_sj_dupsweed_bka_nixbn...
22
B
-rw-r--r--
subquery_sj_dupsweed_bka_nixbn...
421
B
-rw-r--r--
subquery_sj_dupsweed_bkaunique...
22
B
-rw-r--r--
subquery_sj_dupsweed_bkaunique...
517
B
-rw-r--r--
subquery_sj_firstmatch-master....
22
B
-rw-r--r--
subquery_sj_firstmatch.test
2.67
KB
-rw-r--r--
subquery_sj_firstmatch_bka-mas...
22
B
-rw-r--r--
subquery_sj_firstmatch_bka.tes...
403
B
-rw-r--r--
subquery_sj_firstmatch_bka_nix...
425
B
-rw-r--r--
subquery_sj_firstmatch_bkauniq...
476
B
-rw-r--r--
subquery_sj_innodb_all.test
550
B
-rw-r--r--
subquery_sj_innodb_all_bka.tes...
194
B
-rw-r--r--
subquery_sj_innodb_all_bka_nix...
216
B
-rw-r--r--
subquery_sj_innodb_all_bkauniq...
476
B
-rw-r--r--
subquery_sj_innodb_none.test
663
B
-rw-r--r--
subquery_sj_innodb_none_bka.te...
196
B
-rw-r--r--
subquery_sj_innodb_none_bka_ni...
218
B
-rw-r--r--
subquery_sj_innodb_none_bkauni...
478
B
-rw-r--r--
subquery_sj_loosescan.test
1.05
KB
-rw-r--r--
subquery_sj_loosescan_bka.test
401
B
-rw-r--r--
subquery_sj_loosescan_bka_nixb...
423
B
-rw-r--r--
subquery_sj_loosescan_bkauniqu...
519
B
-rw-r--r--
subquery_sj_mat.test
1.06
KB
-rw-r--r--
subquery_sj_mat_bka.test
389
B
-rw-r--r--
subquery_sj_mat_bka_nixbnl.tes...
411
B
-rw-r--r--
subquery_sj_mat_bkaunique.test
507
B
-rw-r--r--
subquery_sj_mat_nosj.test
805
B
-rw-r--r--
subquery_sj_none.test
825
B
-rw-r--r--
subquery_sj_none_bka.test
391
B
-rw-r--r--
subquery_sj_none_bka_nixbnl.te...
413
B
-rw-r--r--
subquery_sj_none_bkaunique.tes...
509
B
-rw-r--r--
subselect_debug.test
977
B
-rw-r--r--
subselect_gis.test
589
B
-rw-r--r--
subselect_innodb.test
24.42
KB
-rw-r--r--
subselect_notembedded-master.o...
33
B
-rw-r--r--
subselect_notembedded.test
1.73
KB
-rw-r--r--
sum_distinct-big.test
2.21
KB
-rw-r--r--
sum_distinct.test
3.43
KB
-rw-r--r--
symlink.test
9.82
KB
-rw-r--r--
synchronization.test
1.14
KB
-rw-r--r--
sysdate_is_now-master.opt
17
B
-rw-r--r--
sysdate_is_now.test
298
B
-rw-r--r--
system_mysql_db.test
311
B
-rw-r--r--
system_mysql_db_fix30020-maste...
30
B
-rw-r--r--
system_mysql_db_fix40123-maste...
30
B
-rw-r--r--
system_mysql_db_fix40123.test
9.84
KB
-rw-r--r--
system_mysql_db_fix50030-maste...
30
B
-rw-r--r--
system_mysql_db_fix50030.test
14.34
KB
-rw-r--r--
system_mysql_db_fix50117-maste...
30
B
-rw-r--r--
system_mysql_db_fix50117.test
15.1
KB
-rw-r--r--
system_mysql_db_refs.test
3.35
KB
-rw-r--r--
table_definition_cache_functio...
8.84
KB
-rw-r--r--
table_open_cache_functionality...
52
B
-rw-r--r--
table_open_cache_functionality...
13.44
KB
-rw-r--r--
tablelock.test
1.37
KB
-rw-r--r--
tablespace.test
5.76
KB
-rw-r--r--
temp_pool-master.opt
31
B
-rw-r--r--
temp_pool.test
1.44
KB
-rw-r--r--
temp_table-master.opt
32
B
-rw-r--r--
temp_table.test
8.48
KB
-rw-r--r--
temporal_literal.test
6.77
KB
-rw-r--r--
test_security_context-master.o...
27
B
-rw-r--r--
test_security_context.test
1.11
KB
-rw-r--r--
timezone-master.opt
15
B
-rw-r--r--
timezone.test
2.37
KB
-rw-r--r--
timezone2.test
11.04
KB
-rw-r--r--
timezone3-master.opt
49
B
-rw-r--r--
timezone3.test
2.74
KB
-rw-r--r--
timezone4-master.opt
18
B
-rw-r--r--
timezone4.test
311
B
-rw-r--r--
timezone_debug.test
1.13
KB
-rw-r--r--
timezone_grant.test
4.64
KB
-rw-r--r--
trans_read_only-master.opt
29
B
-rw-r--r--
trans_read_only.test
1.05
KB
-rw-r--r--
transaction_isolation-master.o...
37
B
-rw-r--r--
transaction_isolation.test
1.57
KB
-rw-r--r--
transaction_read_only-master.o...
24
B
-rw-r--r--
transaction_read_only.test
1.88
KB
-rw-r--r--
trigger-compat.test
8.46
KB
-rw-r--r--
trigger-trans.test
6.78
KB
-rw-r--r--
trigger.test
85.5
KB
-rw-r--r--
trigger_debug.test
538
B
-rw-r--r--
trigger_notembedded.test
26.82
KB
-rw-r--r--
trigger_wl3253.test
12.35
KB
-rw-r--r--
trigger_wl6030.test
42.25
KB
-rw-r--r--
truncate.test
3.36
KB
-rw-r--r--
truncate_coverage.test
5.79
KB
-rw-r--r--
type_binary.test
6.09
KB
-rw-r--r--
type_bit.test
13.4
KB
-rw-r--r--
type_bit_innodb.test
4.54
KB
-rw-r--r--
type_blob.test
31.16
KB
-rw-r--r--
type_date.test
14.53
KB
-rw-r--r--
type_datetime.test
21.85
KB
-rw-r--r--
type_decimal.test
29.97
KB
-rw-r--r--
type_enum.test
90.04
KB
-rw-r--r--
type_float.test
9.8
KB
-rw-r--r--
type_nchar.test
1.4
KB
-rw-r--r--
type_newdecimal-big.test
1.16
KB
-rw-r--r--
type_newdecimal.test
45.73
KB
-rw-r--r--
type_ranges.test
9.2
KB
-rw-r--r--
type_set.test
4.29
KB
-rw-r--r--
type_string-master.opt
10
B
-rw-r--r--
type_string.test
531
B
-rw-r--r--
type_temporal_fractional.test
289.34
KB
-rw-r--r--
type_temporal_upgrade.test
5.25
KB
-rw-r--r--
type_time.test
11.67
KB
-rw-r--r--
type_timestamp-master.opt
36
B
-rw-r--r--
type_timestamp.test
19.19
KB
-rw-r--r--
type_timestamp_explicit-master...
34
B
-rw-r--r--
type_timestamp_explicit.test
4.21
KB
-rw-r--r--
type_uint.test
309
B
-rw-r--r--
type_varchar.test
6.83
KB
-rw-r--r--
type_year.test
5.18
KB
-rw-r--r--
udf-master.opt
42
B
-rw-r--r--
udf.test
16.26
KB
-rw-r--r--
udf_services-master.opt
21
B
-rw-r--r--
udf_services.test
765
B
-rw-r--r--
udf_skip_grants-master.opt
41
B
-rw-r--r--
udf_skip_grants.test
1.45
KB
-rw-r--r--
union-master.opt
49
B
-rw-r--r--
union.test
62.39
KB
-rw-r--r--
unsafe_binlog_innodb-master.op...
67
B
-rw-r--r--
unsafe_binlog_innodb.test
432
B
-rw-r--r--
update.test
20.23
KB
-rw-r--r--
upgrade.test
5.3
KB
-rw-r--r--
user_if_exists.test
8.02
KB
-rw-r--r--
user_limits-master.opt
21
B
-rw-r--r--
user_limits.test
6.97
KB
-rw-r--r--
user_lock.test
22.39
KB
-rw-r--r--
user_var-binlog.test
1.04
KB
-rw-r--r--
user_var.test
14.42
KB
-rw-r--r--
utility_warnings-master.opt
147
B
-rw-r--r--
utility_warnings.test
17.92
KB
-rw-r--r--
validate_password_plugin-maste...
23
B
-rw-r--r--
validate_password_plugin.test
10.41
KB
-rw-r--r--
validate_password_plugin_check...
47
B
-rw-r--r--
validate_password_plugin_check...
3.75
KB
-rw-r--r--
varbinary.test
7.71
KB
-rw-r--r--
variables-big.test
2.13
KB
-rw-r--r--
variables-master.opt
21
B
-rw-r--r--
variables-notembedded-master.o...
47
B
-rw-r--r--
variables-notembedded.test
11.21
KB
-rw-r--r--
variables-win.test
393
B
-rw-r--r--
variables.test
50.07
KB
-rw-r--r--
variables_community.test
242
B
-rw-r--r--
variables_debug.test
2.96
KB
-rw-r--r--
version_token-master.opt
19
B
-rw-r--r--
version_token.test
10.36
KB
-rw-r--r--
version_token_bug21280801-mast...
19
B
-rw-r--r--
version_token_bug21280801.test
3.23
KB
-rw-r--r--
version_token_errors-master.op...
19
B
-rw-r--r--
version_token_errors.test
2.3
KB
-rw-r--r--
view.test
137.35
KB
-rw-r--r--
view_alias.test
4.03
KB
-rw-r--r--
view_grant.test
93.83
KB
-rw-r--r--
view_gtid_mode_on_debug-master...
66
B
-rw-r--r--
view_gtid_mode_on_debug.test
3.48
KB
-rw-r--r--
wait_timeout.test
5.31
KB
-rw-r--r--
warnings-master.opt
14
B
-rw-r--r--
warnings.test
5.95
KB
-rw-r--r--
warnings_engine_disabled.test
763
B
-rw-r--r--
windows.test
2.45
KB
-rw-r--r--
wl3836.test
3.92
KB
-rw-r--r--
wl4435_generated.inc
10.43
KB
-rw-r--r--
wl5928.test
15.04
KB
-rw-r--r--
wl6219-csv.test
109
B
-rw-r--r--
wl6219-innodb.test
322
B
-rw-r--r--
wl6219-memory.test
112
B
-rw-r--r--
wl6219-merge.test
111
B
-rw-r--r--
wl6219-myisam.test
424
B
-rw-r--r--
wl6219-upgrade.test
5.39
KB
-rw-r--r--
wl6301_1_not_windows-master.op...
20
B
-rw-r--r--
wl6301_1_not_windows.test
456
B
-rw-r--r--
wl6301_2_not_windows-master.op...
43
B
-rw-r--r--
wl6301_2_not_windows.test
494
B
-rw-r--r--
wl6301_3-master.opt
52
B
-rw-r--r--
wl6301_3.test
904
B
-rw-r--r--
wl6443_deprecation-master.opt
23
B
-rw-r--r--
wl6443_deprecation.test
4.18
KB
-rw-r--r--
wl6661-master.opt
209
B
-rw-r--r--
wl6661.test
6.92
KB
-rw-r--r--
wl6711_heap_to_disk.test
4.21
KB
-rw-r--r--
wl6978.test
478
B
-rw-r--r--
xa.test
14.62
KB
-rw-r--r--
xa_deadlock_binlog.test
2.26
KB
-rw-r--r--
xa_debug.test
5.47
KB
-rw-r--r--
xa_gtid-master.opt
55
B
-rw-r--r--
xa_gtid.test
917
B
-rw-r--r--
xa_prepared_binlog_off-master....
15
B
-rw-r--r--
xa_prepared_binlog_off.test
527
B
-rw-r--r--
xml.test
24.95
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : opt_hints_subquery.test
--echo # WL#8244 Hints for subquery execution CREATE TABLE t1 (a INTEGER NOT NULL, b INT, PRIMARY KEY (a)); CREATE TABLE t2 (a INTEGER NOT NULL, KEY (a)); CREATE TABLE t3 (a INTEGER NOT NULL, b INT, KEY (a)); INSERT INTO t1 VALUES (1,10), (2,20), (3,30), (4,40); INSERT INTO t2 VALUES (2), (3), (4), (5); INSERT INTO t3 VALUES (10,3), (20,4), (30,5); ANALYZE TABLE t1, t2, t3; --echo This query will normally use Table Pull-out EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT a FROM t1); --echo Check that we can disable SEMIJOIN transformation EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ NO_SEMIJOIN() */ a FROM t1); --echo Same with hint in outer query EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ a FROM t1); --echo Query with two sub-queries EXPLAIN SELECT * FROM t3 WHERE t3.a IN (SELECT a FROM t1 tx) AND t3.b IN (SELECT a FROM t1 ty); --echo No SEMIJOIN transformation for first subquery EXPLAIN SELECT * FROM t3 WHERE t3.a IN (SELECT /*+ NO_SEMIJOIN() */ a FROM t1 tx) AND t3.b IN (SELECT a FROM t1 ty); EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(`subq1`) */ a FROM t1 tx) AND t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty); --echo No SEMIJOIN transformation for latter subquery EXPLAIN SELECT * FROM t3 WHERE t3.a IN (SELECT a FROM t1 tx) AND t3.b IN (SELECT /*+ NO_SEMIJOIN() */ a FROM t1 ty); EXPLAIN SELECT /*+ NO_SEMIJOIN(@`subq2`) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx) AND t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty); --echo No SEMIJOIN transformation for any subquery EXPLAIN SELECT * FROM t3 WHERE t3.a IN (SELECT /*+ NO_SEMIJOIN() */ a FROM t1 tx) AND t3.b IN (SELECT /*+ NO_SEMIJOIN() */ a FROM t1 ty); EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) NO_SEMIJOIN(@subq2) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx) AND t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty); --echo Query with nested sub-queries EXPLAIN SELECT * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); --echo No SEMIJOIN transformation for outer subquery EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); --echo No SEMIJOIN transformation for inner-most subquery EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq2) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); --echo No SEMIJOIN transformation at all EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) NO_SEMIJOIN(@subq2) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); --echo This query does not support SEMIJOIN. SEMIJOIN hint is ignored EXPLAIN SELECT /*+ SEMIJOIN(@subq) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ min(a) FROM t1 group by a); --echo This query will get LooseScan by default EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Let's turn off LooseScan, FirstMatch is then SELECTed EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 LOOSESCAN) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Let's also turn off FirstMatch, MatLookup is then used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Let's also turn off Materialization, DuplicateWeedout should then be used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN, MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo If we turn off all strategies, DuplicateWeedout should still be used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Turn off non-used strategies, nothing should change. Still Loosescan EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Test same query with SEMIJOIN hint --echo Forcing LooseScan, should not change anything EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Force FirstMatch EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Force Materialization EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Force DuplicateWeedout EXPLAIN SELECT /*+ SEMIJOIN(@subq1 DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo If LooseScan is among candidates, it will be used EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, FIRSTMATCH, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Drop LooseScan from list of strategies, FirstMatch will be used EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Drop FirstMatch, MatLookup is next EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo For this query LooseScan and Materialization is not applicable EXPLAIN SELECT * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Turn off all applicable strategies. DuplicateWeedout should be used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, DUPSWEEDOUT) */ * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Similar with SEMIJOIN hint EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, MATERIALIZATION) */ * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Test multiple subqueries. --echo Default for this query is Loosecan for first and FirstMatch for latter EXPLAIN SELECT * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Forcing the default strategy should not change anything EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN) SEMIJOIN(@subq2 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Forcing a strategy for one, may change the other due to cost changes EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Forcing same strategy for both EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH) SEMIJOIN(@subq2 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Loosescan for both is not possible, ends up with DuplicateWeedout EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN) SEMIJOIN(@subq2 LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Swap strategies compared to default EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH) SEMIJOIN(@subq2 LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Different subsets of strategies for different subqueries EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN) SEMIJOIN(@subq2 MATERIALIZATION, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Vice versa EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION, DUPSWEEDOUT) SEMIJOIN(@subq2 FIRSTMATCH, LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Another combination EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION, FIRSTMATCH) SEMIJOIN(@subq2 LOOSESCAN, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Turn off default EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 LOOSESCAN) NO_SEMIJOIN(@subq2 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Also turn off 2nd choice. Gives DuplicateWeedout over both EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 LOOSESCAN, FIRSTMATCH) NO_SEMIJOIN(@subq2 FIRSTMATCH, LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Also turn off DuplicateWeedout. Materialization is only one left. EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 LOOSESCAN, FIRSTMATCH, DUPSWEEDOUT) NO_SEMIJOIN(@subq2 FIRSTMATCH, LOOSESCAN, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Force materialization with SEMIJOIN hints instead EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION) SEMIJOIN(@subq2 MATERIALIZATION) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo This query gives DuplicateWeedout over both since combining --echo DuplicateWeedout with another strategy does not seem possible. EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION) SEMIJOIN(@subq2 DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo More alternatives for 2nd subquery gives Materialization for first EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION) SEMIJOIN(@subq2 LOOSESCAN, FIRSTMATCH, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo A query with nested subqueries which by default is materialized together EXPLAIN SELECT * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Let's turn off Materialization, DuplicateWeedout is then SELECTed EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 MATERIALIZATION) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Let's also turn off DuplicateWeedout, FirstMatch is then used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 MATERIALIZATION, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Also turn off FirstMatch. LooseScan not usable. Back to DuplicateWeedout EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 MATERIALIZATION, DUPSWEEDOUT, FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo If we turn off all strategies, DuplicateWeedout should still be used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Test same query with SEMIJOIN hint --echo Force Materialization, should not change anything EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Force LooseScan, will use DuplicateWeedout EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Force FirstMatch EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Force DuplicateWeedout EXPLAIN SELECT /*+ SEMIJOIN(@subq1 DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo If Materialization is among candidates, it will be used EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION, LOOSESCAN, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION, FIRSTMATCH, LOOSESCAN, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Drop Materialization. DuplicateWeedout will be used EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Drop DuplicateWeedout, FirstMatch is next EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Strategy hints on inner-most query is ignored since sj-nests are merged EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq2 MATERIALIZATION) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Ditto EXPLAIN SELECT /*+ SEMIJOIN(@subq2 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Turn off semijoin for outer subquery. FirstMatch is used for inner EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Do not use FirstMatch for inner EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) NO_SEMIJOIN(@subq2 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Do not use FirstMatch nor Materialization for inner EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) NO_SEMIJOIN(@subq2 FIRSTMATCH, MATERIALIZATION) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo LooseScan is last resort EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) NO_SEMIJOIN(@subq2 FIRSTMATCH, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Allow all stragies except default EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) SEMIJOIN(@subq2 MATERIALIZATION, DUPSWEEDOUT, LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Force a particular strategy EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) SEMIJOIN(@subq2 LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Turn off semijoin for inner-most subquery. FirstMatch is used for outer EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq2) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Do not use FirstMatch for outer EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH) NO_SEMIJOIN(@subq2) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Do not use FirstMatch nor Materialization for outer EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, MATERIALIZATION) NO_SEMIJOIN(@subq2) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo LooseScan can not be used since index scan would not be "covering" EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, MATERIALIZATION, DUPSWEEDOUT) NO_SEMIJOIN(@subq2) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Allow all stragies except default EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION, DUPSWEEDOUT, LOOSESCAN) NO_SEMIJOIN(@subq2) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Force a particular strategy EXPLAIN SELECT /*+ SEMIJOIN(@subq1 DUPSWEEDOUT) NO_SEMIJOIN(@subq2) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Turn off semijoin for both subqueries EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) NO_SEMIJOIN(@subq2) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)); --echo Test hints with prepared statements PREPARE stmt1 FROM "EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN) NO_SEMIJOIN(@subq2 FIRSTMATCH, LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)"; EXECUTE stmt1; EXECUTE stmt1; DEALLOCATE PREPARE stmt1; --echo Another Prepared Statement test PREPARE stmt1 FROM "EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1) SEMIJOIN(@subq2 LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2))"; EXECUTE stmt1; EXECUTE stmt1; DEALLOCATE PREPARE stmt1; SET optimizer_switch = default; --echo Tests with non-default optimizer_switch settings SET optimizer_switch = 'semijoin=off'; --echo No table pull-out for this query EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT a FROM t1); --echo This should not change anything EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ a FROM t1); --echo Force semijoin EXPLAIN SELECT /*+ SEMIJOIN(@subq) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ a FROM t1); --echo Setting strategy should still force semijoin --echo Strategy is ignored since table pull-out is done EXPLAIN SELECT /*+ SEMIJOIN(@subq FIRSTMATCH) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ a FROM t1); --echo Query with two sub-queries EXPLAIN SELECT * FROM t3 WHERE t3.a IN (SELECT a FROM t1 tx) AND t3.b IN (SELECT a FROM t1 ty); --echo SEMIJOIN transformation for first subquery EXPLAIN SELECT /*+ SEMIJOIN(@subq1) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx) AND t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty); --echo SEMIJOIN transformation for latter subquery EXPLAIN SELECT /*+ SEMIJOIN(@subq2) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx) AND t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty); --echo SEMIJOIN transformation for both subqueries EXPLAIN SELECT /*+ SEMIJOIN(@subq1) SEMIJOIN(@subq2) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx) AND t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty); --echo Query with nested sub-queries EXPLAIN SELECT * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); --echo SEMIJOIN transformation for outer subquery EXPLAIN SELECT /*+ SEMIJOIN(@subq1) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); --echo SEMIJOIN transformation for inner-most subquery EXPLAIN SELECT /*+ SEMIJOIN(@subq2) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); --echo SEMIJOIN transformation for both EXPLAIN SELECT /*+ SEMIJOIN(@subq1) SEMIJOIN(@subq2) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); --echo Test strategies when some are disabled by optimizer_switch SET optimizer_switch='semijoin=on'; SET optimizer_switch='loosescan=off'; --echo This query will get LooseScan by default. FirstMatch now. EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Let's turn off LooseScan also by hint, FirstMatch should still be SELECTed EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 LOOSESCAN) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Let's also turn off FirstMatch, MatLookup should then be used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Let's also turn off Materialization, DuplicateWeedout should then be used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Let's force LooseScan back on EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Forcing another strategy EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo If LooseScan is among candidates, it is used even if originally disabled EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, FIRSTMATCH, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Disable another strategy SET optimizer_switch='firstmatch=off'; --echo Turn on FirstMatch, but not LooseScan on with hint EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH, MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Drop all remaining strategies with hint, should use DuplicateWeedout EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 MATERIALIZATION, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo For this query LooseScan and Materialization is not applicable --echo Should use DuplicateWeedout since FirstMatch is disabled EXPLAIN SELECT * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Turn off all applicable strategies. DuplicateWeedout should still be used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, DUPSWEEDOUT) */ * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Reverse which strategies are allowed with hint EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, FIRSTMATCH) */ * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Default for this query is Loosecan for first and FirstMatch for latter --echo Since both strategies are disabled, will now use DuplicateWeedout EXPLAIN SELECT * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Allowing LooseScan and FirstMatch and optimizer_switch is ignored EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, FIRSTMATCH) SEMIJOIN(@subq2 LOOSESCAN, FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Forcing a disabled strategy for one EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Forcing same strategy for both EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH) SEMIJOIN(@subq2 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Swap strategies compared to default EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH) SEMIJOIN(@subq2 LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Different subsets of strategies for different subqueries EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN) SEMIJOIN(@subq2 MATERIALIZATION, DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Turn off DuplicateWeedout for both. Materialization is left EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 DUPSWEEDOUT) NO_SEMIJOIN(@subq2 DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Forcing materialization should have same effect EXPLAIN SELECT /*+ SEMIJOIN(@subq1 MATERIALIZATION) SEMIJOIN(@subq2 MATERIALIZATION) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Turn off DuplicateWeedout for first. MatLookup is used for both EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Turn off DuplicateWeedout for second. Same effect. EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq2 DUPSWEEDOUT) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Enable all strategies except DuplicateWeedout SET optimizer_switch='firstmatch=on,loosescan=on,materialization=on,duplicateweedout=off'; --echo If we turn off all other strategies, DuplicateWeedout will be used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 LOOSESCAN, FIRSTMATCH, MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo LooseScan and Materialization is not applicable, FirstMatch is used EXPLAIN SELECT * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Turn off all applicable strategies. DuplicateWeedout should be used EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH) */ * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Similar with SEMIJOIN hint EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, MATERIALIZATION) */ * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Disable all strategies SET optimizer_switch='firstmatch=off,loosescan=off,materialization=off,duplicateweedout=off'; --echo DuplicateWeedout is then used EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Turning off extra strategies should not change anything EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 LOOSESCAN, DUPSWEEDOUT) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo Turning on some strategies should give one of those EXPLAIN SELECT /*+ SEMIJOIN(@subq1 FIRSTMATCH, MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3); --echo For this query that cannot use LooseScan or Materialization, --echo turning those on will still give DupliateWeedout EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, MATERIALIZATION) */ * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); --echo Turning on FirstMatch should give FirstMatch EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN, FIRSTMATCH) */ * FROM t1 WHERE t1.b IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3 WHERE t3.b = t1.a); SET optimizer_switch = default; --echo Test that setting optimizer_switch after prepare will change strategy PREPARE stmt1 FROM "EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 FIRSTMATCH, LOOSESCAN) NO_SEMIJOIN(@subq2 FIRSTMATCH, LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)"; EXECUTE stmt1; SET optimizer_switch = 'duplicateweedout=off'; --echo Will now use materialization EXECUTE stmt1; SET optimizer_switch = 'duplicateweedout=on'; --echo Turn DuplicateWeedout back on EXECUTE stmt1; DEALLOCATE PREPARE stmt1; SET optimizer_switch = default; --echo Specifying two SEMIJOIN/NO_SEMIJOIN for same query block gives warning --echo First has effect, second is ignored EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ NO_SEMIJOIN() SEMIJOIN() */ a FROM t1); --echo Try opposite order EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ SEMIJOIN() NO_SEMIJOIN() */ a FROM t1); --echo Specify at different levels, hint inside block has effect EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) SEMIJOIN() */ a FROM t1); --echo Specify at different levels, opposite order EXPLAIN SELECT /*+ SEMIJOIN(@subq) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) NO_SEMIJOIN() */ a FROM t1); --echo Duplicate hints also gives warning, but hint has effect EXPLAIN SELECT /*+ SEMIJOIN(@subq) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) SEMIJOIN() */ a FROM t1); EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) NO_SEMIJOIN() */ a FROM t1); --echo Multiple subqueries with conflicting hints EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN) SEMIJOIN(@subq2 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) NO_SEMIJOIN() */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) SEMIJOIN(LOOSESCAN) */ a FROM t2); EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN) SEMIJOIN(@subq2 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) NO_SEMIJOIN(LOOSESCAN) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) SEMIJOIN(LOOSESCAN) */ a FROM t2); --echo Conflicting hints in same hint comment EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN) SEMIJOIN(@subq1 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); EXPLAIN SELECT /*+ SEMIJOIN(@subq1 LOOSESCAN) NO_SEMIJOIN(@subq1 LOOSESCAN) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); EXPLAIN SELECT /*+ NO_SEMIJOIN(@subq1 LOOSESCAN) NO_SEMIJOIN(@subq1 FIRSTMATCH) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo Non-supported strategies should give warnings EXPLAIN SELECT /*+ SEMIJOIN(@subq1 INTOEXISTS) NO_SEMIJOIN(@subq2 INTOEXISTS) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2); --echo SUBQUERY tests --echo SUBQUERY should disable SEMIJOIN and use specified subquery strategy EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ SUBQUERY(INTOEXISTS) */ a FROM t1); EXPLAIN SELECT /*+ SUBQUERY(@subq MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ a FROM t1); --echo Query with two subqueries EXPLAIN SELECT /*+ SUBQUERY(@subq1 INTOEXISTS) SUBQUERY(@subq2 MATERIALIZATION) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx) AND t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty); --echo Query with nested sub-queries EXPLAIN SELECT /*+ SUBQUERY(@subq1 INTOEXISTS) SUBQUERY(@subq2 MATERIALIZATION) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); EXPLAIN SELECT /*+ SUBQUERY(@subq1 MATERIALIZATION) SUBQUERY(@subq2 INTOEXISTS) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx WHERE tx.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty)); --echo This query does not support SEMIJOIN. Materialization is default EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ min(a) FROM t1 group by a); --echo Use In-to-exists instead EXPLAIN SELECT /*+ SUBQUERY(@subq INTOEXISTS) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ min(a) FROM t1 group by a); --echo For this query In-to-exists is default EXPLAIN SELECT a, a IN (SELECT a FROM t1) FROM t2; --echo Force Subquery Materialization EXPLAIN SELECT a, a IN (SELECT /*+ SUBQUERY(MATERIALIZATION) */ a FROM t1) FROM t2; EXPLAIN SELECT /*+ SUBQUERY(@subq MATERIALIZATION) */ a, a IN (SELECT /*+ QB_NAME(subq) */ a FROM t1) FROM t2; --echo This query does not support Subquery Materialization due to type mismatch EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ sum(b) FROM t1 group by a); --echo Trying to force Subquery Materialization will not change anything EXPLAIN SELECT /*+ SUBQUERY(@subq MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ sum(b) FROM t1 group by a); --echo Test hints with prepared statements PREPARE stmt1 FROM "EXPLAIN SELECT /*+ SUBQUERY(@subq1 MATERIALIZATION) SUBQUERY(@subq2 INTOEXISTS) */ * FROM t1 WHERE t1.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t3) AND t1.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t2)"; EXECUTE stmt1; EXECUTE stmt1; DEALLOCATE PREPARE stmt1; --echo Test optimizer_switch settings with SUBQUERY hint SET optimizer_switch='materialization=off'; --echo This query will now use In-to-exist EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ min(a) FROM t1 group by a); --echo Force it to use Materialization EXPLAIN SELECT /*+ SUBQUERY(@subq MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) */ min(a) FROM t1 group by a); SET optimizer_switch='materialization=on,subquery_materialization_cost_based=off'; --echo This query will now use materialization EXPLAIN SELECT a, a IN (SELECT a FROM t1) FROM t2; --echo Force In-to-exists EXPLAIN SELECT /*+ SUBQUERY(@subq INTOEXISTS) */ a, a IN (SELECT /*+ QB_NAME(subq) */ a FROM t1) FROM t2; --echo Specifying both strategies should give a warning EXPLAIN SELECT /*+ SUBQUERY(@subq1 MATERIALIZATION, INTOEXISTS) SUBQUERY(@subq2 MATERIALIZATION, INTOEXISTS) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx) AND t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty); --echo Non-supported strategies should give warnings EXPLAIN SELECT /*+ SUBQUERY(@subq1 FIRSTMATCH) SUBQUERY(@subq2 LOOSESCAN) */ * FROM t3 WHERE t3.a IN (SELECT /*+ QB_NAME(subq1) */ a FROM t1 tx) AND t3.b IN (SELECT /*+ QB_NAME(subq2) */ a FROM t1 ty); SET optimizer_switch= default; --echo Specifying two SUBQUERY for same query block gives warning --echo First has effect, second is ignored EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ SUBQUERY(MATERIALIZATION) SUBQUERY(INTOEXISTS) */ a FROM t1); --echo Try opposite order EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ SUBQUERY(INTOEXISTS) SUBQUERY(MATERIALIZATION) */ a FROM t1); --echo Specify at different levels, hint inside block has effect EXPLAIN SELECT /*+ SUBQUERY(@subq MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) SUBQUERY(INTOEXISTS) */ a FROM t1); --echo Specify at different levels, opposite order EXPLAIN SELECT /*+ SUBQUERY(@subq INTOEXISTS) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) SUBQUERY(MATERIALIZATION) */ a FROM t1); --echo Specifying combinations of SUBQUERY and SEMIJOIN/NO_SEMIJOIN --echo for same query block gives warning --echo First has effect, second is ignored EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ SUBQUERY(INTOEXISTS) SEMIJOIN() */ a FROM t1); --echo Try opposite order EXPLAIN SELECT * FROM t2 WHERE t2.a IN (SELECT /*+ NO_SEMIJOIN() SUBQUERY(MATERIALIZATION) */ a FROM t1); --echo Specify at different levels, hint inside block has effect EXPLAIN SELECT /*+ SUBQUERY(@subq MATERIALIZATION) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) SEMIJOIN() */ a FROM t1); EXPLAIN SELECT /*+ SUBQUERY(@subq INTOEXISTS) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) NO_SEMIJOIN() */ a FROM t1); EXPLAIN SELECT /*+ SEMIJOIN(@subq FIRSTMATCH) */ * FROM t2 WHERE t2.a IN (SELECT /*+ QB_NAME(subq) SUBQUERY(@subq INTOEXISTS) */ a FROM t1); drop table t1, t2, t3;
Close